assertEquals( true, searchRequest.getTypesOnly() );
// (&(...
ExprNode filter = searchRequest.getFilter();
AndNode andNode = ( AndNode ) filter;
assertNotNull( andNode );
List<ExprNode> andNodes = andNode.getChildren();
assertEquals( 2, andNodes.size() );
// (&(&(..
AndNode andNode2 = ( AndNode ) andNodes.get( 0 );
assertNotNull( andNode2 );
List<ExprNode> andNodes2 = andNode2.getChildren();
assertEquals( 2, andNodes2.size() );
// (&(&(a=b)...
EqualityNode<?> equalityNode = ( EqualityNode<?> ) andNodes2.get( 0 );
assertNotNull( equalityNode );
assertEquals( "a", equalityNode.getAttribute() );
assertEquals( "b", equalityNode.getValue().getString() );
// (&(&(a=b)(c=d))...
equalityNode = ( EqualityNode<?> ) andNodes2.get( 1 );
assertNotNull( equalityNode );
assertEquals( "c", equalityNode.getAttribute() );
assertEquals( "d", equalityNode.getValue().getString() );
// (&(&(a=b)(c=d))(&...
andNode2 = ( AndNode ) andNodes.get( 1 );
assertNotNull( andNode2 );
andNodes2 = andNode2.getChildren();
assertEquals( 1, andNodes2.size() );
// (&(&(a=b)(c=d))(&(e=f)))
equalityNode = ( EqualityNode<?> ) andNodes2.get( 0 );
assertNotNull( equalityNode );