From 82a5857407d01686cac4cf7b70677ed3df42a90b Mon Sep 17 00:00:00 2001 From: strehle Date: Thu, 24 Aug 2023 15:44:21 +0200 Subject: [PATCH] Sonar findings --- .../identity/uaa/client/UaaClientDetails.java | 5 ++- .../MultitenantJdbcClientDetailsService.java | 4 +-- .../uaa/client/UaaClientDetailsTest.java | 34 ++++++++++++++++++- 3 files changed, 37 insertions(+), 6 deletions(-) diff --git a/server/src/main/java/org/cloudfoundry/identity/uaa/client/UaaClientDetails.java b/server/src/main/java/org/cloudfoundry/identity/uaa/client/UaaClientDetails.java index 07917c9fe53..d2b62db8403 100644 --- a/server/src/main/java/org/cloudfoundry/identity/uaa/client/UaaClientDetails.java +++ b/server/src/main/java/org/cloudfoundry/identity/uaa/client/UaaClientDetails.java @@ -27,13 +27,12 @@ public UaaClientDetails() { UaaClientDetails(ClientDetails prototype) { super(prototype); - this.setAdditionalInformation(prototype.getAdditionalInformation()); + setAdditionalInformation(prototype.getAdditionalInformation()); } - public UaaClientDetails(String clientId, String clientSecret, String clientJwtConfig, String resourceIds, + public UaaClientDetails(String clientId, String resourceIds, String scopes, String grantTypes, String authorities, String redirectUris) { super(clientId, resourceIds, scopes, grantTypes, authorities, redirectUris); - setClientSecret(clientSecret); this.clientJwtConfig = clientJwtConfig; } diff --git a/server/src/main/java/org/cloudfoundry/identity/uaa/zone/MultitenantJdbcClientDetailsService.java b/server/src/main/java/org/cloudfoundry/identity/uaa/zone/MultitenantJdbcClientDetailsService.java index 0118205e529..9d3cdb85f44 100644 --- a/server/src/main/java/org/cloudfoundry/identity/uaa/zone/MultitenantJdbcClientDetailsService.java +++ b/server/src/main/java/org/cloudfoundry/identity/uaa/zone/MultitenantJdbcClientDetailsService.java @@ -307,14 +307,14 @@ private static class ClientDetailsRowMapper implements RowMapper public ClientDetails mapRow(ResultSet rs, int rowNum) throws SQLException { UaaClientDetails details = new UaaClientDetails( rs.getString(1), - rs.getString(2), - rs.getString(3), rs.getString(4), rs.getString(5), rs.getString(6), rs.getString(8), rs.getString(7) ); + details.setClientSecret(rs.getString(2)); + details.setClientJwtConfig(rs.getString(3)); if (rs.getObject(9) != null) { details.setAccessTokenValiditySeconds(rs.getInt(9)); } diff --git a/server/src/test/java/org/cloudfoundry/identity/uaa/client/UaaClientDetailsTest.java b/server/src/test/java/org/cloudfoundry/identity/uaa/client/UaaClientDetailsTest.java index 66b6864256b..bcd561d9ee1 100644 --- a/server/src/test/java/org/cloudfoundry/identity/uaa/client/UaaClientDetailsTest.java +++ b/server/src/test/java/org/cloudfoundry/identity/uaa/client/UaaClientDetailsTest.java @@ -19,9 +19,12 @@ import static org.hamcrest.collection.IsIterableContainingInOrder.contains; import static org.hamcrest.collection.IsMapContaining.hasEntry; import static org.hamcrest.collection.IsMapWithSize.aMapWithSize; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotEquals; class UaaClientDetailsTest { - @Nested + + @Nested class Creation { private BaseClientDetails testClient; @@ -63,6 +66,35 @@ void copiesAdditionalInformation() { .withAdditionalInformation(allOf(aMapWithSize(1), hasEntry("key", "value"))) )); } + + @Test + void testClientJwtConfig() { + UaaClientDetails copy = new UaaClientDetails(testClient); + copy.setClientJwtConfig("test"); + assertEquals("test", copy.getClientJwtConfig()); + } + + @Test + void testEquals() { + UaaClientDetails copy = new UaaClientDetails(testClient); + UaaClientDetails copy2 = new UaaClientDetails(testClient); + copy.setClientJwtConfig("test"); + assertNotEquals(copy, copy2); + assertNotEquals(copy, new UaaClientDetails()); + copy.setClientJwtConfig(null); + assertEquals(copy, copy2); + } + + @Test + void testHashCode() { + UaaClientDetails copy = new UaaClientDetails(testClient); + UaaClientDetails copy2 = new UaaClientDetails(testClient.getClientId(), "", + "test.none", "", "test.admin", null); + copy.setClientJwtConfig("test"); + assertNotEquals(copy.hashCode(), copy2.hashCode()); + copy.setClientJwtConfig(null); + assertEquals(copy.hashCode(), copy2.hashCode()); + } } @Nested