FieldQuery fq = new FieldQuery( query, true, true );
Map<String, QueryPhraseMap> map = fq.rootMaps;
assertEquals( 1, map.size() );
assertNull( map.get( null ) );
assertNotNull( map.get( F ) );
QueryPhraseMap qpm = map.get( F );
assertEquals( 2, qpm.subMap.size() );
// "ab bc"
assertNotNull( qpm.subMap.get( "ab" ) );
QueryPhraseMap qpm2 = qpm.subMap.get( "ab" );
assertFalse( qpm2.terminal );
assertEquals( 1, qpm2.subMap.size() );
assertNotNull( qpm2.subMap.get( "bc" ) );
QueryPhraseMap qpm3 = qpm2.subMap.get( "bc" );
assertTrue( qpm3.terminal );
assertEquals( 1F, qpm3.boost, 0);
// "ab bc cd"
assertEquals( 1, qpm3.subMap.size() );
assertNotNull( qpm3.subMap.get( "cd" ) );
QueryPhraseMap qpm4 = qpm3.subMap.get( "cd" );
assertTrue( qpm4.terminal );
assertEquals( 1F, qpm4.boost, 0);
// "bc cd"
assertNotNull( qpm.subMap.get( "bc" ) );