fix credentials-api-paths+includes
This commit is contained in:
		| @@ -5,8 +5,8 @@ import java.util.List; | ||||
| import io.micrometer.core.annotation.Timed; | ||||
| import net.hostsharing.hsadminng.config.NoSecurityRequirement; | ||||
| import net.hostsharing.hsadminng.context.Context; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.api.LoginContextsApi; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.LoginContextResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.api.ContextsApi; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.ContextResource; | ||||
| import net.hostsharing.hsadminng.mapper.StrictMapper; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.http.ResponseEntity; | ||||
| @@ -14,7 +14,7 @@ import org.springframework.web.bind.annotation.RestController; | ||||
|  | ||||
| @RestController | ||||
| @NoSecurityRequirement | ||||
| public class HsCredentialsContextsController implements LoginContextsApi { | ||||
| public class HsCredentialsContextsController implements ContextsApi { | ||||
|  | ||||
|     @Autowired | ||||
|     private Context context; | ||||
| @@ -27,11 +27,11 @@ public class HsCredentialsContextsController implements LoginContextsApi { | ||||
|  | ||||
|     @Override | ||||
|     @Timed("app.credentials.contexts.getListOfLoginContexts") | ||||
|     public ResponseEntity<List<LoginContextResource>> getListOfLoginContexts(final String assumedRoles) { | ||||
|     public ResponseEntity<List<ContextResource>> getListOfContexts(final String assumedRoles) { | ||||
|         context.assumeRoles(assumedRoles); | ||||
|  | ||||
|         final var loginContexts = contextRepo.findAll(); | ||||
|         final var result = mapper.mapList(loginContexts, LoginContextResource.class); | ||||
|         final var result = mapper.mapList(loginContexts, ContextResource.class); | ||||
|         return ResponseEntity.ok(result); | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -6,10 +6,10 @@ import java.util.UUID; | ||||
| import io.micrometer.core.annotation.Timed; | ||||
| import io.swagger.v3.oas.annotations.security.SecurityRequirement; | ||||
| import net.hostsharing.hsadminng.context.Context; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.api.LoginCredentialsApi; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.LoginCredentialsInsertResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.LoginCredentialsPatchResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.LoginCredentialsResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.api.CredentialsApi; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.CredentialsInsertResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.CredentialsPatchResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.CredentialsResource; | ||||
| import net.hostsharing.hsadminng.hs.office.person.HsOfficePersonRbacRepository; | ||||
| import net.hostsharing.hsadminng.mapper.StrictMapper; | ||||
| import net.hostsharing.hsadminng.persistence.EntityManagerWrapper; | ||||
| @@ -19,7 +19,7 @@ import org.springframework.web.bind.annotation.RestController; | ||||
|  | ||||
| @RestController | ||||
| @SecurityRequirement(name = "casTicket") | ||||
| public class HsCredentialsController implements LoginCredentialsApi { | ||||
| public class HsCredentialsController implements CredentialsApi { | ||||
|  | ||||
|     @Autowired | ||||
|     private Context context; | ||||
| @@ -34,72 +34,72 @@ public class HsCredentialsController implements LoginCredentialsApi { | ||||
|     private HsOfficePersonRbacRepository personRepo; | ||||
|  | ||||
|     @Autowired | ||||
|     private HsCredentialsRepository loginCredentialsRepo; | ||||
|     private HsCredentialsRepository credentialsRepo; | ||||
|  | ||||
|     @Override | ||||
|     @Timed("app.credentials.credentials.getSingleLoginCredentialsByUuid") | ||||
|     public ResponseEntity<LoginCredentialsResource> getSingleLoginCredentialsByUuid( | ||||
|     @Timed("app.credentials.credentials.getSingleCredentialsByUuid") | ||||
|     public ResponseEntity<CredentialsResource> getSingleCredentialsByUuid( | ||||
|             final String assumedRoles, | ||||
|             final UUID loginCredentialsUuid) { | ||||
|             final UUID credentialsUuid) { | ||||
|         context.assumeRoles(assumedRoles); | ||||
|  | ||||
|         final var credentials = loginCredentialsRepo.findByUuid(loginCredentialsUuid); | ||||
|         final var result = mapper.map(credentials, LoginCredentialsResource.class); | ||||
|         final var credentials = credentialsRepo.findByUuid(credentialsUuid); | ||||
|         final var result = mapper.map(credentials, CredentialsResource.class); | ||||
|         return ResponseEntity.ok(result); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     @Timed("app.credentials.credentials.getListOfLoginCredentialsByPersonUuid") | ||||
|     public ResponseEntity<List<LoginCredentialsResource>> getListOfLoginCredentialsByPersonUuid( | ||||
|     @Timed("app.credentials.credentials.getListOfCredentialsByPersonUuid") | ||||
|     public ResponseEntity<List<CredentialsResource>> getListOfCredentialsByPersonUuid( | ||||
|             final String assumedRoles, | ||||
|             final UUID personUuid | ||||
|     ) { | ||||
|         context.assumeRoles(assumedRoles); | ||||
|  | ||||
|         final var person = personRepo.findByUuid(personUuid).orElseThrow(); // FIXME: use proper exception | ||||
|         final var credentials = loginCredentialsRepo.findByPerson(person); | ||||
|         final var result = mapper.mapList(credentials, LoginCredentialsResource.class); | ||||
|         final var credentials = credentialsRepo.findByPerson(person); | ||||
|         final var result = mapper.mapList(credentials, CredentialsResource.class); | ||||
|         return ResponseEntity.ok(result); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     @Timed("app.credentials.credentials.postNewLoginCredentials") | ||||
|     public ResponseEntity<LoginCredentialsResource> postNewLoginCredentials( | ||||
|     @Timed("app.credentials.credentials.postNewCredentials") | ||||
|     public ResponseEntity<CredentialsResource> postNewCredentials( | ||||
|             final String assumedRoles, | ||||
|             final LoginCredentialsInsertResource body | ||||
|             final CredentialsInsertResource body | ||||
|     ) { | ||||
|         context.assumeRoles(assumedRoles); | ||||
|  | ||||
|         final var newLoginCredentialsEntity = mapper.map(body, HsCredentialsEntity.class); | ||||
|         final var savedLoginCredentialsEntity = loginCredentialsRepo.save(newLoginCredentialsEntity); | ||||
|         final var newLoginCredentialsResource = mapper.map(savedLoginCredentialsEntity, LoginCredentialsResource.class); | ||||
|         return ResponseEntity.ok(newLoginCredentialsResource); | ||||
|         final var newCredentialsEntity = mapper.map(body, HsCredentialsEntity.class); | ||||
|         final var savedCredentialsEntity = credentialsRepo.save(newCredentialsEntity); | ||||
|         final var newCredentialsResource = mapper.map(savedCredentialsEntity, CredentialsResource.class); | ||||
|         return ResponseEntity.ok(newCredentialsResource); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     @Timed("app.credentials.credentials.deleteLoginCredentialsByUuid") | ||||
|     public ResponseEntity<Void> deleteLoginCredentialsByUuid(final String assumedRoles, final UUID loginCredentialsUuid) { | ||||
|     @Timed("app.credentials.credentials.deleteCredentialsByUuid") | ||||
|     public ResponseEntity<Void> deleteCredentialsByUuid(final String assumedRoles, final UUID credentialsUuid) { | ||||
|         context.assumeRoles(assumedRoles); | ||||
|         final var loginCredentialsEntity = em.getReference(HsCredentialsEntity.class, loginCredentialsUuid); | ||||
|         em.remove(loginCredentialsEntity); | ||||
|         final var credentialsEntity = em.getReference(HsCredentialsEntity.class, credentialsUuid); | ||||
|         em.remove(credentialsEntity); | ||||
|         return ResponseEntity.noContent().build(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     @Timed("app.credentials.credentials.patchLoginCredentials") | ||||
|     public ResponseEntity<LoginCredentialsResource> patchLoginCredentials( | ||||
|     @Timed("app.credentials.credentials.patchCredentials") | ||||
|     public ResponseEntity<CredentialsResource> patchCredentials( | ||||
|             final String assumedRoles, | ||||
|             final UUID loginCredentialsUuid, | ||||
|             final LoginCredentialsPatchResource body | ||||
|             final UUID credentialsUuid, | ||||
|             final CredentialsPatchResource body | ||||
|     ) { | ||||
|         context.assumeRoles(assumedRoles); | ||||
|  | ||||
|         final var current = loginCredentialsRepo.findByUuid(loginCredentialsUuid).orElseThrow(); | ||||
|         final var current = credentialsRepo.findByUuid(credentialsUuid).orElseThrow(); | ||||
|  | ||||
|         new HsCredentialsEntityPatcher(em, current).apply(body); | ||||
|  | ||||
|         final var saved = loginCredentialsRepo.save(current); | ||||
|         final var mapped = mapper.map(saved, LoginCredentialsResource.class); | ||||
|         final var saved = credentialsRepo.save(current); | ||||
|         final var mapped = mapper.map(saved, CredentialsResource.class); | ||||
|         return ResponseEntity.ok(mapped); | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -26,7 +26,7 @@ import static net.hostsharing.hsadminng.repr.Stringify.stringify; | ||||
| @AllArgsConstructor | ||||
| public class HsCredentialsEntity implements BaseEntity<HsCredentialsEntity>, Stringifyable { | ||||
|  | ||||
|     protected static Stringify<HsCredentialsEntity> stringify = stringify(HsCredentialsEntity.class, "loginCredentials") | ||||
|     protected static Stringify<HsCredentialsEntity> stringify = stringify(HsCredentialsEntity.class, "credentials") | ||||
|             .withProp(HsCredentialsEntity::isActive) | ||||
|             .withProp(HsCredentialsEntity::getEmailAddress) | ||||
|             .withProp(HsCredentialsEntity::getTwoFactorAuth) | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| package net.hostsharing.hsadminng.credentials; | ||||
|  | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.LoginContextResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.LoginCredentialsPatchResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.ContextResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.CredentialsPatchResource; | ||||
| import net.hostsharing.hsadminng.mapper.EntityPatcher; | ||||
| import net.hostsharing.hsadminng.mapper.OptionalFromJson; | ||||
|  | ||||
| @@ -11,7 +11,7 @@ import java.util.List; | ||||
| import java.util.Set; | ||||
| import java.util.stream.Collectors; | ||||
|  | ||||
| public class HsCredentialsEntityPatcher implements EntityPatcher<LoginCredentialsPatchResource> { | ||||
| public class HsCredentialsEntityPatcher implements EntityPatcher<CredentialsPatchResource> { | ||||
|  | ||||
|     private final EntityManager em; | ||||
|     private final HsCredentialsEntity entity; | ||||
| @@ -22,7 +22,7 @@ public class HsCredentialsEntityPatcher implements EntityPatcher<LoginCredential | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void apply(final LoginCredentialsPatchResource resource) { | ||||
|     public void apply(final CredentialsPatchResource resource) { | ||||
|         if ( resource.getActive() != null ) { | ||||
|                 entity.setActive(resource.getActive()); | ||||
|         } | ||||
| @@ -40,11 +40,11 @@ public class HsCredentialsEntityPatcher implements EntityPatcher<LoginCredential | ||||
|     } | ||||
|  | ||||
|     public void syncLoginContextEntities( | ||||
|             List<LoginContextResource> resources, | ||||
|             List<ContextResource> resources, | ||||
|             Set<HsCredentialsContextRealEntity> entities | ||||
|     ) { | ||||
|         final var resourceUuids = resources.stream() | ||||
|                 .map(LoginContextResource::getUuid) | ||||
|                 .map(ContextResource::getUuid) | ||||
|                 .collect(Collectors.toSet()); | ||||
|  | ||||
|         final var entityUuids = entities.stream() | ||||
| @@ -61,7 +61,7 @@ public class HsCredentialsEntityPatcher implements EntityPatcher<LoginCredential | ||||
|                     throw new EntityNotFoundException( | ||||
|                             HsCredentialsContextRealEntity.class.getName() + " with uuid " + resource.getUuid() + " not found."); | ||||
|                 } | ||||
|                 if (!existingContextEntity.getType().equals(resource.getType().name()) && | ||||
|                 if (!existingContextEntity.getType().equals(resource.getType()) && | ||||
|                     !existingContextEntity.getQualifier().equals(resource.getQualifier())) { | ||||
|                     // FIXME: i18n | ||||
|                     throw new EntityNotFoundException("existing " +  existingContextEntity + " does not match given resource " + resource); | ||||
|   | ||||
| @@ -17,7 +17,7 @@ paths: | ||||
|   # Credentials | ||||
|  | ||||
|   /api/hs/credentials/credentials: | ||||
|     $ref: "api-paths.yaml" | ||||
|     $ref: "credentials.yaml" | ||||
|  | ||||
|   /api/hs/credentials/credentials/{credentialsUuid}: | ||||
|     $ref: "credentials-with-uuid.yaml" | ||||
|   | ||||
| @@ -28,7 +28,7 @@ components: | ||||
|                 contexts: | ||||
|                     type: array | ||||
|                     items: | ||||
|                         $ref: '-context-schemas.yaml#/components/schemas/Context' | ||||
|                         $ref: 'context-schemas.yaml#/components/schemas/Context' | ||||
|             required: | ||||
|                 - uuid | ||||
|                 - active | ||||
| @@ -55,7 +55,7 @@ components: | ||||
|                 contexts: | ||||
|                     type: array | ||||
|                     items: | ||||
|                         $ref: '-context-schemas.yaml#/components/schemas/Context' | ||||
|                         $ref: 'context-schemas.yaml#/components/schemas/Context' | ||||
|             additionalProperties: false | ||||
|  | ||||
|         CredentialsInsert: | ||||
| @@ -83,7 +83,7 @@ components: | ||||
|                 contexts: | ||||
|                     type: array | ||||
|                     items: | ||||
|                         $ref: '-context-schemas.yaml#/components/schemas/Context' | ||||
|                         $ref: 'context-schemas.yaml#/components/schemas/Context' | ||||
|             required: | ||||
|                 - uuid | ||||
|                 - active | ||||
|   | ||||
| @@ -97,7 +97,7 @@ class HsCredentialsContextsControllerRestTest { | ||||
|  | ||||
|         // when | ||||
|         mockMvc.perform(MockMvcRequestBuilders | ||||
|                 .get("/api/login/contexts") | ||||
|                 .get("/api/hs/credentials/contexts") | ||||
|                 .header("Authorization", "Bearer superuser-alex@hostsharing.net") | ||||
|                 .accept(MediaType.APPLICATION_JSON)) | ||||
|                 .andDo(print()) | ||||
|   | ||||
| @@ -1,8 +1,7 @@ | ||||
| package net.hostsharing.hsadminng.credentials; | ||||
|  | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.LoginContextResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.LoginContextTypeResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.LoginCredentialsPatchResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.ContextResource; | ||||
| import net.hostsharing.hsadminng.credentials.generated.api.v1.model.CredentialsPatchResource; | ||||
| import net.hostsharing.hsadminng.rbac.test.PatchUnitTestBase; | ||||
| import org.junit.jupiter.api.BeforeEach; | ||||
| import org.junit.jupiter.api.TestInstance; | ||||
| @@ -24,7 +23,7 @@ import static org.mockito.Mockito.lenient; | ||||
| @TestInstance(PER_CLASS) | ||||
| @ExtendWith(MockitoExtension.class) | ||||
| class HsCredentialsEntityPatcherUnitTest extends PatchUnitTestBase< | ||||
|         LoginCredentialsPatchResource, | ||||
|         CredentialsPatchResource, | ||||
|         HsCredentialsEntity | ||||
|         > { | ||||
|  | ||||
| @@ -58,8 +57,8 @@ class HsCredentialsEntityPatcherUnitTest extends PatchUnitTestBase< | ||||
|             .qualifier("dev") | ||||
|             .build(); | ||||
|  | ||||
|     private LoginContextResource patchContextResource2; | ||||
|     private LoginContextResource patchContextResource3; | ||||
|     private ContextResource patchContextResource2; | ||||
|     private ContextResource patchContextResource3; | ||||
|  | ||||
|     // This is what em.find should return for CONTEXT_UUID_3 | ||||
|     private final HsCredentialsContextRealEntity newContextEntity3 = HsCredentialsContextRealEntity.builder() | ||||
| @@ -69,7 +68,7 @@ class HsCredentialsEntityPatcherUnitTest extends PatchUnitTestBase< | ||||
|             .build(); | ||||
|  | ||||
|     private final Set<HsCredentialsContextRealEntity> initialContextEntities = Set.of(initialContextEntity1, initialContextEntity2); | ||||
|     private List<LoginContextResource> patchedContextResources; | ||||
|     private List<ContextResource> patchedContextResources; | ||||
|     private final Set<HsCredentialsContextRealEntity> expectedPatchedContextEntities = Set.of(initialContextEntity2, newContextEntity3); | ||||
|  | ||||
|     @Mock | ||||
| @@ -82,14 +81,14 @@ class HsCredentialsEntityPatcherUnitTest extends PatchUnitTestBase< | ||||
|         lenient().when(em.find(eq(HsCredentialsContextRealEntity.class), eq(CONTEXT_UUID_2))).thenReturn(initialContextEntity2); | ||||
|         lenient().when(em.find(eq(HsCredentialsContextRealEntity.class), eq(CONTEXT_UUID_3))).thenReturn(newContextEntity3); | ||||
|  | ||||
|         patchContextResource2 = new LoginContextResource(); | ||||
|         patchContextResource2 = new ContextResource(); | ||||
|         patchContextResource2.setUuid(CONTEXT_UUID_2); | ||||
|         patchContextResource2.setType(LoginContextTypeResource.SSH); | ||||
|         patchContextResource2.setType("SSH"); | ||||
|         patchContextResource2.setQualifier("dev"); | ||||
|  | ||||
|         patchContextResource3 = new LoginContextResource(); | ||||
|         patchContextResource3 = new ContextResource(); | ||||
|         patchContextResource3.setUuid(CONTEXT_UUID_3); | ||||
|         patchContextResource3.setType(LoginContextTypeResource.HSADMIN); | ||||
|         patchContextResource3.setType("HSADMIN"); | ||||
|         patchContextResource3.setQualifier("test"); | ||||
|  | ||||
|         patchedContextResources = List.of(patchContextResource2, patchContextResource3); | ||||
| @@ -110,8 +109,8 @@ class HsCredentialsEntityPatcherUnitTest extends PatchUnitTestBase< | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     protected LoginCredentialsPatchResource newPatchResource() { | ||||
|         return new LoginCredentialsPatchResource(); | ||||
|     protected CredentialsPatchResource newPatchResource() { | ||||
|         return new CredentialsPatchResource(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
| @@ -124,38 +123,38 @@ class HsCredentialsEntityPatcherUnitTest extends PatchUnitTestBase< | ||||
|         return Stream.of( | ||||
|                 new SimpleProperty<>( | ||||
|                         "active", | ||||
|                         LoginCredentialsPatchResource::setActive, | ||||
|                         CredentialsPatchResource::setActive, | ||||
|                         PATCHED_ACTIVE, | ||||
|                         HsCredentialsEntity::setActive, | ||||
|                         PATCHED_ACTIVE) | ||||
|                     .notNullable(), | ||||
|                 new JsonNullableProperty<>( | ||||
|                         "emailAddress", | ||||
|                         LoginCredentialsPatchResource::setEmailAddress, | ||||
|                         CredentialsPatchResource::setEmailAddress, | ||||
|                         PATCHED_EMAIL_ADDRESS, | ||||
|                         HsCredentialsEntity::setEmailAddress, | ||||
|                         PATCHED_EMAIL_ADDRESS), | ||||
|                 new JsonNullableProperty<>( | ||||
|                         "twoFactorAuth", | ||||
|                         LoginCredentialsPatchResource::setTwoFactorAuth, | ||||
|                         CredentialsPatchResource::setTwoFactorAuth, | ||||
|                         PATCHED_TWO_FACTOR_AUTH, | ||||
|                         HsCredentialsEntity::setTwoFactorAuth, | ||||
|                         PATCHED_TWO_FACTOR_AUTH), | ||||
|                 new JsonNullableProperty<>( | ||||
|                         "smsNumber", | ||||
|                         LoginCredentialsPatchResource::setSmsNumber, | ||||
|                         CredentialsPatchResource::setSmsNumber, | ||||
|                         PATCHED_SMS_NUMBER, | ||||
|                         HsCredentialsEntity::setSmsNumber, | ||||
|                         PATCHED_SMS_NUMBER), | ||||
|                 new JsonNullableProperty<>( | ||||
|                         "phonePassword", | ||||
|                         LoginCredentialsPatchResource::setPhonePassword, | ||||
|                         CredentialsPatchResource::setPhonePassword, | ||||
|                         PATCHED_PHONE_PASSWORD, | ||||
|                         HsCredentialsEntity::setPhonePassword, | ||||
|                         PATCHED_PHONE_PASSWORD), | ||||
|                 new SimpleProperty<>( | ||||
|                         "contexts", | ||||
|                         LoginCredentialsPatchResource::setContexts, | ||||
|                         CredentialsPatchResource::setContexts, | ||||
|                         patchedContextResources, | ||||
|                         HsCredentialsEntity::setLoginContexts, | ||||
|                         expectedPatchedContextEntities) | ||||
|   | ||||
| @@ -42,7 +42,7 @@ class HsCredentialsRepositoryIntegrationTest extends ContextBasedTest { | ||||
|     HttpServletRequest request; | ||||
|  | ||||
|     @Autowired | ||||
|     private HsCredentialsRepository loginCredentialsRepository; | ||||
|     private HsCredentialsRepository credentialsRepository; | ||||
|  | ||||
|     @Autowired | ||||
|     private HsCredentialsContextRealRepository loginContextRealRepo; | ||||
| @@ -88,7 +88,7 @@ class HsCredentialsRepositoryIntegrationTest extends ContextBasedTest { | ||||
|     @Test | ||||
|     void shouldFindByUuidUsingTestData() { | ||||
|         // when | ||||
|         final var foundEntityOptional = loginCredentialsRepository.findByUuid(alexSubject.getUuid()); | ||||
|         final var foundEntityOptional = credentialsRepository.findByUuid(alexSubject.getUuid()); | ||||
|  | ||||
|         // then | ||||
|         assertThat(foundEntityOptional).isPresent() | ||||
| @@ -96,7 +96,7 @@ class HsCredentialsRepositoryIntegrationTest extends ContextBasedTest { | ||||
|     } | ||||
|  | ||||
|     @Test | ||||
|     void shouldSaveLoginCredentialsWithExistingContext() { | ||||
|     void shouldSaveCredentialsWithExistingContext() { | ||||
|         // given | ||||
|         final var existingContext = loginContextRealRepo.findByTypeAndQualifier("HSADMIN", "prod") | ||||
|                 .orElseThrow(); | ||||
| @@ -111,12 +111,12 @@ class HsCredentialsRepositoryIntegrationTest extends ContextBasedTest { | ||||
|                 .build(); | ||||
|  | ||||
|         // when | ||||
|         loginCredentialsRepository.save(newCredentials); | ||||
|         credentialsRepository.save(newCredentials); | ||||
|         em.flush(); | ||||
|         em.clear(); | ||||
|  | ||||
|         // then | ||||
|         final var foundEntityOptional = loginCredentialsRepository.findByUuid(drewSubject.getUuid()); | ||||
|         final var foundEntityOptional = credentialsRepository.findByUuid(drewSubject.getUuid()); | ||||
|         assertThat(foundEntityOptional).isPresent(); | ||||
|         final var foundEntity = foundEntityOptional.get(); | ||||
|         assertThat(foundEntity.getEmailAddress()).isEqualTo("drew.new@example.com"); | ||||
| @@ -129,7 +129,7 @@ class HsCredentialsRepositoryIntegrationTest extends ContextBasedTest { | ||||
|     } | ||||
|  | ||||
|     @Test | ||||
|     void shouldNotSaveLoginCredentialsWithNewContext() { | ||||
|     void shouldNotSaveCredentialsWithNewContext() { | ||||
|         // given | ||||
|         final var newContext = HsCredentialsContextRealEntity.builder() | ||||
|                 .type("MATRIX") | ||||
| @@ -146,7 +146,7 @@ class HsCredentialsRepositoryIntegrationTest extends ContextBasedTest { | ||||
|  | ||||
|         // when | ||||
|         final var exception = catchThrowable(() -> { | ||||
|             loginCredentialsRepository.save(newCredentials); | ||||
|             credentialsRepository.save(newCredentials); | ||||
|             em.flush(); | ||||
|         }); | ||||
|  | ||||
| @@ -155,7 +155,7 @@ class HsCredentialsRepositoryIntegrationTest extends ContextBasedTest { | ||||
|     } | ||||
|  | ||||
|     @Test | ||||
|     void shouldSaveNewLoginCredentialsWithoutContext() { | ||||
|     void shouldSaveNewCredentialsWithoutContext() { | ||||
|         // given | ||||
|         final var newCredentials = HsCredentialsEntity.builder() | ||||
|                 .subject(testUserSubject) | ||||
| @@ -167,12 +167,12 @@ class HsCredentialsRepositoryIntegrationTest extends ContextBasedTest { | ||||
|                 .build(); | ||||
|  | ||||
|         // when | ||||
|         loginCredentialsRepository.save(newCredentials); | ||||
|         credentialsRepository.save(newCredentials); | ||||
|         em.flush(); | ||||
|         em.clear(); | ||||
|  | ||||
|         // then | ||||
|         final var foundEntityOptional = loginCredentialsRepository.findByUuid(testUserSubject.getUuid()); | ||||
|         final var foundEntityOptional = credentialsRepository.findByUuid(testUserSubject.getUuid()); | ||||
|         assertThat(foundEntityOptional).isPresent(); | ||||
|         final var foundEntity = foundEntityOptional.get(); | ||||
|         assertThat(foundEntity.getEmailAddress()).isEqualTo("test.user.new@example.com"); | ||||
| @@ -183,21 +183,21 @@ class HsCredentialsRepositoryIntegrationTest extends ContextBasedTest { | ||||
|     } | ||||
|  | ||||
|     @Test | ||||
|     void shouldUpdateExistingLoginCredentials() { | ||||
|     void shouldUpdateExistingCredentials() { | ||||
|         // given | ||||
|         final var entityToUpdate = loginCredentialsRepository.findByUuid(alexSubject.getUuid()).orElseThrow(); | ||||
|         final var entityToUpdate = credentialsRepository.findByUuid(alexSubject.getUuid()).orElseThrow(); | ||||
|         final var initialVersion = entityToUpdate.getVersion(); | ||||
|  | ||||
|         // when | ||||
|         entityToUpdate.setActive(false); | ||||
|         entityToUpdate.setEmailAddress("updated.user1@example.com"); | ||||
|         final var savedEntity = loginCredentialsRepository.save(entityToUpdate); | ||||
|         final var savedEntity = credentialsRepository.save(entityToUpdate); | ||||
|         em.flush(); | ||||
|         em.clear(); | ||||
|  | ||||
|         // then | ||||
|         assertThat(savedEntity.getVersion()).isGreaterThan(initialVersion); | ||||
|         final var updatedEntityOptional = loginCredentialsRepository.findByUuid(alexSubject.getUuid()); | ||||
|         final var updatedEntityOptional = credentialsRepository.findByUuid(alexSubject.getUuid()); | ||||
|         assertThat(updatedEntityOptional).isPresent(); | ||||
|         final var updatedEntity = updatedEntityOptional.get(); | ||||
|         assertThat(updatedEntity.isActive()).isFalse(); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user