You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by vt...@apache.org on 2005/02/13 22:14:36 UTC

svn commit: r153670 - in incubator/directory/ldap/trunk/apache-provider: project.xml src/test/org/apache/ldap/common/berlib/asn1/decoder/search/SearchRequestTest.java src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/RuleTestCase.java src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/TestUtils.java

Author: vtence
Date: Sun Feb 13 13:14:35 2005
New Revision: 153670

URL: http://svn.apache.org/viewcvs?view=rev&rev=153670
Log:
Dependency on Snacc is gone. All tests use pre-computed PDUs.

Modified:
    incubator/directory/ldap/trunk/apache-provider/project.xml
    incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/search/SearchRequestTest.java
    incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/RuleTestCase.java
    incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/TestUtils.java

Modified: incubator/directory/ldap/trunk/apache-provider/project.xml
URL: http://svn.apache.org/viewcvs/incubator/directory/ldap/trunk/apache-provider/project.xml?view=diff&r1=153669&r2=153670
==============================================================================
--- incubator/directory/ldap/trunk/apache-provider/project.xml (original)
+++ incubator/directory/ldap/trunk/apache-provider/project.xml Sun Feb 13 13:14:35 2005
@@ -70,23 +70,6 @@
     </dependency>
 
     <dependency>
-      <groupId>incubator-directory</groupId>
-      <artifactId>ldap-snacc-provider</artifactId>
-      <version>0.9-SNAPSHOT</version>
-      <url>
-        http://incubator.apache.org/directory/subprojects/ldap/snacc-provider
-      </url>
-    </dependency>
-
-    <!-- used only to test Apache's ASN.1 Libarary -->
-    <dependency>
-      <groupId>snacc4j</groupId>
-      <artifactId>snacc</artifactId>
-      <version>2.3</version>
-      <url>http://alphaworks.ibm.com/tech/snaccforjava</url>
-    </dependency>
-    
-    <dependency>
       <groupId>regexp</groupId>
       <artifactId>regexp</artifactId>
       <version>1.2</version>

