From aadc011104ef8dd85e6138bb4247354b71345f45 Mon Sep 17 00:00:00 2001
From: arielak <arielak@mitre.org>
Date: Fri, 8 Aug 2014 16:38:56 -0400
Subject: [PATCH] Updated TESTMITREidDataService to reflect changes to
 MITREidDataService

---
 .../service/impl/MITREidDataService_1_0.java  | 16 +++++++++++--
 .../impl/TestMITREidDataService_1_0.java      | 23 ++++++++++++++++++-
 2 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_0.java b/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_0.java
index 015c99802..917c84ef1 100644
--- a/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_0.java
+++ b/openid-connect-server/src/main/java/org/mitre/openid/connect/service/impl/MITREidDataService_1_0.java
@@ -39,7 +39,6 @@ import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Set;
 import java.util.TimeZone;
-import java.util.logging.Level;
 import org.mitre.jose.JWEAlgorithmEmbed;
 import org.mitre.jose.JWEEncryptionMethodEmbed;
 import org.mitre.jose.JWSAlgorithmEmbed;
@@ -740,6 +739,7 @@ public class MITREidDataService_1_0 implements MITREidDataService {
         Collection<GrantedAuthority> authorities = new HashSet<GrantedAuthority>();
         Map<String, String> authorizationParameters = new HashMap<String, String>();
         Map<String, String> approvalParameters = new HashMap<String, String>();
+        //Set<String> responseTypes = new HashSet<String>();
         String redirectUri = null;
         String clientId = null;
         reader.beginObject();
@@ -776,6 +776,10 @@ public class MITREidDataService_1_0 implements MITREidDataService {
                         }
                     } else if (name.equals("redirectUri")) {
                         redirectUri = reader.nextString();
+                    } else if (name.equals("responseTypes")) {
+                        //already contained in authorizationParameters
+                        //responseTypes = readSet(reader);
+                        reader.skipValue();
                     } else {
                         reader.skipValue();
                     }
@@ -861,7 +865,11 @@ public class MITREidDataService_1_0 implements MITREidDataService {
     }
     
     Map<Long, Long> whitelistedSiteOldToNewIdMap = new HashMap<Long, Long>();
