Author: matthieu
Date: Mon Nov  2 13:41:13 2015
New Revision: 1711967

URL: http://svn.apache.org/viewvc?rev=1711967&view=rev
Log:
JAMES-1594 add tests on address mappings

Modified:
    
james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RewriteTablesStepdefs.java
    
james/project/trunk/server/data/data-library/src/test/resources/cucumber/rewrite_tables.feature

Modified: 
james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RewriteTablesStepdefs.java
URL: 
http://svn.apache.org/viewvc/james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RewriteTablesStepdefs.java?rev=1711967&r1=1711966&r2=1711967&view=diff
==============================================================================
--- 
james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RewriteTablesStepdefs.java
 (original)
+++ 
james/project/trunk/server/data/data-library/src/test/java/org/apache/james/rrt/lib/RewriteTablesStepdefs.java
 Mon Nov  2 13:41:13 2015
@@ -48,11 +48,21 @@ public class RewriteTablesStepdefs {
         }
     }
 
+    @Given("store \"([^\"]*)\" address mapping for user \"([^\"]*)\" at domain 
\"([^\"]*)\"")
+    public void storeAddressMappingForUserAtDomain(String address, String 
user, String domain) throws Throwable {
+        rewriteTable.addAddressMapping(user, domain, address);
+    }
+
     @When("user \"([^\"]*)\" at domain \"([^\"]*)\" removes a regexp mapping 
\"([^\"]*)\"")
     public void userAtDomainRemovesRegexpMapping(String user, String domain, 
String regexp) throws Throwable {
         rewriteTable.removeRegexMapping(user, domain, regexp);
     }
 
+    @When("user \"([^\"]*)\" at domain \"([^\"]*)\" removes a address mapping 
\"([^\"]*)\"")
+    public void userAtDomainRemovesAddressMapping(String user, String domain, 
String address) throws Throwable {
+        rewriteTable.removeAddressMapping(user, domain, address);
+    }
+
     @Then("mappings should be empty")
     public void assertMappingsIsEmpty() throws Throwable {
         assertThat(rewriteTable.getAllMappings()).isNullOrEmpty();

Modified: 
james/project/trunk/server/data/data-library/src/test/resources/cucumber/rewrite_tables.feature
URL: 
http://svn.apache.org/viewvc/james/project/trunk/server/data/data-library/src/test/resources/cucumber/rewrite_tables.feature?rev=1711967&r1=1711966&r2=1711967&view=diff
==============================================================================
--- 
james/project/trunk/server/data/data-library/src/test/resources/cucumber/rewrite_tables.feature
 (original)
+++ 
james/project/trunk/server/data/data-library/src/test/resources/cucumber/rewrite_tables.feature
 Mon Nov  2 13:41:13 2015
@@ -28,3 +28,25 @@ Feature: Rewrite Tables tests
   Scenario: storing an invalid regexp mapping should not work
     When store an invalid ".*):" regexp mapping for user "test" at domain 
"localhost"
     Then a "RecipientRewriteTableException" exception should have been thrown
+
+# Address mapping
+
+  Scenario: stored address mapping should be retrieved when one mapping 
matching
+    Given store "test@localhost2" address mapping for user "test" at domain 
"localhost"
+    Then mappings for user "test" at domain "localhost" should contains only 
"test@localhost2"
+
+  Scenario: stored address mapping should be retrieved when two mappings 
matching
+    Given store "test@localhost2" address mapping for user "test" at domain 
"localhost"
+    And store "test@james" address mapping for user "test" at domain 
"localhost"
+    Then mappings for user "test" at domain "localhost" should contains only 
"test@localhost2, test@james"
+
+  Scenario: stored address mapping should not be retrieved by another user
+    Given store "test@localhost2" address mapping for user "test" at domain 
"localhost"
+    And store "test@james" address mapping for user "test" at domain 
"localhost"
+    Then mappings for user "test2" at domain "localhost" should be empty
+
+  Scenario: removing a stored address mapping should work
+    Given store "test@localhost2" address mapping for user "test" at domain 
"localhost"
+    And store "test@james" address mapping for user "test" at domain 
"localhost"
+    When user "test" at domain "localhost" removes a address mapping 
"test@james"
+    Then mappings for user "test" at domain "localhost" should contains only 
"test@localhost2"
\ No newline at end of file



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to