diff --git a/app/server/appsmith-server/src/test/java/com/appsmith/server/services/ce/ThemeImportableServiceCETest.java b/app/server/appsmith-server/src/test/java/com/appsmith/server/services/ce/ThemeImportableServiceCETest.java index 579de99cc47f..dbeb70dc19d1 100644 --- a/app/server/appsmith-server/src/test/java/com/appsmith/server/services/ce/ThemeImportableServiceCETest.java +++ b/app/server/appsmith-server/src/test/java/com/appsmith/server/services/ce/ThemeImportableServiceCETest.java @@ -2,15 +2,11 @@ import com.appsmith.server.applications.base.ApplicationService; import com.appsmith.server.domains.Application; -import com.appsmith.server.domains.PermissionGroup; import com.appsmith.server.domains.Theme; -import com.appsmith.server.domains.User; import com.appsmith.server.domains.Workspace; import com.appsmith.server.dtos.ApplicationJson; import com.appsmith.server.dtos.ImportingMetaDTO; -import com.appsmith.server.dtos.InviteUsersDTO; import com.appsmith.server.dtos.MappedImportableResourcesDTO; -import com.appsmith.server.dtos.UpdatePermissionGroupDTO; import com.appsmith.server.imports.importable.ImportableService; import com.appsmith.server.repositories.ApplicationRepository; import com.appsmith.server.repositories.PermissionGroupRepository; @@ -37,7 +33,6 @@ import java.util.UUID; import static com.appsmith.server.acl.AclPermission.READ_THEMES; -import static com.appsmith.server.constants.FieldName.ADMINISTRATOR; import static org.assertj.core.api.Assertions.assertThat; @SpringBootTest @@ -103,64 +98,15 @@ public void cleanup() { workspaceService.archiveById(workspace.getId()).block(); } - private Application createApplication() { + @WithUserDetails("api_user") + @Test + public void importThemesToApplication_WhenBothImportedThemesAreCustom_NewThemesCreated() { Application application = new Application(); application.setName("ThemeTest_" + UUID.randomUUID()); application.setWorkspaceId(this.workspace.getId()); applicationPageService .createApplication(application, this.workspace.getId()) .block(); - return application; - } - - public void replaceApiUserWithAnotherUserInWorkspace() { - - String origin = "http://random-origin.test"; - PermissionGroup adminPermissionGroup = permissionGroupRepository - .findAllById(workspace.getDefaultPermissionGroups()) - .filter(permissionGroup -> permissionGroup.getName().startsWith(ADMINISTRATOR)) - .collectList() - .block() - .get(0); - - // invite usertest to the workspace - InviteUsersDTO inviteUsersDTO = new InviteUsersDTO(); - inviteUsersDTO.setUsernames(List.of("usertest@usertest.com")); - inviteUsersDTO.setPermissionGroupId(adminPermissionGroup.getId()); - userAndAccessManagementService.inviteUsers(inviteUsersDTO, origin).block(); - - // Remove api_user from the workspace - UpdatePermissionGroupDTO updatePermissionGroupDTO = new UpdatePermissionGroupDTO(); - updatePermissionGroupDTO.setNewPermissionGroupId(null); - updatePermissionGroupDTO.setUsername("api_user"); - userWorkspaceService - .updatePermissionGroupForMember(workspace.getId(), updatePermissionGroupDTO, origin) - .block(); - } - - public void addApiUserToTheWorkspaceAsAdmin() { - String origin = "http://random-origin.test"; - PermissionGroup adminPermissionGroup = permissionGroupRepository - .findAllById(workspace.getDefaultPermissionGroups()) - .filter(permissionGroup -> permissionGroup.getName().startsWith(ADMINISTRATOR)) - .collectList() - .block() - .get(0); - - // add api_user back to the workspace - User apiUser = userRepository.findByEmail("api_user").block(); - adminPermissionGroup.getAssignedToUserIds().add(apiUser.getId()); - permissionGroupRepository - .save(adminPermissionGroup) - .flatMap( - savedRole -> permissionGroupService.cleanPermissionGroupCacheForUsers(List.of(apiUser.getId()))) - .block(); - } - - @WithUserDetails("api_user") - @Test - public void importThemesToApplication_WhenBothImportedThemesAreCustom_NewThemesCreated() { - Application application = createApplication(); // create a application json with a custom theme set as both edit mode and published mode ApplicationJson applicationJson = new ApplicationJson(); @@ -219,11 +165,18 @@ public void importThemesToApplication_ApplicationThemeNotFound_DefaultThemeImpor applicationJson.setEditModeTheme(themeInJson); applicationJson.setPublishedTheme(themeInJson); - Mono mappedImportableResourcesDTOMono = Mono.just(createApplication()) - .map(application -> { + Application application = new Application(); + application.setName("ThemeTest_" + UUID.randomUUID()); + application.setWorkspaceId(this.workspace.getId()); + applicationPageService + .createApplication(application, this.workspace.getId()) + .block(); + + Mono mappedImportableResourcesDTOMono = Mono.just(application) + .map(application1 -> { // setting invalid ids to themes to check the case - application.setEditModeThemeId(UUID.randomUUID().toString()); - application.setPublishedModeThemeId(UUID.randomUUID().toString()); + application1.setEditModeThemeId(UUID.randomUUID().toString()); + application1.setPublishedModeThemeId(UUID.randomUUID().toString()); return application; }) .flatMap(applicationRepository::save)