-    
+ 
+    /**
+     * @param reader
+     * @throws IOException
+     */
     private void readWhitelistedSites(JsonReader reader) throws IOException {
         reader.beginArray();
         while (reader.hasNext()) {
@@ -902,6 +910,10 @@ public class MITREidDataService_1_0 implements MITREidDataService {
         logger.info("Done reading whitelisted sites");
     }
     
+    /**
+     * @param reader
+     * @throws IOException
+     */
     private void readBlacklistedSites(JsonReader reader) throws IOException {
         reader.beginArray();
         while (reader.hasNext()) {
diff --git a/openid-connect-server/src/test/java/org/mitre/openid/connect/service/impl/TestMITREidDataService_1_0.java b/openid-connect-server/src/test/java/org/mitre/openid/connect/service/impl/TestMITREidDataService_1_0.java
index f98614792..be205fbf3 100644
--- a/openid-connect-server/src/test/java/org/mitre/openid/connect/service/impl/TestMITREidDataService_1_0.java
+++ b/openid-connect-server/src/test/java/org/mitre/openid/connect/service/impl/TestMITREidDataService_1_0.java
@@ -35,13 +35,16 @@ import org.mockito.Mockito;
 import org.mockito.runners.MockitoJUnitRunner;
 
 import com.google.common.collect.ImmutableSet;
-import com.google.gson.Gson;
 import com.google.gson.JsonArray;
 import com.google.gson.JsonElement;
 import com.google.gson.JsonObject;
 import com.google.gson.JsonParser;
 import com.google.gson.stream.JsonReader;
 import com.google.gson.stream.JsonWriter;
+import org.mitre.openid.connect.model.BlacklistedSite;
+import org.mitre.openid.connect.model.WhitelistedSite;
+import org.mitre.openid.connect.repository.BlacklistedSiteRepository;
+import org.mitre.openid.connect.repository.WhitelistedSiteRepository;
 
 @RunWith(MockitoJUnitRunner.class)
 public class TestMITREidDataService_1_0 {
@@ -50,6 +53,10 @@ public class TestMITREidDataService_1_0 {
     private OAuth2ClientRepository clientRepository;
 	@Mock
     private ApprovedSiteRepository approvedSiteRepository;
+    @Mock
+    private WhitelistedSiteRepository wlSiteRepository;
+    @Mock
+    private BlacklistedSiteRepository blSiteRepository;
 	@Mock
     private AuthenticationHolderRepository authHolderRepository;
 	@Mock
@@ -94,6 +101,8 @@ public class TestMITREidDataService_1_0 {
 		
 		Mockito.when(clientRepository.getAllClients()).thenReturn(allClients);
 		Mockito.when(approvedSiteRepository.getAll()).thenReturn(new HashSet<ApprovedSite>());
+		Mockito.when(wlSiteRepository.getAll()).thenReturn(new HashSet<WhitelistedSite>());
+		Mockito.when(blSiteRepository.getAll()).thenReturn(new HashSet<BlacklistedSite>());
 		Mockito.when(authHolderRepository.getAll()).thenReturn(new HashSet<AuthenticationHolderEntity>());
 		Mockito.when(tokenRepository.getAllAccessTokens()).thenReturn(new HashSet<OAuth2AccessTokenEntity>());
 		Mockito.when(tokenRepository.getAllRefreshTokens()).thenReturn(new HashSet<OAuth2RefreshTokenEntity>());
@@ -119,6 +128,8 @@ public class TestMITREidDataService_1_0 {
 		// make sure all the root elements are there
 		assertThat(config.has(MITREidDataService.CLIENTS), is(true));
 		assertThat(config.has(MITREidDataService.GRANTS), is(true));
+        assertThat(config.has(MITREidDataService.WHITELISTEDSITES), is(true));
+        assertThat(config.has(MITREidDataService.BLACKLISTEDSITES), is(true));
 		assertThat(config.has(MITREidDataService.REFRESHTOKENS), is(true));
 		assertThat(config.has(MITREidDataService.ACCESSTOKENS), is(true));
 		assertThat(config.has(MITREidDataService.SYSTEMSCOPES), is(true));
@@ -127,6 +138,8 @@ public class TestMITREidDataService_1_0 {
 		// make sure the root elements are all arrays
 		assertThat(config.get(MITREidDataService.CLIENTS).isJsonArray(), is(true));
 		assertThat(config.get(MITREidDataService.GRANTS).isJsonArray(), is(true));
+        assertThat(config.get(MITREidDataService.WHITELISTEDSITES).isJsonArray(), is(true));
+        assertThat(config.get(MITREidDataService.BLACKLISTEDSITES).isJsonArray(), is(true));
 		assertThat(config.get(MITREidDataService.REFRESHTOKENS).isJsonArray(), is(true));
 		assertThat(config.get(MITREidDataService.ACCESSTOKENS).isJsonArray(), is(true));
 		assertThat(config.get(MITREidDataService.SYSTEMSCOPES).isJsonArray(), is(true));
@@ -199,6 +212,8 @@ public class TestMITREidDataService_1_0 {
 		
 		Mockito.when(clientRepository.getAllClients()).thenReturn(new HashSet<ClientDetailsEntity>());
 		Mockito.when(approvedSiteRepository.getAll()).thenReturn(new HashSet<ApprovedSite>());
+		Mockito.when(wlSiteRepository.getAll()).thenReturn(new HashSet<WhitelistedSite>());
+		Mockito.when(blSiteRepository.getAll()).thenReturn(new HashSet<BlacklistedSite>());
 		Mockito.when(authHolderRepository.getAll()).thenReturn(new HashSet<AuthenticationHolderEntity>());
 		Mockito.when(tokenRepository.getAllAccessTokens()).thenReturn(new HashSet<OAuth2AccessTokenEntity>());
 		Mockito.when(tokenRepository.getAllRefreshTokens()).thenReturn(new HashSet<OAuth2RefreshTokenEntity>());
@@ -224,6 +239,8 @@ public class TestMITREidDataService_1_0 {
 		// make sure all the root elements are there
 		assertThat(config.has(MITREidDataService.CLIENTS), is(true));
 		assertThat(config.has(MITREidDataService.GRANTS), is(true));
+        assertThat(config.has(MITREidDataService.WHITELISTEDSITES), is(true));
+        assertThat(config.has(MITREidDataService.BLACKLISTEDSITES), is(true));
 		assertThat(config.has(MITREidDataService.REFRESHTOKENS), is(true));
 		assertThat(config.has(MITREidDataService.ACCESSTOKENS), is(true));
 		assertThat(config.has(MITREidDataService.SYSTEMSCOPES), is(true));
@@ -232,6 +249,8 @@ public class TestMITREidDataService_1_0 {
 		// make sure the root elements are all arrays
 		assertThat(config.get(MITREidDataService.CLIENTS).isJsonArray(), is(true));
 		assertThat(config.get(MITREidDataService.GRANTS).isJsonArray(), is(true));
+        assertThat(config.get(MITREidDataService.WHITELISTEDSITES).isJsonArray(), is(true));
+        assertThat(config.get(MITREidDataService.BLACKLISTEDSITES).isJsonArray(), is(true));
 		assertThat(config.get(MITREidDataService.REFRESHTOKENS).isJsonArray(), is(true));
 		assertThat(config.get(MITREidDataService.ACCESSTOKENS).isJsonArray(), is(true));
 		assertThat(config.get(MITREidDataService.SYSTEMSCOPES).isJsonArray(), is(true));
@@ -304,6 +323,8 @@ public class TestMITREidDataService_1_0 {
 				"\"" + MITREidDataService.ACCESSTOKENS + "\": [], " +
 				"\"" + MITREidDataService.REFRESHTOKENS + "\": [], " +
 				"\"" + MITREidDataService.GRANTS + "\": [], " +
+				"\"" + MITREidDataService.WHITELISTEDSITES + "\": [], " +
+				"\"" + MITREidDataService.BLACKLISTEDSITES + "\": [], " +
 				"\"" + MITREidDataService.AUTHENTICATIONHOLDERS + "\": [], " +
 				"\"" + MITREidDataService.SYSTEMSCOPES + "\": [" +