Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HAI-1527 Rename role to kayttooikeustaso #395

Merged
merged 1 commit into from
Sep 1, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ private const val BASE_URL = "/hankkeet"
@WebMvcTest(HankeController::class, properties = ["haitaton.features.hanke-editing=false"])
@Import(IntegrationTestConfiguration::class)
@ActiveProfiles("itest")
@WithMockUser(USERNAME, roles = ["haitaton-user"])
@WithMockUser(USERNAME)
class HankeControllerHankeEditingDisabledITests(@Autowired override val mockMvc: MockMvc) :
ControllerTest {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ private const val BASE_URL = "/hankkeet"
@WebMvcTest(HankeController::class)
@Import(IntegrationTestConfiguration::class)
@ActiveProfiles("itest")
@WithMockUser(USERNAME, roles = ["haitaton-user"])
@WithMockUser(USERNAME)
class HankeControllerITests(@Autowired override val mockMvc: MockMvc) : ControllerTest {

@Autowired lateinit var hankeService: HankeService // faking these calls
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,8 @@ import fi.hel.haitaton.hanke.logging.Operation
import fi.hel.haitaton.hanke.logging.Status
import fi.hel.haitaton.hanke.logging.UserRole
import fi.hel.haitaton.hanke.permissions.KayttajaTunnisteRepository
import fi.hel.haitaton.hanke.permissions.Kayttooikeustaso
import fi.hel.haitaton.hanke.permissions.PermissionService
import fi.hel.haitaton.hanke.permissions.Role
import fi.hel.haitaton.hanke.permissions.kayttajaTunnistePattern
import fi.hel.haitaton.hanke.test.Asserts.isRecent
import fi.hel.haitaton.hanke.test.TestUtils
Expand Down Expand Up @@ -345,8 +345,8 @@ class ApplicationServiceITest : DatabaseTest() {
val otherUser = "otherUser"
val hanke = hankeRepository.save(HankeEntity(hankeTunnus = "HAI-1234"))
val hanke2 = hankeRepository.save(HankeEntity(hankeTunnus = "HAI-1235"))
permissionService.setPermission(hanke.id!!, USERNAME, Role.HAKEMUSASIOINTI)
permissionService.setPermission(hanke2.id!!, "otherUser", Role.HAKEMUSASIOINTI)
permissionService.setPermission(hanke.id!!, USERNAME, Kayttooikeustaso.HAKEMUSASIOINTI)
permissionService.setPermission(hanke2.id!!, "otherUser", Kayttooikeustaso.HAKEMUSASIOINTI)

alluDataFactory.saveApplicationEntities(3, USERNAME, hanke = hanke) { _, application ->
application.userId = USERNAME
Expand Down Expand Up @@ -376,8 +376,8 @@ class ApplicationServiceITest : DatabaseTest() {
val hanke = hankeRepository.save(HankeEntity(hankeTunnus = "HAI-1234"))
val hanke2 = hankeRepository.save(HankeEntity(hankeTunnus = "HAI-1235"))
val hanke3 = hankeRepository.save(HankeEntity(hankeTunnus = "HAI-1236"))
permissionService.setPermission(hanke.id!!, USERNAME, Role.HAKEMUSASIOINTI)
permissionService.setPermission(hanke2.id!!, USERNAME, Role.HAKEMUSASIOINTI)
permissionService.setPermission(hanke.id!!, USERNAME, Kayttooikeustaso.HAKEMUSASIOINTI)
permissionService.setPermission(hanke2.id!!, USERNAME, Kayttooikeustaso.HAKEMUSASIOINTI)
val application1 = alluDataFactory.saveApplicationEntity(username = USERNAME, hanke = hanke)
val application2 =
alluDataFactory.saveApplicationEntity(username = "secondUser", hanke = hanke2)
Expand Down Expand Up @@ -1042,7 +1042,7 @@ class ApplicationServiceITest : DatabaseTest() {

val tunnisteet = kayttajaTunnisteRepository.findAll()
assertThat(tunnisteet).hasSize(1)
assertThat(tunnisteet[0].role).isEqualTo(Role.KATSELUOIKEUS)
assertThat(tunnisteet[0].kayttooikeustaso).isEqualTo(Kayttooikeustaso.KATSELUOIKEUS)
assertThat(tunnisteet[0].createdAt).isRecent()
assertThat(tunnisteet[0].sentAt).isNull()
assertThat(tunnisteet[0].tunniste).matches(Regex(kayttajaTunnistePattern))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ import org.testcontainers.junit.jupiter.Testcontainers
@Testcontainers
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@ActiveProfiles("default")
@WithMockUser(username = "test", roles = ["haitaton-user"])
@WithMockUser(username = "test")
internal class GeometriatServiceImplITest : DatabaseTest() {

@Autowired private lateinit var hankeService: HankeService
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,12 @@ class HankeKayttajaControllerITest(@Autowired override val mockMvc: MockMvc) : C
)
} throws HankeNotFoundException(HANKE_TUNNUS)

put(url, PermissionUpdate(listOf(PermissionDto(hankeKayttajaId, Role.HANKEMUOKKAUS))))
put(
url,
PermissionUpdate(
listOf(PermissionDto(hankeKayttajaId, Kayttooikeustaso.HANKEMUOKKAUS))
)
)
.andExpect(status().isNotFound)

verifySequence {
Expand Down Expand Up @@ -183,10 +188,15 @@ class HankeKayttajaControllerITest(@Autowired override val mockMvc: MockMvc) : C
PermissionCode.MODIFY_DELETE_PERMISSIONS
)
} returns false
val updates = mapOf(hankeKayttajaId to Role.HANKEMUOKKAUS)
val updates = mapOf(hankeKayttajaId to Kayttooikeustaso.HANKEMUOKKAUS)
justRun { hankeKayttajaService.updatePermissions(hanke, updates, false, USERNAME) }

put(url, PermissionUpdate(listOf(PermissionDto(hankeKayttajaId, Role.HANKEMUOKKAUS))))
put(
url,
PermissionUpdate(
listOf(PermissionDto(hankeKayttajaId, Kayttooikeustaso.HANKEMUOKKAUS))
)
)
.andExpect(status().isNoContent)
.andExpect(content().string(""))

Expand All @@ -211,10 +221,15 @@ class HankeKayttajaControllerITest(@Autowired override val mockMvc: MockMvc) : C
PermissionCode.MODIFY_DELETE_PERMISSIONS
)
} returns true
val updates = mapOf(hankeKayttajaId to Role.HANKEMUOKKAUS)
val updates = mapOf(hankeKayttajaId to Kayttooikeustaso.HANKEMUOKKAUS)
justRun { hankeKayttajaService.updatePermissions(hanke, updates, true, USERNAME) }

put(url, PermissionUpdate(listOf(PermissionDto(hankeKayttajaId, Role.HANKEMUOKKAUS))))
put(
url,
PermissionUpdate(
listOf(PermissionDto(hankeKayttajaId, Kayttooikeustaso.HANKEMUOKKAUS))
)
)
.andExpect(status().isNoContent)

verifyCalls(hanke, updates, deleteAdminPermission = true)
Expand All @@ -224,7 +239,12 @@ class HankeKayttajaControllerITest(@Autowired override val mockMvc: MockMvc) : C
fun `Returns forbidden when missing admin permissions`() {
val (hanke, updates) = setupForException(MissingAdminPermissionException(USERNAME))

put(url, PermissionUpdate(listOf(PermissionDto(hankeKayttajaId, Role.HANKEMUOKKAUS))))
put(
url,
PermissionUpdate(
listOf(PermissionDto(hankeKayttajaId, Kayttooikeustaso.HANKEMUOKKAUS))
)
)
.andExpect(status().isForbidden)
.andExpect(hankeError(HankeError.HAI0005))

Expand All @@ -235,7 +255,12 @@ class HankeKayttajaControllerITest(@Autowired override val mockMvc: MockMvc) : C
fun `Returns forbidden when changing own permissions`() {
val (hanke, updates) = setupForException(ChangingOwnPermissionException(USERNAME))

put(url, PermissionUpdate(listOf(PermissionDto(hankeKayttajaId, Role.HANKEMUOKKAUS))))
put(
url,
PermissionUpdate(
listOf(PermissionDto(hankeKayttajaId, Kayttooikeustaso.HANKEMUOKKAUS))
)
)
.andExpect(status().isForbidden)
.andExpect(hankeError(HankeError.HAI4002))

Expand All @@ -245,9 +270,16 @@ class HankeKayttajaControllerITest(@Autowired override val mockMvc: MockMvc) : C
@Test
fun `Returns internal server error if there are users without either permission or tunniste`() {
val (hanke, updates) =
setupForException(UsersWithoutRolesException(missingIds = listOf(hankeKayttajaId)))
setupForException(
UsersWithoutKayttooikeustasoException(missingIds = listOf(hankeKayttajaId))
)

put(url, PermissionUpdate(listOf(PermissionDto(hankeKayttajaId, Role.HANKEMUOKKAUS))))
put(
url,
PermissionUpdate(
listOf(PermissionDto(hankeKayttajaId, Kayttooikeustaso.HANKEMUOKKAUS))
)
)
.andExpect(status().isInternalServerError)
.andExpect(hankeError(HankeError.HAI4003))

Expand All @@ -258,7 +290,12 @@ class HankeKayttajaControllerITest(@Autowired override val mockMvc: MockMvc) : C
fun `Returns conflict if there would be no admins remaining`() {
val (hanke, updates) = setupForException { hanke -> NoAdminRemainingException(hanke) }

put(url, PermissionUpdate(listOf(PermissionDto(hankeKayttajaId, Role.HANKEMUOKKAUS))))
put(
url,
PermissionUpdate(
listOf(PermissionDto(hankeKayttajaId, Kayttooikeustaso.HANKEMUOKKAUS))
)
)
.andExpect(status().isConflict)
.andExpect(hankeError(HankeError.HAI4003))

Expand All @@ -272,7 +309,12 @@ class HankeKayttajaControllerITest(@Autowired override val mockMvc: MockMvc) : C
HankeKayttajatNotFoundException(listOf(hankeKayttajaId), hanke)
}

put(url, PermissionUpdate(listOf(PermissionDto(hankeKayttajaId, Role.HANKEMUOKKAUS))))
put(
url,
PermissionUpdate(
listOf(PermissionDto(hankeKayttajaId, Kayttooikeustaso.HANKEMUOKKAUS))
)
)
.andExpect(status().isBadRequest)
.andExpect(hankeError(HankeError.HAI4001))

Expand All @@ -281,7 +323,7 @@ class HankeKayttajaControllerITest(@Autowired override val mockMvc: MockMvc) : C

private fun verifyCalls(
hanke: Hanke,
updates: Map<UUID, Role>,
updates: Map<UUID, Kayttooikeustaso>,
deleteAdminPermission: Boolean = false,
) {
verifySequence {
Expand All @@ -305,12 +347,14 @@ class HankeKayttajaControllerITest(@Autowired override val mockMvc: MockMvc) : C
}
}

private fun setupForException(ex: Throwable): Pair<Hanke, Map<UUID, Role>> =
private fun setupForException(ex: Throwable): Pair<Hanke, Map<UUID, Kayttooikeustaso>> =
setupForException {
ex
}

private fun setupForException(ex: (Hanke) -> Throwable): Pair<Hanke, Map<UUID, Role>> {
private fun setupForException(
ex: (Hanke) -> Throwable
): Pair<Hanke, Map<UUID, Kayttooikeustaso>> {
val hanke = HankeFactory.create()
every { hankeService.findHankeOrThrow(HANKE_TUNNUS) } returns hanke
justRun {
Expand All @@ -327,7 +371,7 @@ class HankeKayttajaControllerITest(@Autowired override val mockMvc: MockMvc) : C
PermissionCode.MODIFY_DELETE_PERMISSIONS
)
} returns false
val updates = mapOf(hankeKayttajaId to Role.HANKEMUOKKAUS)
val updates = mapOf(hankeKayttajaId to Kayttooikeustaso.HANKEMUOKKAUS)
every { hankeKayttajaService.updatePermissions(hanke, updates, false, USERNAME) } throws
ex(hanke)

Expand All @@ -352,7 +396,12 @@ class HankeKayttajaControllerFeatureDisabledITest(@Autowired override val mockMv
inner class UpdatePermissions {
@Test
fun `Returns not found when feature disabled`() {
put(url, PermissionUpdate(listOf(PermissionDto(hankeKayttajaId, Role.HANKEMUOKKAUS))))
put(
url,
PermissionUpdate(
listOf(PermissionDto(hankeKayttajaId, Kayttooikeustaso.HANKEMUOKKAUS))
)
)
.andExpect(status().isNotFound)
.andExpect(hankeError(HankeError.HAI0004))
}
Expand Down
Loading
Loading