Modified: incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/search/SearchRequestTest.java
URL: http://svn.apache.org/viewcvs/incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/search/SearchRequestTest.java?view=diff&r1=153669&r2=153670
==============================================================================
--- incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/search/SearchRequestTest.java (original)
+++ incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/search/SearchRequestTest.java Sun Feb 13 13:14:35 2005
@@ -78,9 +78,8 @@
 
     public void testFailingRequest0() throws Exception
     {
-        ByteBuffer buf = ByteBuffer.wrap( failingRequest0 );
+        SearchRequest req = ( SearchRequest ) decode( failingRequest0 );
 
-        SearchRequest req = ( SearchRequest ) super.snickersDecode( buf );
         assertEquals( 3, req.getMessageId() );
         assertEquals( MessageTypeEnum.SEARCHREQUEST, req.getType() );
         assertEquals( 0, req.getSizeLimit() );
@@ -98,9 +97,7 @@
 
     public void testFailingRequest0Twice() throws Exception
     {
-        ByteBuffer buf = ByteBuffer.wrap( failingRequest0 );
-
-        SearchRequest req = ( SearchRequest ) super.snickersDecode( buf );
+        SearchRequest req = ( SearchRequest ) decode( failingRequest0 );
         assertEquals( 3, req.getMessageId() );
         assertEquals( MessageTypeEnum.SEARCHREQUEST, req.getType() );
         assertEquals( 0, req.getSizeLimit() );
@@ -114,8 +111,7 @@
         assertTrue( req.getAttributes().isEmpty() );
         assertEquals( "(objectClass=*)", req.getFilter().toString().trim() );
 
-        buf.rewind();
-        req = ( SearchRequest ) super.snickersDecode( buf );
+        req = ( SearchRequest ) decode( failingRequest0 );
         assertEquals( 3, req.getMessageId() );
         assertEquals( MessageTypeEnum.SEARCHREQUEST, req.getType() );
         assertEquals( 0, req.getSizeLimit() );
@@ -395,86 +391,22 @@
         assertEquals( expected, decoded );
     }
 
-    /**
-     * Tests an search request decode with a simple equality match filter.
-     */
-//    public void testAndFilter1() throws Exception
-//    {
-//        SearchRequestImpl req = new SearchRequestImpl( 33 );
-//        req.setBase( "dc=example,dc=com" );
-//        req.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
-//        req.setScope( ScopeEnum.BASEOBJECT );
-//        req.setSizeLimit( 2 );
-//        req.setTimeLimit( 3 );
-//        req.setTypesOnly( true );
-//
-//        req.addAttribute( "attr0" );
-//        req.addAttribute( "attr1" );
-//        req.addAttribute( "attr2" );
-//
-//        FilterParserImpl parser = new FilterParserImpl();
-//        ExprNode node = null ;
-//        node = parser.parse(
-//                "( & ( ou = Human Resources ) ( l=Santa Clara ) " +
-//                "( uid=akarasulu ) )" ) ;
-//        normalizer.visit( node );
-//        req.setFilter( node );
-//
-//        System.out.println( "Generated SearchRequest for test:" );
-//        System.out.println( TestUtils.printTupleTree( req ) );
-//
-//        SearchRequest decoded = ( SearchRequest )
-//                snickersDecode( snaccEncode( req ) );
-//        assertNotNull( decoded );
-//
-//        // test that we have all the properties set
-//        assertEquals( req.getBase(), decoded.getBase() );
-//        assertEquals( req.getScope(), decoded.getScope() );
-//        assertEquals( req.getTypesOnly(), decoded.getTypesOnly() );
-//        assertEquals( req.getTimeLimit(), decoded.getTimeLimit() );
-//        assertEquals( req.getSizeLimit(), decoded.getSizeLimit() );
-//        assertEquals( req.getDerefAliases(), decoded.getDerefAliases() );
-//
-//        // test that we have all the attributes
-//        Iterator list = req.getAttributes().iterator();
-//        Collection attributes = decoded.getAttributes();
-//        while( list.hasNext() )
-//        {
-//            assertTrue( attributes.contains( list.next() ) );
-//        }
-//
-//        // control test should not exist
-//        assertFalse( attributes.contains( "(*&#$&#$*@#" ) );
-//
-//        // filter tests
-//        node = req.getFilter();
-//        StringBuffer buf0 = new StringBuffer();
-//        node.printToBuffer( buf0 );
-//        System.out.println( buf0.toString() );
-//        node = decoded.getFilter();
-//        normalizer.visit( node );
-//        StringBuffer buf1 = new StringBuffer();
-//        node.printToBuffer( buf1 );
-//        System.out.println( buf1.toString() );
-//        assertEquals(buf0.toString(), buf1.toString()) ;
-//    }
-
     public void testAndFilter1() throws Exception
     {
         byte[] pdu = new byte[] {0x30, 0x7B, 0x02, 0x01, 0x21, 0x63, 0x76, 0x04, 0x11, 0x64, 0x63, 0x3D, 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2C, 0x64, 0x63, 0x3D, 0x63, 0x6F, 0x6D, 0x0A, 0x01, 0x00, 0x0A, 0x01, 0x02, 0x02, 0x01, 0x02, 0x02, 0x01, 0x03, 0x01, 0x01, 0xFFFFFFFF, 0xFFFFFFA0, 0x3B, 0xFFFFFFA3, 0x15, 0x04, 0x02, 0x6F, 0x75, 0x04, 0x0F, 0x48, 0x75, 0x6D, 0x61, 0x6E, 0x20, 0x52, 0x65, 0x73, 0x6F, 0x75, 0x72, 0x63, 0x65, 0x73, 0xFFFFFFA3, 0x10, 0x04, 0x03, 0x75, 0x69, 0x64, 0x04, 0x09, 0x61, 0x6B, 0x61, 0x72, 0x61, 0x73, 0x75, 0x6C, 0x75, 0xFFFFFFA3, 0x10, 0x04, 0x01, 0x6C, 0x04, 0x0B, 0x53, 0x61, 0x6E, 0x74, 0x61, 0x20, 0x43, 0x6C, 0x61, 0x72, 0x61, 0x30, 0x15, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x30, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x31, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x32};
+        SearchRequest decoded = ( SearchRequest ) decode( pdu );
+
+        SearchRequestImpl expected = new SearchRequestImpl( 33 );
+        expected.setBase( "dc=example,dc=com" );
+        expected.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
+        expected.setScope( ScopeEnum.BASEOBJECT );
+        expected.setSizeLimit( 2 );
+        expected.setTimeLimit( 3 );
+        expected.setTypesOnly( true );
 
-        //TODO: here
-        SearchRequestImpl req = new SearchRequestImpl( 33 );
-        req.setBase( "dc=example,dc=com" );
-        req.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
-        req.setScope( ScopeEnum.BASEOBJECT );
-        req.setSizeLimit( 2 );
-        req.setTimeLimit( 3 );
-        req.setTypesOnly( true );
-
-        req.addAttribute( "attr0" );
-        req.addAttribute( "attr1" );
-        req.addAttribute( "attr2" );
+        expected.addAttribute( "attr0" );
+        expected.addAttribute( "attr1" );
+        expected.addAttribute( "attr2" );
 
         FilterParserImpl parser = new FilterParserImpl();
         ExprNode node = null ;
@@ -482,45 +414,9 @@
                 "( & ( ou = Human Resources ) ( l=Santa Clara ) " +
                 "( uid=akarasulu ) )" ) ;
         normalizer.visit( node );
-        req.setFilter( node );
-
-        System.out.println( "Generated SearchRequest for test:" );
-        System.out.println( TestUtils.printTupleTree( req ) );
+        expected.setFilter( node );
 
-        SearchRequest decoded = ( SearchRequest )
-                snickersDecode( snaccEncode( req ) );
-        assertNotNull( decoded );
-
-        // test that we have all the properties set
-        assertEquals( req.getBase(), decoded.getBase() );
-        assertEquals( req.getScope(), decoded.getScope() );
-        assertEquals( req.getTypesOnly(), decoded.getTypesOnly() );
-        assertEquals( req.getTimeLimit(), decoded.getTimeLimit() );
-        assertEquals( req.getSizeLimit(), decoded.getSizeLimit() );
-        assertEquals( req.getDerefAliases(), decoded.getDerefAliases() );
-
-        // test that we have all the attributes
-        Iterator list = req.getAttributes().iterator();
-        Collection attributes = decoded.getAttributes();
-        while( list.hasNext() )
-        {
-            assertTrue( attributes.contains( list.next() ) );
-        }
-
-        // control test should not exist
-        assertFalse( attributes.contains( "(*&#$&#$*@#" ) );
-
-        // filter tests
-        node = req.getFilter();
-        StringBuffer buf0 = new StringBuffer();
-        node.printToBuffer( buf0 );
-        System.out.println( buf0.toString() );
-        node = decoded.getFilter();
-        normalizer.visit( node );
-        StringBuffer buf1 = new StringBuffer();
-        node.printToBuffer( buf1 );
-        System.out.println( buf1.toString() );
-        assertEquals(buf0.toString(), buf1.toString()) ;
+        assertEquals( expected, decoded );
     }
 
     /**
@@ -528,18 +424,20 @@
      */
     public void testAndFilter2() throws Exception
     {
-        SearchRequestImpl req = new SearchRequestImpl( 33 );
-        req.setBase( "dc=example,dc=com" );
-        req.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
-        req.setScope( ScopeEnum.BASEOBJECT );
-        req.setSizeLimit( 2 );
-        req.setTimeLimit( 3 );
-        req.setTypesOnly( true );
-
-        req.addAttribute( "attr0" );
-        req.addAttribute( "attr1" );
-        req.addAttribute( "attr2" );
+        byte[] pdu = {0x30, 0xFFFFFF81, 0xFFFFFF87, 0x02, 0x01, 0x21, 0x63, 0xFFFFFF81, 0xFFFFFF81, 0x04, 0x11, 0x64, 0x63, 0x3D, 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2C, 0x64, 0x63, 0x3D, 0x63, 0x6F, 0x6D, 0x0A, 0x01, 0x00, 0x0A, 0x01, 0x02, 0x02, 0x01, 0x02, 0x02, 0x01, 0x03, 0x01, 0x01, 0xFFFFFFFF, 0xFFFFFFA0, 0x46, 0xFFFFFFA3, 0x10, 0x04, 0x01, 0x6C, 0x04, 0x0B, 0x53, 0x61, 0x6E, 0x74, 0x61, 0x20, 0x43, 0x6C, 0x61, 0x72, 0x61, 0xFFFFFFA3, 0x10, 0x04, 0x03, 0x75, 0x69, 0x64, 0x04, 0x09, 0x61, 0x6B, 0x61, 0x72, 0x61, 0x73, 0x75, 0x6C, 0x75, 0xFFFFFFA3, 0x15, 0x04, 0x02, 0x6F, 0x75, 0x04, 0x0F, 0x48, 0x75, 0x6D, 0x61, 0x6E, 0x20, 0x52, 0x65, 0x73, 0x6F, 0x75, 0x72, 0x63, 0x65, 0x73, 0xFFFFFFA3, 0x09, 0x04, 0x02, 0x63, 0x6E, 0x04, 0x03, 0x61, 0x6F, 0x6B, 0x30, 0x15, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x30, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x31, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x32};
+        SearchRequest decoded = ( SearchRequest ) decode( pdu );
 
+        SearchRequestImpl expected = new SearchRequestImpl( 33 );
+        expected.setBase( "dc=example,dc=com" );
+        expected.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
+        expected.setScope( ScopeEnum.BASEOBJECT );
+        expected.setSizeLimit( 2 );
+        expected.setTimeLimit( 3 );
+        expected.setTypesOnly( true );
+
+        expected.addAttribute( "attr0" );
+        expected.addAttribute( "attr1" );
+        expected.addAttribute( "attr2" );
 
         FilterParserImpl parser = new FilterParserImpl();
         ExprNode node = null ;
@@ -547,64 +445,30 @@
                 "( & ( ou = Human Resources ) ( l=Santa Clara ) " +
                 "( uid=akarasulu ) ( cn=aok ) )" ) ;
         normalizer.visit( node );
