You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bt...@apache.org on 2016/04/15 10:53:25 UTC

[3/7] james-project git commit: JAMES-1718 Abstract tests for Token Repository should comply with our coding best practice

JAMES-1718 Abstract tests for Token Repository should comply with our coding best practice


Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/0cc164a0
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/0cc164a0
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/0cc164a0

Branch: refs/heads/master
Commit: 0cc164a0a6d8c78c4dfde9b6a0caf1159fec63f3
Parents: 7a59d2d
Author: Benoit Tellier <bt...@linagora.com>
Authored: Mon Apr 11 18:32:45 2016 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Fri Apr 15 15:49:52 2016 +0700

----------------------------------------------------------------------
 .../access/CassandraAccessTokenDAO.java         |  3 ++-
 .../AbstractAccessTokenRepositoryTest.java      | 28 +++++++++-----------
 2 files changed, 14 insertions(+), 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/0cc164a0/server/data/data-jmap-cassandra/src/main/java/org/apache/james/jmap/cassandra/access/CassandraAccessTokenDAO.java
----------------------------------------------------------------------
diff --git a/server/data/data-jmap-cassandra/src/main/java/org/apache/james/jmap/cassandra/access/CassandraAccessTokenDAO.java b/server/data/data-jmap-cassandra/src/main/java/org/apache/james/jmap/cassandra/access/CassandraAccessTokenDAO.java
index 1dcd903..43e4811 100644
--- a/server/data/data-jmap-cassandra/src/main/java/org/apache/james/jmap/cassandra/access/CassandraAccessTokenDAO.java
+++ b/server/data/data-jmap-cassandra/src/main/java/org/apache/james/jmap/cassandra/access/CassandraAccessTokenDAO.java
@@ -35,6 +35,7 @@ import org.apache.james.jmap.cassandra.access.table.CassandraAccessTokenTable;
 
 import com.datastax.driver.core.PreparedStatement;
 import com.datastax.driver.core.Session;
+import com.google.common.primitives.Ints;
 
 public class CassandraAccessTokenDAO {
 
@@ -48,7 +49,7 @@ public class CassandraAccessTokenDAO {
 
     public CassandraAccessTokenDAO(Session session, long durationInMilliseconds) {
         this.cassandraAsyncExecutor = new CassandraAsyncExecutor(session);
-        this.durationInSeconds = (int) (durationInMilliseconds / 1000);
+        this.durationInSeconds = Ints.checkedCast(durationInMilliseconds / 1000);
 
         this.removeStatement = session.prepare(delete()
             .from(CassandraAccessTokenTable.TABLE_NAME)

http://git-wip-us.apache.org/repos/asf/james-project/blob/0cc164a0/server/data/data-jmap/src/test/java/org/apache/james/jmap/api/access/AbstractAccessTokenRepositoryTest.java
----------------------------------------------------------------------
diff --git a/server/data/data-jmap/src/test/java/org/apache/james/jmap/api/access/AbstractAccessTokenRepositoryTest.java b/server/data/data-jmap/src/test/java/org/apache/james/jmap/api/access/AbstractAccessTokenRepositoryTest.java
index 0209af3..648a92e 100644
--- a/server/data/data-jmap/src/test/java/org/apache/james/jmap/api/access/AbstractAccessTokenRepositoryTest.java
+++ b/server/data/data-jmap/src/test/java/org/apache/james/jmap/api/access/AbstractAccessTokenRepositoryTest.java
@@ -20,7 +20,7 @@
 package org.apache.james.jmap.api.access;
 
 import static org.assertj.core.api.Assertions.assertThat;
-import static org.assertj.core.api.Assertions.fail;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
 import org.apache.james.jmap.api.access.exceptions.AccessTokenAlreadyStored;
 import org.apache.james.jmap.api.access.exceptions.InvalidAccessToken;
@@ -40,41 +40,37 @@ public abstract class AbstractAccessTokenRepositoryTest {
         accessTokenRepository = createAccessTokenRepository();
     }
 
-    abstract protected AccessTokenRepository createAccessTokenRepository();
+    protected abstract AccessTokenRepository createAccessTokenRepository();
 
     @Test
-    public void validTokenMustWork() throws Exception {
+    public void validTokenMustBeRetrieved() throws Exception {
         accessTokenRepository.addToken(USERNAME, TOKEN);
         assertThat(accessTokenRepository.getUsernameFromToken(TOKEN)).isEqualTo(USERNAME);
     }
 
-    @Test(expected=InvalidAccessToken.class)
-    public void nonStoredTokensMustBeInvalid() throws Exception {
-        accessTokenRepository.getUsernameFromToken(TOKEN);
+    @Test
+    public void absentTokensMustBeInvalid() throws Exception {
+        assertThatThrownBy(() -> accessTokenRepository.getUsernameFromToken(TOKEN)).isInstanceOf(InvalidAccessToken.class);
     }
 
-    @Test(expected=InvalidAccessToken.class)
+    @Test
     public void removedTokensMustBeInvalid() throws Exception {
         accessTokenRepository.addToken(USERNAME, TOKEN);
         accessTokenRepository.removeToken(TOKEN);
-        accessTokenRepository.getUsernameFromToken(TOKEN);
+        assertThatThrownBy(() -> accessTokenRepository.getUsernameFromToken(TOKEN)).isInstanceOf(InvalidAccessToken.class);
     }
 
-    @Test(expected = AccessTokenAlreadyStored.class)
+    @Test
     public void addTokenMustThrowWhenTokenIsAlreadyStored() throws Exception {
-        try {
-            accessTokenRepository.addToken(USERNAME, TOKEN);
-        } catch(Exception e) {
-            fail("Exception caught", e);
-        }
         accessTokenRepository.addToken(USERNAME, TOKEN);
+        assertThatThrownBy(() -> accessTokenRepository.addToken(USERNAME, TOKEN)).isInstanceOf(AccessTokenAlreadyStored.class);
     }
 
-    @Test(expected=InvalidAccessToken.class)
+    @Test
     public void outDatedTokenMustBeInvalid() throws Exception {
         accessTokenRepository.addToken(USERNAME, TOKEN);
         Thread.sleep(2 * TTL_IN_MS);
-        accessTokenRepository.getUsernameFromToken(TOKEN);
+        assertThatThrownBy(() -> accessTokenRepository.getUsernameFromToken(TOKEN)).isInstanceOf(InvalidAccessToken.class);
     }
 
     @Test(expected = NullPointerException.class)


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