Skip to content

Commit 401b58b

Browse files
committed
fix tests
1 parent f8dcf4f commit 401b58b

File tree

8 files changed

+39
-24
lines changed

8 files changed

+39
-24
lines changed

backend/src/test/java/ch/puzzle/okr/multitenancy/FlywayMultitenantMigrationInitializerTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ public String getLog() {
7272
NOT_USED, URL, NAME, PASSWORD, SCHEMA);
7373

7474
private final TenantConfigProvider.TenantConfig tenantConfig = new TenantConfigProvider.TenantConfig(NOT_USED,
75-
new String[] { NOT_USED }, NOT_USED, NOT_USED, NOT_USED, dataSourceConfig);
75+
new String[] { NOT_USED }, NOT_USED, NOT_USED, NOT_USED, dataSourceConfig, dataSourceConfig);
7676

7777
@Override
7878
public List<TenantConfigProvider.TenantConfig> getTenantConfigs() {

backend/src/test/java/ch/puzzle/okr/multitenancy/HibernateContextTest.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package ch.puzzle.okr.multitenancy;
22

3+
import org.junit.jupiter.api.AfterEach;
34
import org.junit.jupiter.api.BeforeEach;
45
import org.junit.jupiter.api.DisplayName;
56
import org.junit.jupiter.api.Test;
@@ -23,6 +24,11 @@ void setUp() {
2324
resetHibernateConfig();
2425
}
2526

27+
@AfterEach
28+
void tearDown() {
29+
resetHibernateConfig();
30+
}
31+
2632
@DisplayName("setHibernateConfig() should throw exception if db config is null")
2733
@Test
2834
void setHibernateConfigShouldThrowExceptionIfDbConfigIsNull() {

backend/src/test/java/ch/puzzle/okr/multitenancy/SchemaMultiTenantConnectionProviderInternalsTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public class SchemaMultiTenantConnectionProviderInternalsTest {
1717
private static class ConfigurableConnectionProviderMock extends SchemaMultiTenantConnectionProvider {
1818

1919
@Override
20-
protected Properties getHibernateProperties() {
20+
protected Properties getHibernateProperties(String tenantIdentifier) {
2121
return new Properties();
2222
}
2323

@@ -78,6 +78,7 @@ void getAnyConnectionProviderReturnConnectionProviderForTenantIdPublic() {
7878
Assertions.assertNotNull(foundConnectionProvider);
7979
}
8080

81+
// @Disabled
8182
@DisplayName("getConnectionProviderShouldThrowRuntimeExceptionWhenNoPropertiesAreFound")
8283
@Test
8384
void getConnectionProviderShouldThrowRuntimeExceptionWhenNoPropertiesAreFound() {

backend/src/test/java/ch/puzzle/okr/multitenancy/TenantConfigProviderTestIT.java

Lines changed: 24 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package ch.puzzle.okr.multitenancy;
22

33
import ch.puzzle.okr.test.SpringIntegrationTest;
4+
import org.junit.jupiter.api.AfterEach;
45
import org.junit.jupiter.api.BeforeEach;
56
import org.junit.jupiter.api.DisplayName;
67
import org.junit.jupiter.api.Test;
@@ -24,8 +25,10 @@ public class TenantConfigProviderTestIT {
2425
private static final String FRONTEND_CLIENT_ISSUER_URL = "frontendClientIssuerUrl";
2526
private static final String FRONTEND_CLIENT_ID = "frontendClientId";
2627
private static final String DATASOURCE_URL = "datasourceUrl";
27-
private static final String DATASOURCE_NAME = "datasourceName";
28-
private static final String DATASOURCE_PASSWORD = "datasourcePassword";
28+
private static final String DATASOURCE_NAME_FLY = "datasourceNameFly";
29+
private static final String DATASOURCE_PASSWORD_FLY = "datasourcePasswordFly";
30+
private static final String DATASOURCE_NAME_APP = "datasourceNameApp";
31+
private static final String DATASOURCE_PASSWORD_APP = "datasourcePasswordApp";
2932
private static final String DATASOURCE_SCHEMA = "datasourceSchema";
3033
private static final String DRIVER_CLASS_NAME = "driverClassName";
3134
private static final String CHAMPION_EMAILS_1 = "[email protected]";
@@ -37,20 +40,30 @@ public class TenantConfigProviderTestIT {
3740
@Mock
3841
private Environment env;
3942

43+
private TenantConfigProvider configProvider;
44+
4045
@BeforeEach
4146
void setUp() {
4247
for (String tenantId : tenantIds) {
4348
setupPropertiesForTenantWithId(tenantId);
4449
}
50+
configProvider = new TenantConfigProvider(tenantIds, env);
51+
}
52+
53+
@AfterEach
54+
void tearDown() {
55+
TenantConfigProvider.clearTenantConfigsCache();
4556
}
4657

4758
private void setupPropertiesForTenantWithId(String id) {
4859
mockProperty("okr.tenants.{0}.security.oauth2.resourceserver.jwt.jwk-set-uri", JWK_SET_URI, id);
4960
mockProperty("okr.tenants.{0}.security.oauth2.frontend.issuer-url", FRONTEND_CLIENT_ISSUER_URL, id);
5061
mockProperty("okr.tenants.{0}.security.oauth2.frontend.client-id", FRONTEND_CLIENT_ID, id);
5162
mockProperty("okr.tenants.{0}.datasource.url", DATASOURCE_URL, id);
52-
mockProperty("okr.tenants.{0}.datasource.username", DATASOURCE_NAME, id);
53-
mockProperty("okr.tenants.{0}.datasource.password", DATASOURCE_PASSWORD, id);
63+
mockProperty("okr.tenants.{0}.datasource.username.fly", DATASOURCE_NAME_FLY, id);
64+
mockProperty("okr.tenants.{0}.datasource.password.fly", DATASOURCE_PASSWORD_FLY, id);
65+
mockProperty("okr.tenants.{0}.datasource.username.app", DATASOURCE_NAME_APP, id);
66+
mockProperty("okr.tenants.{0}.datasource.password.app", DATASOURCE_PASSWORD_APP, id);
5467
mockProperty("okr.tenants.{0}.datasource.schema", DATASOURCE_SCHEMA, id);
5568

5669
mockProperty("okr.datasource.driver-class-name", DRIVER_CLASS_NAME);
@@ -78,7 +91,6 @@ private String prefix(String tenantId) {
7891
@DisplayName("getTenantConfigs returns all TenantConfigs as List")
7992
@Test
8093
public void testGetTenantConfigs() {
81-
TenantConfigProvider configProvider = new TenantConfigProvider(tenantIds, env);
8294
List<TenantConfigProvider.TenantConfig> tenantConfigs = configProvider.getTenantConfigs();
8395
for (TenantConfigProvider.TenantConfig config : tenantConfigs) {
8496
assertTenantConfigProvider(config);
@@ -89,7 +101,6 @@ public void testGetTenantConfigs() {
89101
@ParameterizedTest
90102
@CsvSource({ "pitc, acme" })
91103
void testGetTenantConfigByIdForExistingTenantId(String tenantId) {
92-
TenantConfigProvider configProvider = new TenantConfigProvider(tenantIds, env);
93104
Optional<TenantConfigProvider.TenantConfig> config = configProvider.getTenantConfigById(tenantId);
94105
assertTrue(config.isPresent());
95106
assertTenantConfigProvider(config.get());
@@ -99,7 +110,6 @@ void testGetTenantConfigByIdForExistingTenantId(String tenantId) {
99110
@ParameterizedTest
100111
@CsvSource({ "PITC-London" })
101112
void testGetTenantConfigByIdForNonExistingTenantId(String nonExistingTenantId) {
102-
TenantConfigProvider configProvider = new TenantConfigProvider(tenantIds, env);
103113
Optional<TenantConfigProvider.TenantConfig> config = configProvider.getTenantConfigById(nonExistingTenantId);
104114
assertTrue(config.isEmpty());
105115
}
@@ -108,9 +118,6 @@ void testGetTenantConfigByIdForNonExistingTenantId(String nonExistingTenantId) {
108118
@ParameterizedTest
109119
@CsvSource({ "pitc", "acme" })
110120
void testGetJwkSetUriForExistingTenantId(String tenantId) {
111-
// arrange
112-
TenantConfigProvider configProvider = new TenantConfigProvider(tenantIds, env);
113-
114121
// act
115122
Optional<String> jwkSetUri = configProvider.getJwkSetUri(tenantId);
116123

@@ -123,7 +130,6 @@ void testGetJwkSetUriForExistingTenantId(String tenantId) {
123130
@ParameterizedTest
124131
@CsvSource({ "PITC-London" })
125132
void testGetJwkSetUriForNonExistingTenantId(String nonExistingTenantId) {
126-
TenantConfigProvider configProvider = new TenantConfigProvider(tenantIds, env);
127133
Optional<String> jwkSetUri = configProvider.getJwkSetUri(nonExistingTenantId);
128134
assertTrue(jwkSetUri.isEmpty());
129135
}
@@ -134,13 +140,15 @@ private void assertTenantConfigProvider(TenantConfigProvider.TenantConfig tenant
134140
assertEquals(prefix(tenantId) + JWK_SET_URI, tenantConfig.jwkSetUri());
135141
assertEquals(prefix(tenantId) + FRONTEND_CLIENT_ISSUER_URL, tenantConfig.issuerUrl());
136142
assertEquals(prefix(tenantId) + FRONTEND_CLIENT_ID, tenantConfig.clientId());
137-
assertEquals(prefix(tenantId) + DATASOURCE_URL, tenantConfig.dataSourceConfig().url());
138-
assertEquals(prefix(tenantId) + DATASOURCE_NAME, tenantConfig.dataSourceConfig().name());
139-
assertEquals(prefix(tenantId) + DATASOURCE_PASSWORD, tenantConfig.dataSourceConfig().password());
140-
assertEquals(prefix(tenantId) + DATASOURCE_SCHEMA, tenantConfig.dataSourceConfig().schema());
143+
assertEquals(prefix(tenantId) + DATASOURCE_URL, tenantConfig.dataSourceConfigFlyway().url());
144+
assertEquals(prefix(tenantId) + DATASOURCE_NAME_FLY, tenantConfig.dataSourceConfigFlyway().name());
145+
assertEquals(prefix(tenantId) + DATASOURCE_PASSWORD_FLY, tenantConfig.dataSourceConfigFlyway().password());
146+
assertEquals(prefix(tenantId) + DATASOURCE_NAME_APP, tenantConfig.dataSourceConfigApp().name());
147+
assertEquals(prefix(tenantId) + DATASOURCE_PASSWORD_APP, tenantConfig.dataSourceConfigApp().password());
148+
assertEquals(prefix(tenantId) + DATASOURCE_SCHEMA, tenantConfig.dataSourceConfigApp().schema());
141149

142150
assertArrayEquals(new String[] { CHAMPION_EMAILS_1, CHAMPION_EMAILS_2 }, tenantConfig.okrChampionEmails());
143-
assertEquals(DRIVER_CLASS_NAME, tenantConfig.dataSourceConfig().driverClassName());
151+
assertEquals(DRIVER_CLASS_NAME, tenantConfig.dataSourceConfigFlyway().driverClassName());
144152
}
145153

146154
}

backend/src/test/java/ch/puzzle/okr/security/JwtHelperTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ void getTenantFromTokenReturnsTenantIfTenantFoundInTenantConfigProvider() {
8484
when(tenantConfigProviderMock.getTenantConfigById(PITC)).thenReturn(Optional.of( //
8585
new TenantConfigProvider.TenantConfig(PITC, //
8686
new String[] {}, "jwkSetUri", "issuerUrl", //
87-
"clientId", null) //
87+
"clientId", null, null) //
8888
));
8989

9090
JwtHelper jwtHelper = new JwtHelper(tenantConfigProviderMock, null, null, null);
@@ -122,7 +122,7 @@ void getTenantFromJWTClaimsSetReturnsTenantIfTenantFoundInTenantConfigProvider()
122122
when(tenantConfigProviderWithDataMock.getTenantConfigById(PITC)).thenReturn(Optional.of( //
123123
new TenantConfigProvider.TenantConfig(PITC, //
124124
new String[] {}, "jwkSetUri", "issuerUrl", //
125-
"clientId", null) //
125+
"clientId", null, null) //
126126
));
127127

128128
JwtHelper jwtHelper = new JwtHelper(tenantConfigProviderWithDataMock, null, null, null);

backend/src/test/java/ch/puzzle/okr/security/TenantJwtIssuerValidatorTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ void validateReturnOAuth2TokenValidatorResultIfTenantConfigWithIssuerUrlIsFound(
5151
when(tenantConfigProviderWithPitcConfig.getTenantConfigById(PITC)).thenReturn(Optional.of( //
5252
new TenantConfigProvider.TenantConfig( //
5353
PITC, new String[] {}, "jwkSetUri", //
54-
ISSUER_URL, "clientId", null)));
54+
ISSUER_URL, "clientId", null, null)));
5555

5656
TenantJwtIssuerValidator tenantJwtIssuerValidator = new TenantJwtIssuerValidator(
5757
tenantConfigProviderWithPitcConfig, jwtHelper) {

backend/src/test/java/ch/puzzle/okr/service/authorization/UserUpdateHelperTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ void updateUserAsNoChampion() {
4747
// arrange
4848
User noChampionUser = User.Builder.builder().withEmail("[email protected]").build();
4949
TenantConfigProvider.TenantConfig tenantConfig = new TenantConfigProvider.TenantConfig(null, //
50-
new String[] { "[email protected]" }, null, null, null, null);
50+
new String[] { "[email protected]" }, null, null, null, null, null);
5151

5252
// act
5353
User updatedUser = helper.setOkrChampionFromProperties(noChampionUser, tenantConfig);
@@ -61,7 +61,7 @@ void updateUserAsChampion() {
6161
// arrange
6262
User championUser = User.Builder.builder().withEmail("[email protected]").build();
6363
TenantConfigProvider.TenantConfig tenantConfig = new TenantConfigProvider.TenantConfig(null, //
64-
new String[] { "[email protected]" }, null, null, null, null);
64+
new String[] { "[email protected]" }, null, null, null, null, null);
6565

6666
// act
6767
User updatedUser = helper.setOkrChampionFromProperties(championUser, tenantConfig);

backend/src/test/java/ch/puzzle/okr/service/clientconfig/ClientConfigServiceTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ private TenantConfigProvider.TenantConfig getTenantConfig(String tenantId) {
102102
prefix(tenantId) + "jwkSetUri", //
103103
prefix(tenantId) + "issuerUrl", //
104104
prefix(tenantId) + "clientId", //
105-
null);
105+
null, null);
106106
}
107107

108108
private TenantClientCustomization getTenantClientCustomization(String tenantId) {

0 commit comments

Comments
 (0)