-        req.setFilter( node );
-
-        System.out.println( "Generated SearchRequest for test:" );
-        System.out.println( TestUtils.printTupleTree( req ) );
+        expected.setFilter( node );
 
-        SearchRequest decoded = ( SearchRequest )
-                snickersDecode( snaccEncode( req ) );
-        assertNotNull( decoded );
-
-        // test that we have all the properties set
-        assertEquals( req.getBase(), decoded.getBase() );
-        assertEquals( req.getScope(), decoded.getScope() );
-        assertEquals( req.getTypesOnly(), decoded.getTypesOnly() );
-        assertEquals( req.getTimeLimit(), decoded.getTimeLimit() );
-        assertEquals( req.getSizeLimit(), decoded.getSizeLimit() );
-        assertEquals( req.getDerefAliases(), decoded.getDerefAliases() );
-
-        // test that we have all the attributes
-        Iterator list = req.getAttributes().iterator();
-        Collection attributes = decoded.getAttributes();
-        while( list.hasNext() )
-        {
-            assertTrue( attributes.contains( list.next() ) );
-        }
-
-        // control test should not exist
-        assertFalse( attributes.contains( "(*&#$&#$*@#" ) );
-
-        // filter tests
-        node = req.getFilter();
-        StringBuffer buf0 = new StringBuffer();
-        node.printToBuffer( buf0 );
-        System.out.println( buf0.toString() );
-        node = decoded.getFilter();
-        normalizer.visit( node );
-        StringBuffer buf1 = new StringBuffer();
-        node.printToBuffer( buf1 );
-        System.out.println( buf1.toString() );
-        assertEquals(buf0.toString(), buf1.toString()) ;
+        assertEquals( expected, decoded );
     }
 
