Skip to content
Snippets Groups Projects
Commit cfc59841 authored by OZGCloud's avatar OZGCloud
Browse files

clean up

parent fb3ecdce
No related branches found
No related tags found
No related merge requests found
Showing
with 498 additions and 573 deletions
......@@ -66,7 +66,7 @@ pipeline {
FAILED_STAGE=env.STAGE_NAME
}
configFileProvider([configFile(fileId: 'maven-settings', variable: 'MAVEN_SETTINGS')]) {
sh 'mvn -s $MAVEN_SETTINGS clean install -DskipTests -Dmaven.wagon.http.retryHandler.count=3'
sh 'mvn -s $MAVEN_SETTINGS clean install -Dmaven.wagon.http.retryHandler.count=3'
script {
try {
......
......@@ -12,5 +12,4 @@ public class Constants {
public static final String ETR_DEPLOYMENT_NAME = "elster-transfer";
public static final String MUK_USER_SECRET_NAME = "muk-user-secret";
}
......@@ -35,7 +35,8 @@ public class OzgCloudElsterTransferUserReconciler implements Reconciler<OzgCloud
.withReschedule(ElsterTransferOperatorConfiguration.RECONCILER_RETRY_SECONDS)
.build();
} catch (Exception e) {
LOG.warn("{} could not reconcile in namespace {}: {}.", elsterTransferUser.getMetadata().getName(), elsterTransferUser.getMetadata().getNamespace(), e);
LOG.warn("{} could not reconcile in namespace {}: {}.", elsterTransferUser.getMetadata().getName(),
elsterTransferUser.getMetadata().getNamespace(), e);
return UserUpdateControlBuilder.fromResource(elsterTransferUser)
.withStatus(OzgCloudCustomResourceStatus.ERROR)
.withMessage(e.getMessage())
......@@ -44,7 +45,6 @@ public class OzgCloudElsterTransferUserReconciler implements Reconciler<OzgCloud
}
}
@Override
public DeleteControl cleanup(OzgCloudElsterTransferUser user, Context<OzgCloudElsterTransferUser> context) {
LOG.info("{} cleanup...", user.getMetadata().getName());
......@@ -56,7 +56,7 @@ public class OzgCloudElsterTransferUserReconciler implements Reconciler<OzgCloud
}
try {
service.deleteUserAndRestartDeploymentIfNotKeepUserAndUserExists(user);
service.delete(user);
return DeleteControl.defaultDelete();
} catch (Exception e) {
LOG.warn(namespace + " could not delete.", e);
......
......@@ -20,7 +20,6 @@ public class OzgCloudElsterTransferUserRemoteService {
private final KubernetesClient client;
public ConfigMap getConfigMap(String configmapNamespace, String configMapName) {
return client.configMaps().inNamespace(configmapNamespace).withName(configMapName).get();
}
......
......@@ -16,7 +16,6 @@ import com.github.mustachejava.Mustache;
import com.github.mustachejava.MustacheFactory;
import io.fabric8.kubernetes.api.model.ConfigMap;
import io.micrometer.common.util.StringUtils;
import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2;
......@@ -39,7 +38,7 @@ public class OzgCloudElsterTransferUserService {
}
}
public void deleteUserAndRestartDeploymentIfNotKeepUserAndUserExists(OzgCloudElsterTransferUser user) {
public void delete(OzgCloudElsterTransferUser user) {
String namespace = user.getMetadata().getNamespace();
if (!userExists(namespace, Constants.ETR_NAMESPACE, Constants.ELSTER_TRANSFER_USER_LOGIN_KEY)) {
LOG.info("User not exists");
......
package de.ozgcloud.operator.elstertransfer.user;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......
......@@ -66,7 +66,7 @@ class OzgCloudElsterTransferUserReconcilerTest {
void shouldCallServiceDelete() {
reconciler.cleanup(user, null);
verify(service).deleteUserAndRestartDeploymentIfNotKeepUserAndUserExists(user);
verify(service).delete(user);
}
@Test
......@@ -79,7 +79,7 @@ class OzgCloudElsterTransferUserReconcilerTest {
@Test
void shouldRescheduleOnError() {
doThrow(RuntimeException.class).when(service)
.deleteUserAndRestartDeploymentIfNotKeepUserAndUserExists(user);
.delete(user);
var control = reconciler.cleanup(user, null);
......
......@@ -42,541 +42,472 @@ class OzgCloudElsterTransferUserServiceTest {
private static final String configMapNamespace = Constants.ETR_NAMESPACE;
private static final String usersKey = Constants.USERS_KEY;
/*@Nested
class TestUpdateConfigMapAndRestartDeploymentAndCreateSecret {
@BeforeEach
void setUp() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(remoteService.getConfigMap(anyString(), anyString())).thenReturn(configMap);
when(users.getUsersList()).thenReturn(OzgCloudElsterTransferConfigMapUserListFactory.create());
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
}
@Test
void shouldCallupdateConfigMapAndGenerateUserPassword() {
service.updateConfigMapAndRestartDeploymentAndCreateSecret(namespace);
verify(service).updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName);
}
@Test
void shouldCallRestartDeployment() {
service.updateConfigMapAndRestartDeploymentAndCreateSecret(namespace);
verify(service).restartDeployment(configMapNamespace, deploymentName);
}
@Test
void shouldCallCreateOrUpdateSecret() {
String psw = "password";
when(service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName)).thenReturn(psw);
service.updateConfigMapAndRestartDeploymentAndCreateSecret(namespace);
verify(service).createOrUpdateSecret(namespace, psw, secretName);
}
@Test
void shouldNotCallRestartDeployment() {
when(service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName)).thenReturn("");
service.updateConfigMapAndRestartDeploymentAndCreateSecret(namespace);
verify(service, never()).restartDeployment(any(), any());
}
@Test
void shouldNotCallCreateOrUpdateSecret() {
when(service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName)).thenReturn("");
service.updateConfigMapAndRestartDeploymentAndCreateSecret(namespace);
verify(service, never()).createOrUpdateSecret(any(), any(), any());
}
}
@Nested
class TestDeleteUserAndRestartDeploymentIfNotKeepUserAndUserExists {
@Test
void keepAfterDeleteShouldReturnFalseAsDefault() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(remoteService.getConfigMap(anyString(), anyString())).thenReturn(configMap);
OzgCloudElsterTransferUser user = OzgCloudElsterTransferUserTestFactory.create();
service.deleteUserAndRestartDeploymentIfNotKeepUserAndUserExists(user);
assertFalse(user.getSpec().isKeepAfterDelete());
}
@Test
void shouldCallUserExists() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(remoteService.getConfigMap(anyString(), anyString())).thenReturn(configMap);
service.deleteUserAndRestartDeploymentIfNotKeepUserAndUserExists(OzgCloudElsterTransferUserTestFactory.create());
verify(service).userExists(namespace, configMapNamespace, configMapName);
}
@Test
void shouldNotCallUserExists() {
OzgCloudElsterTransferUser user = OzgCloudElsterTransferUserTestFactory.create();
user.getSpec().setKeepAfterDelete(true);
service.deleteUserAndRestartDeploymentIfNotKeepUserAndUserExists(user);
verify(service, never()).userExists(any(), any(), any());
}
@Test
void shouldCallDeleteUser() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(remoteService.getConfigMap(anyString(), anyString())).thenReturn(configMap);
when(users.getUsersList()).thenReturn(OzgCloudElsterTransferConfigMapUserListFactory.create());
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
OzgCloudElsterTransferUser user = OzgCloudElsterTransferUserTestFactory.create();
when(service.userExists(namespace, configMapNamespace, configMapName)).thenReturn(true);
service.deleteUserAndRestartDeploymentIfNotKeepUserAndUserExists(user);
verify(service).deleteUser(user.getMetadata().getNamespace(), configMapName);
}
@Test
void shouldNotCallDeleteUserOrRestartDeploymentIfKeepAfterDelete() {
OzgCloudElsterTransferUser user = OzgCloudElsterTransferUserTestFactory.create();
user.getSpec().setKeepAfterDelete(true);
service.deleteUserAndRestartDeploymentIfNotKeepUserAndUserExists(user);
verify(service, never()).deleteUser(any(), any());
verify(service, never()).restartDeployment(any(), any());
}
@Test
void shouldNotCallDeleteUserOrRestartDeploymentIfUserNotExists() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(remoteService.getConfigMap(anyString(), anyString())).thenReturn(configMap);
OzgCloudElsterTransferUser user = OzgCloudElsterTransferUserTestFactory.create();
when(service.userExists(namespace, configMapNamespace, configMapName)).thenReturn(false);
service.deleteUserAndRestartDeploymentIfNotKeepUserAndUserExists(user);
verify(service, never()).deleteUser(any(), any());
verify(service, never()).restartDeployment(any(), any());
}
@Test
void shouldCallRestartDeployment() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(remoteService.getConfigMap(anyString(), anyString())).thenReturn(configMap);
when(users.getUsersList()).thenReturn(OzgCloudElsterTransferConfigMapUserListFactory.create());
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
OzgCloudElsterTransferUser user = OzgCloudElsterTransferUserTestFactory.create();
when(service.userExists(namespace, configMapNamespace, configMapName)).thenReturn(true);
service.deleteUserAndRestartDeploymentIfNotKeepUserAndUserExists(user);
verify(service).restartDeployment(configMapNamespace, deploymentName);
}
}
@Nested
@DisplayName("updateConfigMapAndGenerateUserPassword")
class TestupdateConfigMapAndGenerateUserPassword {
@BeforeEach
public void setUp() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(remoteService.getConfigMap(anyString(), anyString())).thenReturn(configMap);
}
@Test
void shouldNotCallCreateConfigMap() {
when(remoteService.getConfigMap(configMapNamespace, configMapName)).thenReturn(configMap);
service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName);
verify(remoteService, never()).createConfigMap(any(), any());
}
@Test
void shouldCallGetConfigMap() {
service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName);
verify(remoteService).getConfigMap(configMapNamespace, configMapName);
}
@Test
void shouldReturnGeneratedPassword() {
String userPassword = service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName);
assertNotNull(userPassword);
}
@Test
void shouldCallUpdateConfigMap() {
service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName);
verify(service).updateConfigMap(eq(configMapNamespace), eq(configMapName), eq(configMap), anyString());
}
@Test
void shouldNotCallUpdateConfigMap() {
when(service.generatePassword()).thenReturn("psw");
when(service.addUserToUserYaml(namespace, configMap, "psw")).thenReturn("");
service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName);
verify(service, never()).updateConfigMap(any(), any(), any(), anyString());
}
@Test
void shouldSetUserPSEmptyWWhenUserYamlEmpty() {
when(service.generatePassword()).thenReturn("psw");
when(service.addUserToUserYaml(namespace, configMap, "psw")).thenReturn("");
String userPassword = service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName);
assertTrue(userPassword.isEmpty());
}
@Test
void shouldSetUserPSWWhenUserYamlNotEmpty() {
when(service.generatePassword()).thenReturn("psw");
when(service.addUserToUserYaml(namespace, configMap, "psw")).thenReturn("someYaml");
String userPassword = service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName);
assertFalse(userPassword.isEmpty());
}
@Test
void shouldCalladdUserToUserYaml() {
service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace, configMapName);
verify(service).addUserToUserYaml(eq(namespace), eq(configMap), anyString());
}
}
@Nested
class addUserToUserYamlTests {
@Test
void shouldCallgetUsersFromConfigMap() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
service.addUserToUserYaml(namespace, configMap, "password");
verify(service).getUsersFromConfigMap(configMap);
}
@Test
void shouldNotCallgetUsersFromConfigMap() {
service.addUserToUserYaml(namespace, null, "password");
verify(service, never()).getUsersFromConfigMap(any());
}
@Test
void shouldCallUserExistsInList() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
when(users.getUsersList()).thenReturn(OzgCloudElsterTransferConfigMapUserListFactory.create());
service.addUserToUserYaml(namespace, configMap, "password");
verify(service).userExistsInList(users, namespace);
}
@Test
void shouldCallAddNewUserToListWhenUserNotExists() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
service.addUserToUserYaml(namespace, configMap, "password");
verify(service).addNewUserToList(eq(users), eq(namespace), anyString());
}
@Test
void shouldCallconstructYamlEntries() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
service.addUserToUserYaml(namespace, configMap, "password");
verify(service).constructYamlEntries(users);
}
@Test
void TestUserYamlShouldNotBeEmpty() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
String userYaml = service.addUserToUserYaml(namespace, configMap, "password");
assertFalse(userYaml.isEmpty());
}
@Test
void TestUserYamlShouldBeEmpty() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
String userYaml = service.addUserToUserYaml(namespace, configMap, "password");
assertTrue(userYaml.isEmpty());
}
}
@Nested
class UpdateConfigMapTests {
@Test
void shouldCallCreateConfigMapIfConfigMapNotExists() {
service.updateConfigMap(configMapName, null, "mockedUsersYaml");
verify(remoteService).createConfigMap(configMapNamespace, configMapName);
}
@Test
void shouldNotCallCreateConfigMapIfConfigMapExists() {
service.updateConfigMap(configMapName, configMap, "mockedUsersYaml");
verify(remoteService, never()).createConfigMap(any(), any());
}
@Test
void shouldCallUpdateConfigMapData() {
service.updateConfigMap(configMapName, configMap, "mockedUsersYaml");
verify(remoteService).updateConfigMapData(configMap, usersKey, "mockedUsersYaml");
}
}
@Nested
class RestartDeploymentTests {
@Test
void shouldCallCreateConfigMap() {
service.restartDeployment(configMapNamespace, deploymentName);
verify(remoteService).restartDeployment(configMapNamespace, deploymentName);
}
}
@Nested
class UserExistsTests {
@BeforeEach
public void setUp() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(remoteService.getConfigMap(configMapNamespace, configMapName)).thenReturn(configMap);
}
@Test
void shouldCallGetConfigMap() {
service.userExists(namespace, configMapNamespace, configMapName);
verify(remoteService).getConfigMap(configMapNamespace, configMapName);
}
@Test
void shouldReturnUserExistsTrueIfUserExists() {
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
when(users.existsUser(namespace)).thenReturn(true);
boolean userExists = service.userExists(namespace, configMapNamespace, configMapName);
assertTrue(userExists);
}
@Test
void shouldReturnUserExistsTrueIfUserNotExists() {
boolean userExists = service.userExists(namespace, configMapNamespace, configMapName);
assertFalse(userExists);
}
@Test
void shouldCallgetUsersFromConfigMap() {
service.userExists(namespace, configMapNamespace, configMapName);
verify(service).getUsersFromConfigMap(configMap);
}
@Test
void shouldCallExistsUser() {
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
service.userExists(namespace, configMapNamespace, configMapName);
verify(users).existsUser(namespace);
}
}
@Nested
class DeleteUserTests {
@BeforeEach
public void setUp() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
when(remoteService.getConfigMap(configMapNamespace, configMapName)).thenReturn(configMap);
}
@Test
void shouldCallGetConfigMap() {
service.deleteUser(namespace, configMapName);
verify(remoteService).getConfigMap(configMapNamespace, configMapName);
}
@Test
void shouldCallGetUsersFromConfigMap() {
service.deleteUser(namespace, configMapName);
verify(service).getUsersFromConfigMap(configMap);
}
@Test
void shouldCallremoveDeleted() {
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
service.deleteUser(namespace, configMapName);
verify(users).removeDeleted(namespace);
}
@Test
void ShouldCallConstructYamlEntries() {
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
service.deleteUser(namespace, configMapName);
verify(service).constructYamlEntries(users);
}
@Test
void ShouldCallUpdateConfigMapData() {
when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
when(service.constructYamlEntries(users)).thenReturn("updatedUsersYaml");
service.deleteUser(namespace, configMapName);
verify(remoteService).updateConfigMapData(configMap, usersKey, "updatedUsersYaml");
}
}
@Nested
class CreateOrUpdateSecretTests {
@Test
void shouldCallCreateOrUpdateSecret() {
service.createOrUpdateSecret(namespace, "psw", secretName);
verify(remoteService).createOrUpdateSecret(namespace, "psw", secretName);
}
}
@Nested
class GetUsersFromConfigMapTests {
@BeforeEach
public void setUp() {
configMap = OzgCloudElsterTransferConfigMapFactory.create();
}
@Test
void shouldReturnObjectConfigMapUserList() {
OzgCloudElsterTransferConfigMapUserList result = service.getUsersFromConfigMap(configMap);
assertNotNull(result);
assertInstanceOf(OzgCloudElsterTransferConfigMapUserList.class, result);
}
@Test
void shouldReturnConfigMapUserListWithContent() {
OzgCloudElsterTransferConfigMapUserList result = service.getUsersFromConfigMap(configMap);
List<Map<String, Object>> usersList = result.getUsersList();
assertThat(usersList).hasSize(1);
}
}
@Nested
class UserExistsInListTests {
@Test
void shouldCallExistsUser() {
service.userExistsInList(users, namespace);
verify(users).existsUser(namespace);
}
}
@Nested
class AddNewUserToListTests {
@Test
void shouldCallAddUserToList() {
service.addNewUserToList(users, namespace, "pswHash");
verify(users).addUserToList(namespace, "pswHash", "USER");
}
}
@Nested
class ConstructYamlEntriesTests {
@Test
void shouldHaveResultWithCorrectContentStart() {
String result = service.constructYamlEntries(users);
assertTrue(result.startsWith("fileFormat: 1\nusers:\n"));
}
@Test
void shouldHaveResultWithCorrectContent() {
when(users.getUsersList()).thenReturn(OzgCloudElsterTransferConfigMapUserListFactory.create());
String expectedYaml = "fileFormat: 1\n" +
"users:\n" +
" - { login: \"user1\", rolle: \"USER\", credentials: { passwortHash: \"$2a$12$cqKZMcwTUe/tju7PIFGhperWdV2Xa9o4fVw5eClbzatRhvxZphE1a\" }, gruppe: \"user1\" }\n";
String result = service.constructYamlEntries(users);
assertThat(expectedYaml).isEqualTo(result);
}
}
@Nested
class GetYamlForUserTests {
@Test
void shouldReturnExpectedYamlForUser() {
Map<String, Object> userEntry = new HashMap<>();
userEntry.put("login", "user1");
userEntry.put("rolle", "USER");
userEntry.put("gruppe", "user1");
Map<String, String> credentials = new HashMap<>();
credentials.put("passwortHash", "$2a$12$cqKZMcwTUe/tju7PIFGhperWdV2Xa9o4fVw5eClbzatRhvxZphE1a");
userEntry.put("credentials", credentials);
String expectedYaml = " - { login: \"user1\", rolle: \"USER\", credentials: { passwortHash: \"$2a$12$cqKZMcwTUe/tju7PIFGhperWdV2Xa9o4fVw5eClbzatRhvxZphE1a\" }, gruppe: \"user1\" }\n";
String result = service.getYamlForUser(userEntry);
assertThat(expectedYaml).isEqualTo(result);
}
}*/
/*
* @Nested class TestUpdateConfigMapAndRestartDeploymentAndCreateSecret {
*
* @BeforeEach void setUp() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(remoteService.getConfigMap(anyString(),
* anyString())).thenReturn(configMap); when(users.getUsersList()).thenReturn(
* OzgCloudElsterTransferConfigMapUserListFactory.create());
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users); }
*
* @Test void shouldCallupdateConfigMapAndGenerateUserPassword() {
* service.updateConfigMapAndRestartDeploymentAndCreateSecret(namespace);
*
* verify(service).updateConfigMapAndGenerateUserPassword(namespace,
* configMapNamespace, configMapName); }
*
* @Test void shouldCallRestartDeployment() {
* service.updateConfigMapAndRestartDeploymentAndCreateSecret(namespace);
*
* verify(service).restartDeployment(configMapNamespace, deploymentName); }
*
* @Test void shouldCallCreateOrUpdateSecret() { String psw = "password";
* when(service.updateConfigMapAndGenerateUserPassword(namespace,
* configMapNamespace, configMapName)).thenReturn(psw);
*
* service.updateConfigMapAndRestartDeploymentAndCreateSecret(namespace);
*
* verify(service).createOrUpdateSecret(namespace, psw, secretName); }
*
* @Test void shouldNotCallRestartDeployment() {
* when(service.updateConfigMapAndGenerateUserPassword(namespace,
* configMapNamespace, configMapName)).thenReturn("");
*
* service.updateConfigMapAndRestartDeploymentAndCreateSecret(namespace);
*
* verify(service, never()).restartDeployment(any(), any()); }
*
* @Test void shouldNotCallCreateOrUpdateSecret() {
* when(service.updateConfigMapAndGenerateUserPassword(namespace,
* configMapNamespace, configMapName)).thenReturn("");
*
* service.updateConfigMapAndRestartDeploymentAndCreateSecret(namespace);
*
* verify(service, never()).createOrUpdateSecret(any(), any(), any()); }
*
* }
*
* @Nested class Testdelete {
*
* @Test void keepAfterDeleteShouldReturnFalseAsDefault() {
*
* configMap = OzgCloudElsterTransferConfigMapFactory.create();
* when(remoteService.getConfigMap(anyString(),
* anyString())).thenReturn(configMap); OzgCloudElsterTransferUser user =
* OzgCloudElsterTransferUserTestFactory.create();
*
* service.delete(user);
*
* assertFalse(user.getSpec().isKeepAfterDelete());
*
* }
*
* @Test void shouldCallUserExists() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(remoteService.getConfigMap(anyString(),
* anyString())).thenReturn(configMap);
*
* service.delete(OzgCloudElsterTransferUserTestFactory.create());
*
* verify(service).userExists(namespace, configMapNamespace, configMapName);
*
* }
*
* @Test void shouldNotCallUserExists() {
*
* OzgCloudElsterTransferUser user =
* OzgCloudElsterTransferUserTestFactory.create();
* user.getSpec().setKeepAfterDelete(true);
*
* service.delete(user);
*
* verify(service, never()).userExists(any(), any(), any());
*
* }
*
* @Test void shouldCallDeleteUser() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(remoteService.getConfigMap(anyString(),
* anyString())).thenReturn(configMap); when(users.getUsersList()).thenReturn(
* OzgCloudElsterTransferConfigMapUserListFactory.create());
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
* OzgCloudElsterTransferUser user =
* OzgCloudElsterTransferUserTestFactory.create();
* when(service.userExists(namespace, configMapNamespace,
* configMapName)).thenReturn(true);
*
* service.delete(user);
*
* verify(service).deleteUser(user.getMetadata().getNamespace(), configMapName);
* }
*
* @Test void shouldNotCallDeleteUserOrRestartDeploymentIfKeepAfterDelete() {
* OzgCloudElsterTransferUser user =
* OzgCloudElsterTransferUserTestFactory.create();
* user.getSpec().setKeepAfterDelete(true);
*
* service.delete(user);
*
* verify(service, never()).deleteUser(any(), any()); verify(service,
* never()).restartDeployment(any(), any()); }
*
* @Test void shouldNotCallDeleteUserOrRestartDeploymentIfUserNotExists() {
* configMap = OzgCloudElsterTransferConfigMapFactory.create();
* when(remoteService.getConfigMap(anyString(),
* anyString())).thenReturn(configMap); OzgCloudElsterTransferUser user =
* OzgCloudElsterTransferUserTestFactory.create();
* when(service.userExists(namespace, configMapNamespace,
* configMapName)).thenReturn(false);
*
* service.delete(user);
*
* verify(service, never()).deleteUser(any(), any()); verify(service,
* never()).restartDeployment(any(), any()); }
*
* @Test void shouldCallRestartDeployment() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(remoteService.getConfigMap(anyString(),
* anyString())).thenReturn(configMap); when(users.getUsersList()).thenReturn(
* OzgCloudElsterTransferConfigMapUserListFactory.create());
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
* OzgCloudElsterTransferUser user =
* OzgCloudElsterTransferUserTestFactory.create();
* when(service.userExists(namespace, configMapNamespace,
* configMapName)).thenReturn(true);
*
* service.delete(user);
*
* verify(service).restartDeployment(configMapNamespace, deploymentName); } }
*
* @Nested
*
* @DisplayName("updateConfigMapAndGenerateUserPassword") class
* TestupdateConfigMapAndGenerateUserPassword {
*
* @BeforeEach public void setUp() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(remoteService.getConfigMap(anyString(),
* anyString())).thenReturn(configMap); }
*
* @Test void shouldNotCallCreateConfigMap() {
* when(remoteService.getConfigMap(configMapNamespace,
* configMapName)).thenReturn(configMap);
*
* service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace,
* configMapName);
*
* verify(remoteService, never()).createConfigMap(any(), any()); }
*
* @Test void shouldCallGetConfigMap() {
* service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace,
* configMapName);
*
* verify(remoteService).getConfigMap(configMapNamespace, configMapName); }
*
* @Test void shouldReturnGeneratedPassword() { String userPassword =
* service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace,
* configMapName);
*
* assertNotNull(userPassword); }
*
* @Test void shouldCallUpdateConfigMap() {
* service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace,
* configMapName);
*
* verify(service).updateConfigMap(eq(configMapNamespace), eq(configMapName),
* eq(configMap), anyString()); }
*
* @Test void shouldNotCallUpdateConfigMap() {
* when(service.generatePassword()).thenReturn("psw");
* when(service.addUserToUserYaml(namespace, configMap, "psw")).thenReturn("");
*
* service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace,
* configMapName);
*
* verify(service, never()).updateConfigMap(any(), any(), any(), anyString()); }
*
* @Test void shouldSetUserPSEmptyWWhenUserYamlEmpty() {
* when(service.generatePassword()).thenReturn("psw");
* when(service.addUserToUserYaml(namespace, configMap, "psw")).thenReturn("");
*
* String userPassword =
* service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace,
* configMapName);
*
* assertTrue(userPassword.isEmpty()); }
*
* @Test void shouldSetUserPSWWhenUserYamlNotEmpty() {
* when(service.generatePassword()).thenReturn("psw");
* when(service.addUserToUserYaml(namespace, configMap,
* "psw")).thenReturn("someYaml");
*
* String userPassword =
* service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace,
* configMapName);
*
* assertFalse(userPassword.isEmpty()); }
*
* @Test void shouldCalladdUserToUserYaml() {
* service.updateConfigMapAndGenerateUserPassword(namespace, configMapNamespace,
* configMapName);
*
* verify(service).addUserToUserYaml(eq(namespace), eq(configMap), anyString());
* }
*
* }
*
* @Nested class addUserToUserYamlTests {
*
* @Test void shouldCallgetUsersFromConfigMap() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
*
* service.addUserToUserYaml(namespace, configMap, "password");
*
* verify(service).getUsersFromConfigMap(configMap); }
*
* @Test void shouldNotCallgetUsersFromConfigMap() {
* service.addUserToUserYaml(namespace, null, "password");
*
* verify(service, never()).getUsersFromConfigMap(any()); }
*
* @Test void shouldCallUserExistsInList() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
* when(users.getUsersList()).thenReturn(
* OzgCloudElsterTransferConfigMapUserListFactory.create());
*
* service.addUserToUserYaml(namespace, configMap, "password");
*
* verify(service).userExistsInList(users, namespace); }
*
* @Test void shouldCallAddNewUserToListWhenUserNotExists() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
*
* service.addUserToUserYaml(namespace, configMap, "password");
*
* verify(service).addNewUserToList(eq(users), eq(namespace), anyString()); }
*
* @Test void shouldCallconstructYamlEntries() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
*
* service.addUserToUserYaml(namespace, configMap, "password");
*
* verify(service).constructYamlEntries(users); }
*
* @Test void TestUserYamlShouldNotBeEmpty() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
*
*
* String userYaml = service.addUserToUserYaml(namespace, configMap,
* "password");
*
* assertFalse(userYaml.isEmpty()); }
*
* @Test void TestUserYamlShouldBeEmpty() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
*
*
* String userYaml = service.addUserToUserYaml(namespace, configMap,
* "password");
*
* assertTrue(userYaml.isEmpty()); } }
*
* @Nested class UpdateConfigMapTests {
*
* @Test void shouldCallCreateConfigMapIfConfigMapNotExists() {
* service.updateConfigMap(configMapName, null, "mockedUsersYaml");
*
* verify(remoteService).createConfigMap(configMapNamespace, configMapName); }
*
* @Test void shouldNotCallCreateConfigMapIfConfigMapExists() {
* service.updateConfigMap(configMapName, configMap, "mockedUsersYaml");
*
* verify(remoteService, never()).createConfigMap(any(), any()); }
*
* @Test void shouldCallUpdateConfigMapData() {
* service.updateConfigMap(configMapName, configMap, "mockedUsersYaml");
*
* verify(remoteService).updateConfigMapData(configMap, usersKey,
* "mockedUsersYaml"); }
*
* }
*
* @Nested class RestartDeploymentTests {
*
* @Test void shouldCallCreateConfigMap() {
* service.restartDeployment(configMapNamespace, deploymentName);
*
* verify(remoteService).restartDeployment(configMapNamespace, deploymentName);
* } }
*
* @Nested class UserExistsTests {
*
* @BeforeEach public void setUp() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(remoteService.getConfigMap(configMapNamespace,
* configMapName)).thenReturn(configMap); }
*
* @Test void shouldCallGetConfigMap() { service.userExists(namespace,
* configMapNamespace, configMapName);
*
* verify(remoteService).getConfigMap(configMapNamespace, configMapName); }
*
* @Test void shouldReturnUserExistsTrueIfUserExists() {
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
* when(users.existsUser(namespace)).thenReturn(true);
*
* boolean userExists = service.userExists(namespace, configMapNamespace,
* configMapName);
*
* assertTrue(userExists); }
*
* @Test void shouldReturnUserExistsTrueIfUserNotExists() { boolean userExists =
* service.userExists(namespace, configMapNamespace, configMapName);
*
* assertFalse(userExists); }
*
* @Test void shouldCallgetUsersFromConfigMap() { service.userExists(namespace,
* configMapNamespace, configMapName);
*
* verify(service).getUsersFromConfigMap(configMap); }
*
* @Test void shouldCallExistsUser() {
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
*
* service.userExists(namespace, configMapNamespace, configMapName);
*
* verify(users).existsUser(namespace); }
*
* }
*
* @Nested class DeleteUserTests {
*
* @BeforeEach public void setUp() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create();
* when(remoteService.getConfigMap(configMapNamespace,
* configMapName)).thenReturn(configMap); }
*
* @Test void shouldCallGetConfigMap() { service.deleteUser(namespace,
* configMapName);
*
* verify(remoteService).getConfigMap(configMapNamespace, configMapName); }
*
* @Test void shouldCallGetUsersFromConfigMap() { service.deleteUser(namespace,
* configMapName);
*
* verify(service).getUsersFromConfigMap(configMap); }
*
* @Test void shouldCallremoveDeleted() {
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
*
* service.deleteUser(namespace, configMapName);
*
* verify(users).removeDeleted(namespace); }
*
* @Test void ShouldCallConstructYamlEntries() {
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
*
* service.deleteUser(namespace, configMapName);
*
* verify(service).constructYamlEntries(users); }
*
* @Test void ShouldCallUpdateConfigMapData() {
* when(service.getUsersFromConfigMap(configMap)).thenReturn(users);
* when(service.constructYamlEntries(users)).thenReturn("updatedUsersYaml");
*
* service.deleteUser(namespace, configMapName);
*
* verify(remoteService).updateConfigMapData(configMap, usersKey,
* "updatedUsersYaml"); } }
*
* @Nested class CreateOrUpdateSecretTests {
*
* @Test void shouldCallCreateOrUpdateSecret() {
* service.createOrUpdateSecret(namespace, "psw", secretName);
*
* verify(remoteService).createOrUpdateSecret(namespace, "psw", secretName); }
*
* }
*
* @Nested class GetUsersFromConfigMapTests {
*
* @BeforeEach public void setUp() { configMap =
* OzgCloudElsterTransferConfigMapFactory.create(); }
*
* @Test void shouldReturnObjectConfigMapUserList() {
* OzgCloudElsterTransferConfigMapUserList result =
* service.getUsersFromConfigMap(configMap);
*
* assertNotNull(result);
* assertInstanceOf(OzgCloudElsterTransferConfigMapUserList.class, result); }
*
* @Test void shouldReturnConfigMapUserListWithContent() {
* OzgCloudElsterTransferConfigMapUserList result =
* service.getUsersFromConfigMap(configMap);
*
* List<Map<String, Object>> usersList = result.getUsersList();
*
* assertThat(usersList).hasSize(1); }
*
* }
*
* @Nested class UserExistsInListTests {
*
* @Test void shouldCallExistsUser() { service.userExistsInList(users,
* namespace);
*
* verify(users).existsUser(namespace); }
*
* }
*
* @Nested class AddNewUserToListTests {
*
* @Test void shouldCallAddUserToList() { service.addNewUserToList(users,
* namespace, "pswHash");
*
* verify(users).addUserToList(namespace, "pswHash", "USER"); }
*
* }
*
* @Nested class ConstructYamlEntriesTests {
*
* @Test void shouldHaveResultWithCorrectContentStart() { String result =
* service.constructYamlEntries(users);
*
* assertTrue(result.startsWith("fileFormat: 1\nusers:\n")); }
*
* @Test void shouldHaveResultWithCorrectContent() {
* when(users.getUsersList()).thenReturn(
* OzgCloudElsterTransferConfigMapUserListFactory.create()); String expectedYaml
* = "fileFormat: 1\n" + "users:\n" +
* " - { login: \"user1\", rolle: \"USER\", credentials: { passwortHash: \"$2a$12$cqKZMcwTUe/tju7PIFGhperWdV2Xa9o4fVw5eClbzatRhvxZphE1a\" }, gruppe: \"user1\" }\n"
* ;
*
* String result = service.constructYamlEntries(users);
*
* assertThat(expectedYaml).isEqualTo(result); } }
*
* @Nested class GetYamlForUserTests {
*
* @Test void shouldReturnExpectedYamlForUser() { Map<String, Object> userEntry
* = new HashMap<>(); userEntry.put("login", "user1"); userEntry.put("rolle",
* "USER"); userEntry.put("gruppe", "user1"); Map<String, String> credentials =
* new HashMap<>(); credentials.put("passwortHash",
* "$2a$12$cqKZMcwTUe/tju7PIFGhperWdV2Xa9o4fVw5eClbzatRhvxZphE1a");
* userEntry.put("credentials", credentials); String expectedYaml =
* " - { login: \"user1\", rolle: \"USER\", credentials: { passwortHash: \"$2a$12$cqKZMcwTUe/tju7PIFGhperWdV2Xa9o4fVw5eClbzatRhvxZphE1a\" }, gruppe: \"user1\" }\n"
* ;
*
* String result = service.getYamlForUser(userEntry);
*
* assertThat(expectedYaml).isEqualTo(result); }
*
* }
*/
}
......@@ -23,7 +23,6 @@
*/
package de.ozgcloud.operator.elstertransfer.user;
public class OzgCloudElsterTransferUserSpecTestFactory {
public static final boolean KEEP_AFTER_DELETE = false;
......
......@@ -27,7 +27,6 @@ public class OzgCloudElsterTransferUserTestFactory {
public static final String METADATA_NAMESPACE = "TestNamespace";
public static OzgCloudElsterTransferUser create() {
return createWithSpec(OzgCloudElsterTransferUserSpecTestFactory.create());
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment