You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2015/01/29 07:04:53 UTC

svn commit: r1655533 - in /directory/shared/trunk/ldap/client/api/src: main/java/org/apache/directory/ldap/client/api/search/FilterBuilder.java test/java/org/apache/directory/ldap/client/api/search/FilterBuilderTest.java

Author: elecharny
Date: Thu Jan 29 06:04:53 2015
New Revision: 1655533

URL: http://svn.apache.org/r1655533
Log:
Throwing IllegalArgumentExeption when we don't have enough parts in the substing/startsWith/endsWith/contains methods

Modified:
    directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/search/FilterBuilder.java
    directory/shared/trunk/ldap/client/api/src/test/java/org/apache/directory/ldap/client/api/search/FilterBuilderTest.java

Modified: directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/search/FilterBuilder.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/search/FilterBuilder.java?rev=1655533&r1=1655532&r2=1655533&view=diff
==============================================================================
--- directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/search/FilterBuilder.java (original)
+++ directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/search/FilterBuilder.java Thu Jan 29 06:04:53 2015
@@ -336,6 +336,11 @@ public class FilterBuilder
      */
     public static FilterBuilder startsWith( String attribute, String... parts )
     {
+        if ( ( parts == null ) || ( parts.length == 0 ) )
+        {
+            throw new IllegalArgumentException( "An 'initial' part is needed" );
+        }
+
         return new FilterBuilder( SubstringFilter.startsWith( attribute, parts ) );
     }
 
@@ -364,6 +369,11 @@ public class FilterBuilder
      */
     public static FilterBuilder endsWith( String attribute, String... parts )
     {
+        if ( ( parts == null ) || ( parts.length == 0 ) )
+        {
+            throw new IllegalArgumentException( "At a 'final' part is needed" );
+        }
+
         return new FilterBuilder( SubstringFilter.endsWith( attribute, parts ) );
     }
 
@@ -392,6 +402,11 @@ public class FilterBuilder
      */
     public static FilterBuilder contains( String attribute, String... parts )
     {
+        if ( ( parts == null ) || ( parts.length == 0 ) )
+        {
+            throw new IllegalArgumentException( "At least one 'any' part is needed" );
+        }
+
         return new FilterBuilder( SubstringFilter.contains( attribute, parts ) );
     }
 
@@ -430,6 +445,11 @@ public class FilterBuilder
      */
     public static FilterBuilder substring( String attribute, String... parts )
     {
+        if ( ( parts == null ) || ( parts.length == 0 ) )
+        {
+            throw new IllegalArgumentException( "At least one if 'initial', 'any' or 'final' part is needed" );
+        }
+
         return new FilterBuilder( SubstringFilter.substring( attribute, parts ) );
     }
 

Modified: directory/shared/trunk/ldap/client/api/src/test/java/org/apache/directory/ldap/client/api/search/FilterBuilderTest.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/ldap/client/api/src/test/java/org/apache/directory/ldap/client/api/search/FilterBuilderTest.java?rev=1655533&r1=1655532&r2=1655533&view=diff
==============================================================================
--- directory/shared/trunk/ldap/client/api/src/test/java/org/apache/directory/ldap/client/api/search/FilterBuilderTest.java (original)
+++ directory/shared/trunk/ldap/client/api/src/test/java/org/apache/directory/ldap/client/api/search/FilterBuilderTest.java Thu Jan 29 06:04:53 2015
@@ -31,6 +31,7 @@ import static org.apache.directory.ldap.
 import static org.apache.directory.ldap.client.api.search.FilterBuilder.substring;
 import static org.apache.directory.ldap.client.api.search.FilterBuilderTest.EverythingFilter.everything;
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.fail;
 
 import org.junit.Test;
 
@@ -61,7 +62,15 @@ public class FilterBuilderTest
     @Test
     public void testSubstringFilterBuilderStartsWith()
     {
-        assertEquals( "(o=*)", startsWith( "o" ).toString() );
+        try
+        {
+            assertEquals( "(o=*)", startsWith( "o" ).toString() );
+            fail();
+        }
+        catch ( IllegalArgumentException iae )
+        {
+            // Expected
+        }
         assertEquals( "(o=univ*)", startsWith( "o", "univ" ).toString() );
         assertEquals( "(o=univ*of*mich*)", startsWith( "o", "univ", "of", "mich" ).toString() );
     }
@@ -73,7 +82,15 @@ public class FilterBuilderTest
     @Test
     public void testSubstringFilterBuilderEndsWith()
     {
-        assertEquals( "(o=*)", endsWith( "o" ).toString() );
+        try
+        {
+            assertEquals( "(o=*)", endsWith( "o" ).toString() );
+            fail();
+        }
+        catch ( IllegalArgumentException iae )
+        {
+            // Expected
+        }
         assertEquals( "(o=*igan)", endsWith( "o", "igan" ).toString() );
         assertEquals( "(o=*sit*of*igan)", endsWith( "o", "sit", "of", "igan" ).toString() );
     }
@@ -85,7 +102,15 @@ public class FilterBuilderTest
     @Test
     public void testSubstringFilterBuilderContains()
     {
-        assertEquals( "(o=*)", contains( "o" ).toString() );
+        try
+        {
+            assertEquals( "(o=*)", contains( "o" ).toString() );
+            fail();
+        }
+        catch ( IllegalArgumentException iae )
+        {
+            // Expected
+        }
         assertEquals( "(o=*of*)", contains( "o", "of" ).toString() );
         assertEquals( "(o=*sit*of*chi*)", contains( "o", "sit", "of", "chi" ).toString() );
         assertEquals( "(cn=*\u00e9*)", contains( "cn", "\u00e9" ).toString() );
@@ -99,7 +124,15 @@ public class FilterBuilderTest
     @Test
     public void testSubstringFilterBuilderSubstring()
     {
-        assertEquals( "(o=*)", substring( "o" ).toString() );
+        try
+        {
+            assertEquals( "(o=*)", substring( "o" ).toString() );
+            fail();
+        }
+        catch ( IllegalArgumentException iae )
+        {
+            // Expected
+        }
         assertEquals( "(o=of*)", substring( "o", "of" ).toString() );
         assertEquals( "(o=the*igan)", substring( "o", "the", "igan" ).toString() );
         assertEquals( "(o=the*sit*of*igan)", substring( "o", "the", "sit", "of", "igan" ).toString() );