-
     /**
      * Tests an search request decode with a simple equality match filter.
      */
     public void testAndFilter3() throws Exception
     {
-        SearchRequestImpl req = new SearchRequestImpl( 33 );
-        req.setBase( "dc=example,dc=com" );
-        req.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
-        req.setScope( ScopeEnum.BASEOBJECT );
-        req.setSizeLimit( 2 );
-        req.setTimeLimit( 3 );
-        req.setTypesOnly( true );
-
-        req.addAttribute( "attr0" );
-        req.addAttribute( "attr1" );
-        req.addAttribute( "attr2" );
+        byte[] pdu = new byte[] {0x30, 0xFFFFFF81, 0xFFFFFF93, 0x02, 0x01, 0x21, 0x63, 0xFFFFFF81, 0xFFFFFF8D, 0x04, 0x11, 0x64, 0x63, 0x3D, 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2C, 0x64, 0x63, 0x3D, 0x63, 0x6F, 0x6D, 0x0A, 0x01, 0x00, 0x0A, 0x01, 0x02, 0x02, 0x01, 0x02, 0x02, 0x01, 0x03, 0x01, 0x01, 0xFFFFFFFF, 0xFFFFFFA0, 0x52, 0xFFFFFFA3, 0x10, 0x04, 0x03, 0x75, 0x69, 0x64, 0x04, 0x09, 0x61, 0x6B, 0x61, 0x72, 0x61, 0x73, 0x75, 0x6C, 0x75, 0xFFFFFFA3, 0x09, 0x04, 0x02, 0x63, 0x6E, 0x04, 0x03, 0x61, 0x6F, 0x6B, 0xFFFFFFA3, 0x15, 0x04, 0x02, 0x6F, 0x75, 0x04, 0x0F, 0x48, 0x75, 0x6D, 0x61, 0x6E, 0x20, 0x52, 0x65, 0x73, 0x6F, 0x75, 0x72, 0x63, 0x65, 0x73, 0xFFFFFFA3, 0x10, 0x04, 0x01, 0x6C, 0x04, 0x0B, 0x53, 0x61, 0x6E, 0x74, 0x61, 0x20, 0x43, 0x6C, 0x61, 0x72, 0x61, 0xFFFFFFA3, 0x0A, 0x04, 0x02, 0x63, 0x6E, 0x04, 0x04, 0x61, 0x62, 0x6F, 0x6B, 0x30, 0x15, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x30, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x31, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x32};
+        SearchRequest decoded = ( SearchRequest ) decode( pdu  );
+
+        SearchRequestImpl expected = new SearchRequestImpl( 33 );
+        expected.setBase( "dc=example,dc=com" );
+        expected.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
+        expected.setScope( ScopeEnum.BASEOBJECT );
+        expected.setSizeLimit( 2 );
+        expected.setTimeLimit( 3 );
+        expected.setTypesOnly( true );
+
+        expected.addAttribute( "attr0" );
+        expected.addAttribute( "attr1" );
+        expected.addAttribute( "attr2" );
 
         FilterParserImpl parser = new FilterParserImpl();
         ExprNode node = null ;
@@ -612,64 +476,27 @@
                 "( & ( ou = Human Resources ) ( l=Santa Clara ) " +
                 "( uid=akarasulu ) ( cn=aok ) ( cn=aok ) ( cn = abok) )" ) ;
         normalizer.visit( node );
-        req.setFilter( node );
-
-        System.out.println( "Generated SearchRequest for test:" );
-        System.out.println( TestUtils.printTupleTree( req ) );
+        expected.setFilter( node );
 
-        SearchRequest decoded = ( SearchRequest )
-                snickersDecode( snaccEncode( req ) );
-        assertNotNull( decoded );
-
-        // test that we have all the properties set
-        assertEquals( req.getBase(), decoded.getBase() );
-        assertEquals( req.getScope(), decoded.getScope() );
-        assertEquals( req.getTypesOnly(), decoded.getTypesOnly() );
-        assertEquals( req.getTimeLimit(), decoded.getTimeLimit() );
-        assertEquals( req.getSizeLimit(), decoded.getSizeLimit() );
-        assertEquals( req.getDerefAliases(), decoded.getDerefAliases() );
-
-        // test that we have all the attributes
-        Iterator list = req.getAttributes().iterator();
-        Collection attributes = decoded.getAttributes();
-        while( list.hasNext() )
-        {
-            assertTrue( attributes.contains( list.next() ) );
-        }
-
-        // control test should not exist
-        assertFalse( attributes.contains( "(*&#$&#$*@#" ) );
-
-        // filter tests
-        node = req.getFilter();
-        StringBuffer buf0 = new StringBuffer();
-        node.printToBuffer( buf0 );
-        System.out.println( buf0.toString() );
-        node = decoded.getFilter();
-        normalizer.visit( node );
-        StringBuffer buf1 = new StringBuffer();
-        node.printToBuffer( buf1 );
-        System.out.println( buf1.toString() );
-        assertEquals(buf0.toString(), buf1.toString()) ;
+        assertEquals( expected, decoded );
     }
 
-
-    /**
-     * Tests an search request decode with a simple equality match filter.
-     */
     public void testOrFilter1() throws Exception
     {
-        SearchRequestImpl req = new SearchRequestImpl( 33 );
-        req.setBase( "dc=example,dc=com" );
-        req.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
-        req.setScope( ScopeEnum.BASEOBJECT );
-        req.setSizeLimit( 2 );
-        req.setTimeLimit( 3 );
-        req.setTypesOnly( true );
-
-        req.addAttribute( "attr0" );
-        req.addAttribute( "attr1" );
-        req.addAttribute( "attr2" );
+        byte[] pdu = new byte[] {0x30, 0x7B, 0x02, 0x01, 0x21, 0x63, 0x76, 0x04, 0x11, 0x64, 0x63, 0x3D, 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2C, 0x64, 0x63, 0x3D, 0x63, 0x6F, 0x6D, 0x0A, 0x01, 0x00, 0x0A, 0x01, 0x02, 0x02, 0x01, 0x02, 0x02, 0x01, 0x03, 0x01, 0x01, 0xFFFFFFFF, 0xFFFFFFA1, 0x3B, 0xFFFFFFA3, 0x15, 0x04, 0x02, 0x6F, 0x75, 0x04, 0x0F, 0x48, 0x75, 0x6D, 0x61, 0x6E, 0x20, 0x52, 0x65, 0x73, 0x6F, 0x75, 0x72, 0x63, 0x65, 0x73, 0xFFFFFFA3, 0x10, 0x04, 0x03, 0x75, 0x69, 0x64, 0x04, 0x09, 0x61, 0x6B, 0x61, 0x72, 0x61, 0x73, 0x75, 0x6C, 0x75, 0xFFFFFFA3, 0x10, 0x04, 0x01, 0x6C, 0x04, 0x0B, 0x53, 0x61, 0x6E, 0x74, 0x61, 0x20, 0x43, 0x6C, 0x61, 0x72, 0x61, 0x30, 0x15, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x30, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x31, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x32};
+        SearchRequest decoded = ( SearchRequest ) decode( pdu );
+
+        SearchRequestImpl expected = new SearchRequestImpl( 33 );
+        expected.setBase( "dc=example,dc=com" );
+        expected.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
+        expected.setScope( ScopeEnum.BASEOBJECT );
+        expected.setSizeLimit( 2 );
+        expected.setTimeLimit( 3 );
+        expected.setTypesOnly( true );
+
+        expected.addAttribute( "attr0" );
+        expected.addAttribute( "attr1" );
+        expected.addAttribute( "attr2" );
 
         FilterParserImpl parser = new FilterParserImpl();
         ExprNode node = null ;
@@ -677,65 +504,30 @@
                 "( | ( ou = Human Resources ) ( l=Santa Clara ) " +
                 "( uid=akarasulu ) )" ) ;
         normalizer.visit( node );
-        req.setFilter( node );
-
-        System.out.println( "Generated SearchRequest for test:" );
-        System.out.println( TestUtils.printTupleTree( req ) );
+        expected.setFilter( node );
 
-        SearchRequest decoded = ( SearchRequest )
-                snickersDecode( snaccEncode( req ) );
-        assertNotNull( decoded );
-
-        // test that we have all the properties set
-        assertEquals( req.getBase(), decoded.getBase() );
-        assertEquals( req.getScope(), decoded.getScope() );
-        assertEquals( req.getTypesOnly(), decoded.getTypesOnly() );
-        assertEquals( req.getTimeLimit(), decoded.getTimeLimit() );
-        assertEquals( req.getSizeLimit(), decoded.getSizeLimit() );
-        assertEquals( req.getDerefAliases(), decoded.getDerefAliases() );
-
-        // test that we have all the attributes
-        Iterator list = req.getAttributes().iterator();
-        Collection attributes = decoded.getAttributes();
-        while( list.hasNext() )
-        {
-            assertTrue( attributes.contains( list.next() ) );
-        }
-
-        // control test should not exist
-        assertFalse( attributes.contains( "(*&#$&#$*@#" ) );
-
-        // filter tests
-        node = req.getFilter();
-        StringBuffer buf0 = new StringBuffer();
-        node.printToBuffer( buf0 );
-        System.out.println( buf0.toString() );
-        node = decoded.getFilter();
-        normalizer.visit( node );
-        StringBuffer buf1 = new StringBuffer();
-        node.printToBuffer( buf1 );
-        System.out.println( buf1.toString() );
-        assertEquals(buf0.toString(), buf1.toString()) ;
+        assertEquals( expected, decoded );
     }
 
-
     /**
      * Tests an search request decode with a simple equality match filter.
      */
     public void testOrFilter2() throws Exception
     {
-        SearchRequestImpl req = new SearchRequestImpl( 33 );
-        req.setBase( "dc=example,dc=com" );
-        req.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
-        req.setScope( ScopeEnum.BASEOBJECT );
-        req.setSizeLimit( 2 );
-        req.setTimeLimit( 3 );
-        req.setTypesOnly( true );
-
-        req.addAttribute( "attr0" );
-        req.addAttribute( "attr1" );
-        req.addAttribute( "attr2" );
+        byte[] pdu = new byte[] {0x30, 0xFFFFFF81, 0xFFFFFF87, 0x02, 0x01, 0x21, 0x63, 0xFFFFFF81, 0xFFFFFF81, 0x04, 0x11, 0x64, 0x63, 0x3D, 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2C, 0x64, 0x63, 0x3D, 0x63, 0x6F, 0x6D, 0x0A, 0x01, 0x00, 0x0A, 0x01, 0x02, 0x02, 0x01, 0x02, 0x02, 0x01, 0x03, 0x01, 0x01, 0xFFFFFFFF, 0xFFFFFFA1, 0x46, 0xFFFFFFA3, 0x10, 0x04, 0x01, 0x6C, 0x04, 0x0B, 0x53, 0x61, 0x6E, 0x74, 0x61, 0x20, 0x43, 0x6C, 0x61, 0x72, 0x61, 0xFFFFFFA3, 0x10, 0x04, 0x03, 0x75, 0x69, 0x64, 0x04, 0x09, 0x61, 0x6B, 0x61, 0x72, 0x61, 0x73, 0x75, 0x6C, 0x75, 0xFFFFFFA3, 0x15, 0x04, 0x02, 0x6F, 0x75, 0x04, 0x0F, 0x48, 0x75, 0x6D, 0x61, 0x6E, 0x20, 0x52, 0x65, 0x73, 0x6F, 0x75, 0x72, 0x63, 0x65, 0x73, 0xFFFFFFA3, 0x09, 0x04, 0x02, 0x63, 0x6E, 0x04, 0x03, 0x61, 0x6F, 0x6B, 0x30, 0x15, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x30, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x31, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x32};
+        SearchRequest decoded = ( SearchRequest ) decode( pdu );
+
+        SearchRequestImpl expected = new SearchRequestImpl( 33 );
+        expected.setBase( "dc=example,dc=com" );
+        expected.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
+        expected.setScope( ScopeEnum.BASEOBJECT );
+        expected.setSizeLimit( 2 );
+        expected.setTimeLimit( 3 );
+        expected.setTypesOnly( true );
 
+        expected.addAttribute( "attr0" );
+        expected.addAttribute( "attr1" );
+        expected.addAttribute( "attr2" );
 
         FilterParserImpl parser = new FilterParserImpl();
         ExprNode node = null ;
@@ -743,64 +535,30 @@
                 "( | ( ou = Human Resources ) ( l=Santa Clara ) " +
                 "( uid=akarasulu ) ( cn=aok ) )" ) ;
         normalizer.visit( node );
-        req.setFilter( node );
-
-        System.out.println( "Generated SearchRequest for test:" );
-        System.out.println( TestUtils.printTupleTree( req ) );
+        expected.setFilter( node );
 
-        SearchRequest decoded = ( SearchRequest )
-                snickersDecode( snaccEncode( req ) );
-        assertNotNull( decoded );
-
-        // test that we have all the properties set
-        assertEquals( req.getBase(), decoded.getBase() );
-        assertEquals( req.getScope(), decoded.getScope() );
-        assertEquals( req.getTypesOnly(), decoded.getTypesOnly() );
-        assertEquals( req.getTimeLimit(), decoded.getTimeLimit() );
-        assertEquals( req.getSizeLimit(), decoded.getSizeLimit() );
-        assertEquals( req.getDerefAliases(), decoded.getDerefAliases() );
-
-        // test that we have all the attributes
-        Iterator list = req.getAttributes().iterator();
-        Collection attributes = decoded.getAttributes();
-        while( list.hasNext() )
-        {
-            assertTrue( attributes.contains( list.next() ) );
-        }
-
-        // control test should not exist
-        assertFalse( attributes.contains( "(*&#$&#$*@#" ) );
-
-        // filter tests
-        node = req.getFilter();
-        StringBuffer buf0 = new StringBuffer();
-        node.printToBuffer( buf0 );
-        System.out.println( buf0.toString() );
-        node = decoded.getFilter();
-        normalizer.visit( node );
-        StringBuffer buf1 = new StringBuffer();
-        node.printToBuffer( buf1 );
-        System.out.println( buf1.toString() );
-        assertEquals(buf0.toString(), buf1.toString()) ;
+        assertEquals( expected, decoded );
     }
 
-
     /**
      * Tests an search request decode with a simple equality match filter.
      */
     public void testOrFilter3() throws Exception
     {
-        SearchRequestImpl req = new SearchRequestImpl( 33 );
-        req.setBase( "dc=example,dc=com" );
-        req.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
-        req.setScope( ScopeEnum.BASEOBJECT );
-        req.setSizeLimit( 2 );
-        req.setTimeLimit( 3 );
-        req.setTypesOnly( true );
-
-        req.addAttribute( "attr0" );
-        req.addAttribute( "attr1" );
-        req.addAttribute( "attr2" );
+        byte[] pdu = new byte[] {0x30, 0xFFFFFF81, 0xFFFFFF93, 0x02, 0x01, 0x21, 0x63, 0xFFFFFF81, 0xFFFFFF8D, 0x04, 0x11, 0x64, 0x63, 0x3D, 0x65, 0x78, 0x61, 0x6D, 0x70, 0x6C, 0x65, 0x2C, 0x64, 0x63, 0x3D, 0x63, 0x6F, 0x6D, 0x0A, 0x01, 0x00, 0x0A, 0x01, 0x02, 0x02, 0x01, 0x02, 0x02, 0x01, 0x03, 0x01, 0x01, 0xFFFFFFFF, 0xFFFFFFA1, 0x52, 0xFFFFFFA3, 0x10, 0x04, 0x03, 0x75, 0x69, 0x64, 0x04, 0x09, 0x61, 0x6B, 0x61, 0x72, 0x61, 0x73, 0x75, 0x6C, 0x75, 0xFFFFFFA3, 0x09, 0x04, 0x02, 0x63, 0x6E, 0x04, 0x03, 0x61, 0x6F, 0x6B, 0xFFFFFFA3, 0x15, 0x04, 0x02, 0x6F, 0x75, 0x04, 0x0F, 0x48, 0x75, 0x6D, 0x61, 0x6E, 0x20, 0x52, 0x65, 0x73, 0x6F, 0x75, 0x72, 0x63, 0x65, 0x73, 0xFFFFFFA3, 0x10, 0x04, 0x01, 0x6C, 0x04, 0x0B, 0x53, 0x61, 0x6E, 0x74, 0x61, 0x20, 0x43, 0x6C, 0x61, 0x72, 0x61, 0xFFFFFFA3, 0x0A, 0x04, 0x02, 0x63, 0x6E, 0x04, 0x04, 0x61, 0x62, 0x6F, 0x6B, 0x30, 0x15, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x30, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x31, 0x04, 0x05, 0x61, 0x74, 0x74, 0x72, 0x32};
+        SearchRequest decoded = ( SearchRequest ) decode( pdu );
+
+        SearchRequestImpl expected = new SearchRequestImpl( 33 );
+        expected.setBase( "dc=example,dc=com" );
+        expected.setDerefAliases( DerefAliasesEnum.DEREFFINDINGBASEOBJ );
+        expected.setScope( ScopeEnum.BASEOBJECT );
+        expected.setSizeLimit( 2);
+        expected.setTimeLimit( 3 );
+        expected.setTypesOnly( true );
+
+        expected.addAttribute( "attr0" );
+        expected.addAttribute( "attr1" );
+        expected.addAttribute( "attr2" );
 
         FilterParserImpl parser = new FilterParserImpl();
         ExprNode node = null ;
@@ -808,44 +566,8 @@
                 "( | ( ou = Human Resources ) ( l=Santa Clara ) " +
                 "( uid=akarasulu ) ( cn=aok ) ( cn=aok ) ( cn = abok) )" ) ;
         normalizer.visit( node );
-        req.setFilter( node );
-
-        System.out.println( "Generated SearchRequest for test:" );
-        System.out.println( TestUtils.printTupleTree( req ) );
+        expected.setFilter( node );
 
-        SearchRequest decoded = ( SearchRequest )
-                snickersDecode( snaccEncode( req ) );
-        assertNotNull( decoded );
-
-        // test that we have all the properties set
-        assertEquals( req.getBase(), decoded.getBase() );
-        assertEquals( req.getScope(), decoded.getScope() );
-        assertEquals( req.getTypesOnly(), decoded.getTypesOnly() );
-        assertEquals( req.getTimeLimit(), decoded.getTimeLimit() );
-        assertEquals( req.getSizeLimit(), decoded.getSizeLimit() );
-        assertEquals( req.getDerefAliases(), decoded.getDerefAliases() );
-
-        // test that we have all the attributes
-        Iterator list = req.getAttributes().iterator();
-        Collection attributes = decoded.getAttributes();
-        while( list.hasNext() )
-        {
-            assertTrue( attributes.contains( list.next() ) );
-        }
-
-        // control test should not exist
-        assertFalse( attributes.contains( "(*&#$&#$*@#" ) );
-
-        // filter tests
-        node = req.getFilter();
-        StringBuffer buf0 = new StringBuffer();
-        node.printToBuffer( buf0 );
-        System.out.println( buf0.toString() );
-        node = decoded.getFilter();
-        normalizer.visit( node );
-        StringBuffer buf1 = new StringBuffer();
-        node.printToBuffer( buf1 );
-        System.out.println( buf1.toString() );
-        assertEquals(buf0.toString(), buf1.toString()) ;
+        assertEquals( expected, decoded );
     }
 }

Modified: incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/RuleTestCase.java
URL: http://svn.apache.org/viewcvs/incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/RuleTestCase.java?view=diff&r1=153669&r2=153670
==============================================================================
--- incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/RuleTestCase.java (original)
+++ incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/RuleTestCase.java Sun Feb 13 13:14:35 2005
@@ -67,24 +67,4 @@
         getDigester().decode( ByteBuffer.wrap( pdu ) ) ;
         return ( Message ) history.getMostRecent() ;
     }
-
-    public Message snickersDecode( ByteBuffer buf ) throws Exception
-    {
-        CallbackHistory history = new CallbackHistory() ;
-        getDigester().setCallback( history ) ;
-        getDigester().decode( buf ) ;
-        return ( Message ) history.getMostRecent() ;
-    }
-
-
-    public ByteBuffer snaccEncode( Message req )
-    {
-        // @todo replace this with the Snickers encoder or use serialized
-        // PDUs stubs for test cases rather than decoding live.
-        Properties env = new Properties();
-        env.setProperty( Provider.BERLIB_PROVIDER,
-                "org.apache.ldap.common.berlib.snacc.SnaccProvider" );
-        MessageEncoder encoder = new MessageEncoder( env );
-        return encoder.encodeBlocking( req );
-    }
 }

Modified: incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/TestUtils.java
URL: http://svn.apache.org/viewcvs/incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/TestUtils.java?view=diff&r1=153669&r2=153670
==============================================================================
--- incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/TestUtils.java (original)
+++ incubator/directory/ldap/trunk/apache-provider/src/test/org/apache/ldap/common/berlib/asn1/decoder/testutils/TestUtils.java Sun Feb 13 13:14:35 2005
@@ -39,52 +39,6 @@
  */
 public class TestUtils
 {
-    /**
-     * Generates the tuple tree for an LDAP Message PDU.
-     *
-     * @param pdu the LDAP message PDU to generate the tree for
-     * @return the root node of the tuple tree
-     * @throws Exception if there are any problems generating the Tuple tree
-     */
-    public static DefaultMutableTupleNode getTupleTree( Message pdu )
-            throws Exception
-    {
-        DefaultMutableTupleNode node = null ;
-
-        // @todo replace this with the Snickers encoder or use serialized
-        // PDUs stubs for test cases rather than decoding live.
-        Properties env = new Properties();
-        env.setProperty( Provider.BERLIB_PROVIDER,
-                "org.apache.ldap.common.berlib.snacc.SnaccProvider" );
-        MessageEncoder encoder = new MessageEncoder( env );
-        ByteBuffer buf = encoder.encodeBlocking( pdu ) ;
-        TupleTreeDecoder decoder = new TupleTreeDecoder() ;
-        CallbackHistory cb = new CallbackHistory() ;
-
-        decoder.setCallback( cb ) ;
-        decoder.decode( buf ) ;
-        node = ( DefaultMutableTupleNode ) cb.getMostRecent() ;
-        return node ;
-    }
-
-
-    /**
-     * Generates a string containing the pretty printed and nested tuple tree
-     * for an LDAP Message PDU.
-     *
-     * @param pdu the LDAP message PDU to print the tree for
-     * @return a string containing the pretty printed and nested tuple tree
-     * @throws Exception if there are any problems generating the Tuple tree
-     */
-    public static String printTupleTree( Message pdu ) throws Exception
-    {
-        DefaultMutableTupleNode node = null ;
-        StringBuffer sb = new StringBuffer() ;
-        node = getTupleTree( pdu ) ;
-        node.printDepthFirst( sb, 0 ) ;
-        return sb.toString() ;
-    }
-
     public static void assertEquals( byte[] expected, byte[] actual )
     {
         String msg = "\nexpected <" + toString( expected ) + ">\nbut was  <" + toString( actual ) + ">";