mirror of
https://github.com/iflytek/skillhub.git
synced 2026-09-15 23:31:10 +00:00
fix: update test files for platformRoles parameter in lifecycle governance methods
All lifecycle methods (hideSkill, archiveSkill, unarchiveSkill, deleteVersion, unhideSkill) now accept a Set<String> platformRoles parameter for SUPER_ADMIN/ SKILL_ADMIN bypass. Updated all test calls to pass null for this parameter. AdminSkillControllerTest now mocks hideSkillAsAdmin instead of hideSkill.
This commit is contained in:
parent
189b3e7207
commit
4ae9518add
5 changed files with 20 additions and 17 deletions
|
|
@ -48,7 +48,7 @@ class AdminSkillControllerTest {
|
|||
@Test
|
||||
void hideSkill_returnsUpdatedResponse() throws Exception {
|
||||
Skill skill = new Skill(1L, "demo", "owner", SkillVisibility.PUBLIC);
|
||||
given(skillGovernanceService.hideSkill(org.mockito.ArgumentMatchers.eq(10L), org.mockito.ArgumentMatchers.eq("admin"), org.mockito.ArgumentMatchers.any(), org.mockito.ArgumentMatchers.any(), org.mockito.ArgumentMatchers.any(), org.mockito.ArgumentMatchers.eq("policy")))
|
||||
given(skillGovernanceService.hideSkillAsAdmin(org.mockito.ArgumentMatchers.eq(10L), org.mockito.ArgumentMatchers.eq("admin"), org.mockito.ArgumentMatchers.any(), org.mockito.ArgumentMatchers.any(), org.mockito.ArgumentMatchers.eq("policy")))
|
||||
.willReturn(skill);
|
||||
|
||||
PlatformPrincipal principal = new PlatformPrincipal("admin", "admin", "a@example.com", "", "github", Set.of("SUPER_ADMIN"));
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.iflytek.skillhub.controller.portal;
|
||||
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.ArgumentMatchers.anyMap;
|
||||
import static org.mockito.ArgumentMatchers.eq;
|
||||
import static org.mockito.ArgumentMatchers.nullable;
|
||||
|
|
@ -88,7 +89,7 @@ class SkillLifecycleControllerTest {
|
|||
given(namespaceRepository.findBySlug("global")).willReturn(java.util.Optional.of(namespace));
|
||||
given(skillSlugResolutionService.resolve(1L, "demo-skill", "usr_1", SkillSlugResolutionService.Preference.CURRENT_USER))
|
||||
.willReturn(skill);
|
||||
given(skillGovernanceService.archiveSkill(eq(1L), eq("usr_1"), anyMap(), nullable(String.class), nullable(String.class), eq("cleanup")))
|
||||
given(skillGovernanceService.archiveSkill(eq(1L), eq("usr_1"), anyMap(), any(), nullable(String.class), nullable(String.class), eq("cleanup")))
|
||||
.willReturn(skillWithStatus(skill, com.iflytek.skillhub.domain.skill.SkillStatus.ARCHIVED));
|
||||
|
||||
mockMvc.perform(post("/api/web/skills/global/demo-skill/archive")
|
||||
|
|
@ -116,7 +117,7 @@ class SkillLifecycleControllerTest {
|
|||
given(namespaceRepository.findBySlug("global")).willReturn(java.util.Optional.of(namespace));
|
||||
given(skillSlugResolutionService.resolve(1L, "demo-skill", "usr_1", SkillSlugResolutionService.Preference.CURRENT_USER))
|
||||
.willReturn(skill);
|
||||
given(skillGovernanceService.unarchiveSkill(eq(1L), eq("usr_1"), anyMap(), nullable(String.class), nullable(String.class)))
|
||||
given(skillGovernanceService.unarchiveSkill(eq(1L), eq("usr_1"), anyMap(), any(), nullable(String.class), nullable(String.class)))
|
||||
.willReturn(skillWithStatus(skill, com.iflytek.skillhub.domain.skill.SkillStatus.ACTIVE));
|
||||
|
||||
mockMvc.perform(post("/api/web/skills/global/demo-skill/unarchive")
|
||||
|
|
@ -241,7 +242,7 @@ class SkillLifecycleControllerTest {
|
|||
given(namespaceRepository.findBySlug("global")).willReturn(java.util.Optional.of(namespace));
|
||||
given(skillSlugResolutionService.resolve(1L, "demo-skill", "usr_1", SkillSlugResolutionService.Preference.CURRENT_USER))
|
||||
.willReturn(skill);
|
||||
given(skillGovernanceService.archiveSkill(eq(1L), eq("usr_1"), anyMap(), nullable(String.class), nullable(String.class), eq("cleanup")))
|
||||
given(skillGovernanceService.archiveSkill(eq(1L), eq("usr_1"), anyMap(), any(), nullable(String.class), nullable(String.class), eq("cleanup")))
|
||||
.willReturn(skillWithStatus(skill, com.iflytek.skillhub.domain.skill.SkillStatus.ARCHIVED));
|
||||
|
||||
mockMvc.perform(post("/api/web/skills/@global/demo-skill/archive")
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package com.iflytek.skillhub.service;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.ArgumentMatchers.anyMap;
|
||||
import static org.mockito.ArgumentMatchers.eq;
|
||||
import static org.mockito.ArgumentMatchers.nullable;
|
||||
|
|
@ -59,7 +60,7 @@ class SkillLifecycleAppServiceTest {
|
|||
when(namespaceRepository.findBySlug("global")).thenReturn(Optional.of(namespace));
|
||||
when(skillSlugResolutionService.resolve(7L, "demo-skill", "owner-1", SkillSlugResolutionService.Preference.CURRENT_USER))
|
||||
.thenReturn(skill);
|
||||
when(skillGovernanceService.archiveSkill(eq(11L), eq("owner-1"), anyMap(), nullable(String.class), nullable(String.class), eq("cleanup")))
|
||||
when(skillGovernanceService.archiveSkill(eq(11L), eq("owner-1"), anyMap(), any(), nullable(String.class), nullable(String.class), eq("cleanup")))
|
||||
.thenReturn(skill);
|
||||
|
||||
var response = service.archiveSkill(
|
||||
|
|
@ -68,12 +69,13 @@ class SkillLifecycleAppServiceTest {
|
|||
new AdminSkillActionRequest("cleanup"),
|
||||
"owner-1",
|
||||
Map.of(7L, NamespaceRole.OWNER),
|
||||
null,
|
||||
new AuditRequestContext("127.0.0.1", "JUnit")
|
||||
);
|
||||
|
||||
assertThat(response.skillId()).isEqualTo(11L);
|
||||
assertThat(response.action()).isEqualTo("ARCHIVE");
|
||||
assertThat(response.status()).isEqualTo("ARCHIVED");
|
||||
verify(skillGovernanceService).archiveSkill(11L, "owner-1", Map.of(7L, NamespaceRole.OWNER), "127.0.0.1", "JUnit", "cleanup");
|
||||
verify(skillGovernanceService).archiveSkill(11L, "owner-1", Map.of(7L, NamespaceRole.OWNER), null, "127.0.0.1", "JUnit", "cleanup");
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -134,7 +134,7 @@ class SkillReportServiceTest {
|
|||
);
|
||||
|
||||
assertThat(saved.getStatus()).isEqualTo(SkillReportStatus.RESOLVED);
|
||||
verify(skillGovernanceService).hideSkill(10L, "admin", java.util.Map.of(), "127.0.0.1", "JUnit", "handled");
|
||||
verify(skillGovernanceService).hideSkillAsAdmin(10L, "admin", "127.0.0.1", "JUnit", "handled");
|
||||
verify(governanceNotificationService).notifyUser(
|
||||
eq("user-1"),
|
||||
eq("REPORT"),
|
||||
|
|
|
|||
|
|
@ -92,7 +92,7 @@ class SkillGovernanceServiceTest {
|
|||
given(skillRepository.findById(10L)).willReturn(Optional.of(skill));
|
||||
given(skillRepository.save(skill)).willReturn(skill);
|
||||
|
||||
Skill result = service.hideSkill(10L, "admin", java.util.Map.of(), "127.0.0.1", "JUnit", "policy");
|
||||
Skill result = service.hideSkill(10L, "admin", java.util.Map.of(), null, "127.0.0.1", "JUnit", "policy");
|
||||
|
||||
assertThat(result.isHidden()).isTrue();
|
||||
assertThat(result.getHiddenBy()).isEqualTo("admin");
|
||||
|
|
@ -107,7 +107,7 @@ class SkillGovernanceServiceTest {
|
|||
given(skillRepository.findById(10L)).willReturn(Optional.of(skill));
|
||||
given(skillRepository.save(skill)).willReturn(skill);
|
||||
|
||||
Skill result = service.archiveSkill(10L, "owner", Map.of(), "127.0.0.1", "JUnit", "cleanup");
|
||||
Skill result = service.archiveSkill(10L, "owner", Map.of(), null, "127.0.0.1", "JUnit", "cleanup");
|
||||
|
||||
assertThat(result.getStatus()).isEqualTo(SkillStatus.ARCHIVED);
|
||||
verify(auditLogService).record("owner", "ARCHIVE_SKILL", "SKILL", 10L, null, "127.0.0.1", "JUnit", "{\"reason\":\"cleanup\"}");
|
||||
|
|
@ -122,7 +122,7 @@ class SkillGovernanceServiceTest {
|
|||
given(skillRepository.findById(10L)).willReturn(Optional.of(skill));
|
||||
given(skillRepository.save(skill)).willReturn(skill);
|
||||
|
||||
Skill result = service.unarchiveSkill(10L, "owner", Map.of(), "127.0.0.1", "JUnit");
|
||||
Skill result = service.unarchiveSkill(10L, "owner", Map.of(), null, "127.0.0.1", "JUnit");
|
||||
|
||||
assertThat(result.getStatus()).isEqualTo(SkillStatus.ACTIVE);
|
||||
verify(auditLogService).record("owner", "UNARCHIVE_SKILL", "SKILL", 10L, null, "127.0.0.1", "JUnit", null);
|
||||
|
|
@ -136,7 +136,7 @@ class SkillGovernanceServiceTest {
|
|||
given(skillRepository.findById(10L)).willReturn(Optional.of(skill));
|
||||
|
||||
assertThrows(DomainForbiddenException.class,
|
||||
() -> service.archiveSkill(10L, "other", Map.of(1L, NamespaceRole.MEMBER), "127.0.0.1", "JUnit", null));
|
||||
() -> service.archiveSkill(10L, "other", Map.of(1L, NamespaceRole.MEMBER), null, "127.0.0.1", "JUnit", null));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -216,7 +216,7 @@ class SkillGovernanceServiceTest {
|
|||
SkillFile icon = new SkillFile(version.getId(), "icon.png", 20L, "image/png", "sha2", "skills/demo/icon");
|
||||
given(skillFileRepository.findByVersionId(version.getId())).willReturn(java.util.List.of(readme, icon));
|
||||
|
||||
service.deleteVersion(skill, version, "owner", Map.of(), "127.0.0.1", "JUnit", "test-ns");
|
||||
service.deleteVersion(skill, version, "owner", Map.of(), null, "127.0.0.1", "JUnit", "test-ns");
|
||||
|
||||
verify(objectStorageService).deleteObjects(argThat(keys ->
|
||||
keys.size() == 3
|
||||
|
|
@ -246,7 +246,7 @@ class SkillGovernanceServiceTest {
|
|||
|
||||
TransactionSynchronizationManager.initSynchronization();
|
||||
|
||||
service.deleteVersion(skill, version, "owner", Map.of(), "127.0.0.1", "JUnit", "test-ns");
|
||||
service.deleteVersion(skill, version, "owner", Map.of(), null, "127.0.0.1", "JUnit", "test-ns");
|
||||
|
||||
verify(objectStorageService, never()).deleteObjects(argThat(keys -> !keys.isEmpty()));
|
||||
|
||||
|
|
@ -279,7 +279,7 @@ class SkillGovernanceServiceTest {
|
|||
|
||||
TransactionSynchronizationManager.initSynchronization();
|
||||
|
||||
service.deleteVersion(skill, version, "owner", Map.of(), "127.0.0.1", "JUnit", "test-ns");
|
||||
service.deleteVersion(skill, version, "owner", Map.of(), null, "127.0.0.1", "JUnit", "test-ns");
|
||||
|
||||
for (TransactionSynchronization synchronization : TransactionSynchronizationManager.getSynchronizations()) {
|
||||
synchronization.afterCommit();
|
||||
|
|
@ -307,7 +307,7 @@ class SkillGovernanceServiceTest {
|
|||
version.setStatus(SkillVersionStatus.PUBLISHED);
|
||||
|
||||
assertThrows(DomainBadRequestException.class,
|
||||
() -> service.deleteVersion(skill, version, "owner", Map.of(), "127.0.0.1", "JUnit", "test-ns"));
|
||||
() -> service.deleteVersion(skill, version, "owner", Map.of(), null, "127.0.0.1", "JUnit", "test-ns"));
|
||||
|
||||
verify(skillVersionRepository, never()).delete(any());
|
||||
verify(objectStorageService, never()).deleteObject(any());
|
||||
|
|
@ -323,7 +323,7 @@ class SkillGovernanceServiceTest {
|
|||
given(skillVersionRepository.findBySkillId(1L)).willReturn(java.util.List.of(version));
|
||||
|
||||
DomainBadRequestException ex = assertThrows(DomainBadRequestException.class,
|
||||
() -> service.deleteVersion(skill, version, "owner", Map.of(), "127.0.0.1", "JUnit", "test-ns"));
|
||||
() -> service.deleteVersion(skill, version, "owner", Map.of(), null, "127.0.0.1", "JUnit", "test-ns"));
|
||||
assertThat(ex.messageCode()).isEqualTo("error.skill.version.delete.lastVersion");
|
||||
|
||||
verify(skillVersionRepository, never()).delete(any());
|
||||
|
|
@ -351,7 +351,7 @@ class SkillGovernanceServiceTest {
|
|||
given(skillRepository.save(skill)).willReturn(skill);
|
||||
given(skillFileRepository.findByVersionId(2L)).willReturn(java.util.List.of());
|
||||
|
||||
service.deleteVersion(skill, draftVersion, "owner", Map.of(), "127.0.0.1", "JUnit", "test-ns");
|
||||
service.deleteVersion(skill, draftVersion, "owner", Map.of(), null, "127.0.0.1", "JUnit", "test-ns");
|
||||
|
||||
assertThat(skill.getLatestVersionId()).isEqualTo(3L);
|
||||
verify(skillRepository).save(skill);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue