Fixed missing scopes after requesting access token with refresh token.
Change-Id: I8819a56bbe1388104e037460a22f66f7ad6b58ab
diff --git a/full/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2ControllerTest.java b/full/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2ControllerTest.java
index 863a6ec..e1cd67b 100644
--- a/full/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2ControllerTest.java
+++ b/full/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2ControllerTest.java
@@ -5,6 +5,7 @@
import static org.junit.Assert.assertTrue;
import java.net.URI;
+import java.util.Set;
import javax.ws.rs.core.MultivaluedMap;
import javax.ws.rs.core.Response.Status;
@@ -26,6 +27,9 @@
import de.ids_mannheim.korap.authentication.http.HttpAuthorizationHandler;
import de.ids_mannheim.korap.exceptions.KustvaktException;
import de.ids_mannheim.korap.oauth2.constant.OAuth2Error;
+import de.ids_mannheim.korap.oauth2.dao.RefreshTokenDao;
+import de.ids_mannheim.korap.oauth2.entity.AccessScope;
+import de.ids_mannheim.korap.oauth2.entity.RefreshToken;
import de.ids_mannheim.korap.utils.JsonUtils;
/**
@@ -332,6 +336,12 @@
assertEquals(TokenType.BEARER.toString(),
node.at("/token_type").asText());
assertNotNull(node.at("/expires_in").asText());
+
+ RefreshToken refreshToken = refreshTokenDao
+ .retrieveRefreshToken(node.at("/refresh_token").asText());
+ Set<AccessScope> scopes = refreshToken.getScopes();
+ assertEquals(1, scopes.size());
+ assertEquals("[all]", scopes.toString());
}
@Test
@@ -592,6 +602,11 @@
assertNotNull(node.at("/expires_in").asText());
assertTrue(!node.at("/refresh_token").asText().equals(refreshToken));
+
+ RefreshToken rt = refreshTokenDao.retrieveRefreshToken(refreshToken);
+ assertEquals(true, rt.isRevoked());
+ Set<AccessScope> scopes = rt.getScopes();
+ assertEquals(3, scopes.size());
}
private void testRequestRefreshTokenInvalidClient (String refreshToken)
diff --git a/full/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2TestBase.java b/full/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2TestBase.java
index cfb3f41..a30ca24 100644
--- a/full/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2TestBase.java
+++ b/full/src/test/java/de/ids_mannheim/korap/web/controller/OAuth2TestBase.java
@@ -9,6 +9,7 @@
import org.apache.http.entity.ContentType;
import org.apache.oltu.oauth2.common.message.types.GrantType;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.MultiValueMap;
import org.springframework.web.util.UriComponentsBuilder;
@@ -24,6 +25,7 @@
import de.ids_mannheim.korap.config.SpringJerseyTest;
import de.ids_mannheim.korap.exceptions.KustvaktException;
import de.ids_mannheim.korap.oauth2.constant.OAuth2Error;
+import de.ids_mannheim.korap.oauth2.dao.RefreshTokenDao;
import de.ids_mannheim.korap.utils.JsonUtils;
/**
@@ -35,6 +37,9 @@
*/
public abstract class OAuth2TestBase extends SpringJerseyTest {
+ @Autowired
+ protected RefreshTokenDao refreshTokenDao;
+
protected String publicClientId = "8bIDtZnH6NvRkW2Fq";
protected String confidentialClientId = "9aHsGW6QflV13ixNpez";
protected String superClientId = "fCBbQkAyYzI4NzUxMg";
diff --git a/full/src/test/java/de/ids_mannheim/korap/web/controller/TokenExpiryTest.java b/full/src/test/java/de/ids_mannheim/korap/web/controller/TokenExpiryTest.java
index b85b129..b51d912 100644
--- a/full/src/test/java/de/ids_mannheim/korap/web/controller/TokenExpiryTest.java
+++ b/full/src/test/java/de/ids_mannheim/korap/web/controller/TokenExpiryTest.java
@@ -23,7 +23,8 @@
/**
* Before running this test:
- * set oauth2.access.token.expiry = 3S
+ * set oauth2.access.token.expiry = 2S
+ * oauth2.authorization.code.expiry = 1S
*
* @author margaretha
*