Add tests for DIRSTUDIO-1078/DIRAPI-365: unable to use # pound hash sign in LDAP filters
diff --git a/tests/test.integration.ui/src/main/java/org/apache/directory/studio/test/integration/ui/SearchTest.java b/tests/test.integration.ui/src/main/java/org/apache/directory/studio/test/integration/ui/SearchTest.java
index aa908e0..09923f1 100644
--- a/tests/test.integration.ui/src/main/java/org/apache/directory/studio/test/integration/ui/SearchTest.java
+++ b/tests/test.integration.ui/src/main/java/org/apache/directory/studio/test/integration/ui/SearchTest.java
@@ -429,4 +429,58 @@
         assertEquals( "(&\n    (objectClass=*)\n    (uid=user.1)\n)", formattetFilter );
     }
 
+
+    /**
+     * Test for DIRSTUDIO-1078/DIRAPI-365: unable to use # pound hash sign in LDAP filters
+     */
+    @Test
+    public void testFilterForDnWithLeadingHash() throws Exception
+    {
+        String searchName = "Test filter for DN with leading hash character";
+        browserViewBot.selectEntry( "DIT", "Root DSE", "ou=system" );
+        SearchDialogBot dialogBot = browserViewBot.openSearchDialog();
+        assertTrue( dialogBot.isVisible() );
+        dialogBot.setSearchName( searchName );
+        dialogBot.setReturningAttributes( "objectClass,ou,cn,uid" );
+
+        FilterEditorDialogBot filterBot = dialogBot.openFilterEditor();
+        filterBot.setFilter( "member=CN=\\5c#ACL_AD-Projects_Author,ou=users,ou=system" );
+        filterBot.clickFormatButton();
+        filterBot.clickOkButton();
+        dialogBot.activate();
+        String filter = dialogBot.getFilter();
+        dialogBot.clickSearchButton();
+
+        browserViewBot.expandEntry( "Searches", searchName );
+        assertTrue( browserViewBot.existsEntry( "Searches", searchName, "cn=My Group,ou=groups,ou=system" ) );
+        assertEquals( "(member=CN=\\5c#ACL_AD-Projects_Author,ou=users,ou=system)", filter );
+    }
+
+
+    /**
+     * Test for DIRSTUDIO-1078/DIRAPI-365: unable to use # pound hash sign in LDAP filters
+     */
+    @Test
+    public void testFilterForDnWithLeadingHashHex() throws Exception
+    {
+        String searchName = "Test filter for DN with leading hash character";
+        browserViewBot.selectEntry( "DIT", "Root DSE", "ou=system" );
+        SearchDialogBot dialogBot = browserViewBot.openSearchDialog();
+        assertTrue( dialogBot.isVisible() );
+        dialogBot.setSearchName( searchName );
+        dialogBot.setReturningAttributes( "objectClass,ou,cn,uid" );
+
+        FilterEditorDialogBot filterBot = dialogBot.openFilterEditor();
+        filterBot.setFilter( "member=CN=\\5C23ACL_AD-Projects_Author,ou=users,ou=system" );
+        filterBot.clickFormatButton();
+        filterBot.clickOkButton();
+        dialogBot.activate();
+        String filter = dialogBot.getFilter();
+        dialogBot.clickSearchButton();
+
+        browserViewBot.expandEntry( "Searches", searchName );
+        assertTrue( browserViewBot.existsEntry( "Searches", searchName, "cn=My Group,ou=groups,ou=system" ) );
+        assertEquals( "(member=CN=\\5C23ACL_AD-Projects_Author,ou=users,ou=system)", filter );
+    }
+
 }
diff --git a/tests/test.integration.ui/src/main/resources/org/apache/directory/studio/test/integration/ui/BrowserTest.ldif b/tests/test.integration.ui/src/main/resources/org/apache/directory/studio/test/integration/ui/BrowserTest.ldif
index 08c54eb..761db63 100644
--- a/tests/test.integration.ui/src/main/resources/org/apache/directory/studio/test/integration/ui/BrowserTest.ldif
+++ b/tests/test.integration.ui/src/main/resources/org/apache/directory/studio/test/integration/ui/BrowserTest.ldif
@@ -221,6 +221,12 @@
 cn: #ACL_AD-Projects_Author
 sn: #ACL_AD-Projects_Author
 
+dn: cn=My Group,ou=groups,ou=system
+objectClass: groupOfNames
+objectClass: top
+cn: My Group
+member: cn=\#ACL_AD-Projects_Author,ou=users,ou=system
+
 dn: cn=nghZwwtHgxgyvVbTQCYyeY\+O4cc=,ou=users,ou=system
 objectClass: top
 objectClass: person