diff --git a/http/account.http b/http/account.http index 776278b..3372f48 100644 --- a/http/account.http +++ b/http/account.http @@ -10,8 +10,8 @@ Content-Type: application/json "password": "p4ssw0rd", "enabled": true, "roles": [ - "ROLE_ADMIN", - "ROLE_TEST" + "ADMIN", + "TEST" ] } @@ -24,7 +24,7 @@ Content-Type: application/json "password": "pass", "enabled": true, "roles": [ - "ROLE_TEST" + "TEST" ] } @@ -36,6 +36,6 @@ Content-Type: application/json "username": "user", "enabled": true, "roles": [ - "ROLE_TEST" + "TEST" ] } diff --git a/sql/test/test_001-account.sql b/sql/test/test_001-account.sql index a4c10cd..e037222 100644 --- a/sql/test/test_001-account.sql +++ b/sql/test/test_001-account.sql @@ -1,4 +1,5 @@ insert into public.accounts (id, created_at, updated_at, enabled, username, password, roles) -values ('00000000-0000-7000-0000-000000000001'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', true, 'admin', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'ROLE_ADMIN'), - ('00000000-0000-7000-0000-000000000002'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', true, 'user', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'ROLE_USER'), - ('00000000-0000-7000-0000-000000000003'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', false, 'disabled', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'ROLE_USER'); +values ('00000000-0000-7000-0000-000000000001'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', true, 'admin', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'ADMIN'), + ('00000000-0000-7000-0000-000000000002'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', true, 'user', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'USER'), + ('00000000-0000-7000-0000-000000000002'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', true, 'user', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'USER'), + ('00000000-0000-7000-0000-000000000003'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', false, 'disabled', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'USER'); diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 27fb73f..9588477 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -9,6 +9,8 @@ spring: os: name: "%APP_BUILD_OS_NAME%" version: "%APP_BUILD_OS_VERSION%" + r2dbc: + username: services management: endpoints: @@ -37,7 +39,6 @@ spring: on-profile: development r2dbc: url: r2dbc:postgresql://localhost:5432/account_registry - username: services password: password --- @@ -50,14 +51,15 @@ spring: on-profile: docker r2dbc: url: r2dbc:postgresql://PostgreSQL:5432/account_registry - username: services password: password --- ############################## -### Production environment ### +### Kubernetes environment ### ############################## spring: config: activate: - on-profile: production + on-profile: kubernetes + r2dbc: + url: r2dbc:postgresql://dependency-postgresql:5432/account_registry diff --git a/src/test-integration/kotlin/ltd/hlaeja/controller/AccountEndpoint.kt b/src/test-integration/kotlin/ltd/hlaeja/controller/AccountEndpoint.kt index ee020a4..f689abf 100644 --- a/src/test-integration/kotlin/ltd/hlaeja/controller/AccountEndpoint.kt +++ b/src/test-integration/kotlin/ltd/hlaeja/controller/AccountEndpoint.kt @@ -57,7 +57,7 @@ class AccountEndpoint { softly.assertThat(it.responseBody?.username).isEqualTo("admin") softly.assertThat(it.responseBody?.enabled).isTrue softly.assertThat(it.responseBody?.roles?.size).isEqualTo(1) - softly.assertThat(it.responseBody?.roles?.get(0)).isEqualTo("ROLE_ADMIN") + softly.assertThat(it.responseBody?.roles?.get(0)).isEqualTo("ADMIN") } } @@ -97,7 +97,7 @@ class AccountEndpoint { username = "usernameA", password = "abc123", enabled = true, - roles = listOf("ROLE_USER", "ROLE_TEST"), + roles = listOf("USER", "TEST"), ) // when @@ -111,8 +111,8 @@ class AccountEndpoint { softly.assertThat(it.responseBody?.username).isEqualTo("usernameA") softly.assertThat(it.responseBody?.enabled).isTrue softly.assertThat(it.responseBody?.roles?.size).isEqualTo(2) - softly.assertThat(it.responseBody?.roles).contains("ROLE_USER") - softly.assertThat(it.responseBody?.roles).contains("ROLE_TEST") + softly.assertThat(it.responseBody?.roles).contains("USER") + softly.assertThat(it.responseBody?.roles).contains("TEST") } } @@ -124,7 +124,7 @@ class AccountEndpoint { username = "usernameB", password = null, enabled = false, - roles = listOf("ROLE_TEST"), + roles = listOf("TEST"), ) // when @@ -138,7 +138,7 @@ class AccountEndpoint { softly.assertThat(it.responseBody?.username).isEqualTo("usernameB") softly.assertThat(it.responseBody?.enabled).isFalse softly.assertThat(it.responseBody?.roles?.size).isEqualTo(1) - softly.assertThat(it.responseBody?.roles).contains("ROLE_TEST") + softly.assertThat(it.responseBody?.roles).contains("TEST") } } @@ -150,7 +150,7 @@ class AccountEndpoint { username = "user", password = null, enabled = true, - roles = listOf("ROLE_USER"), + roles = listOf("USER"), ) // when @@ -168,7 +168,7 @@ class AccountEndpoint { username = "admin", password = null, enabled = true, - roles = listOf("ROLE_USER"), + roles = listOf("USER"), ) // when @@ -186,7 +186,7 @@ class AccountEndpoint { username = "admin", password = null, enabled = true, - roles = listOf("ROLE_USER"), + roles = listOf("USER"), ) // when @@ -202,9 +202,9 @@ class AccountEndpoint { @ParameterizedTest @CsvSource( - "new-user, new-pass, true, 2, ROLE_USER;ROLE_TEST", - "admin-user, admin-pass, false, 1, ROLE_ADMIN", - "test-user, test-pass, true, 1, ROLE_USER", + "new-user, new-pass, true, 2, USER;TEST", + "admin-user, admin-pass, false, 1, ADMIN", + "test-user, test-pass, true, 1, USER", ) fun `success added account`( username: String, @@ -242,8 +242,8 @@ class AccountEndpoint { @ParameterizedTest @CsvSource( - "'', new-pass, ROLE_TEST", - "new-user, '', ROLE_ADMIN", + "'', new-pass, TEST", + "new-user, '', ADMIN", "new-user, new-pass, ''", ) fun `validation fail on empty values`( @@ -276,7 +276,7 @@ class AccountEndpoint { username = "user", password = "new-pass", enabled = true, - roles = listOf("ROLE_USER", "ROLE_TEST"), + roles = listOf("USER", "TEST"), ) // when @@ -293,7 +293,7 @@ class AccountEndpoint { username = "user", password = null, enabled = true, - roles = listOf("ROLE_USER", "ROLE_TEST"), + roles = listOf("USER", "TEST"), ) // when diff --git a/src/test-integration/resources/authenticate/admin-token.data b/src/test-integration/resources/authenticate/admin-token.data index 021ddea..c71d113 100644 --- a/src/test-integration/resources/authenticate/admin-token.data +++ b/src/test-integration/resources/authenticate/admin-token.data @@ -1 +1 @@ -eyJhbGciOiJSUzI1NiJ9.eyJpZCI6IjAwMDAwMDAwLTAwMDAtNzAwMC0wMDAwLTAwMDAwMDAwMDAwMSIsInVzZXJuYW1lIjoiYWRtaW4iLCJyb2xlIjoiUk9MRV9BRE1JTiJ9.D6pK86XPWcdu1imV_y_4nAM6R4WEZvJpQ7oGaPAYe0_rg3UWdmVMa8Iw7L21bRgFoyIa7FQBwb_0AXojFVdb2mdOVDeGOwxQZAx23dwqeicOGd8yUMnuBaRSnd7z4P65KPMbbf0NOTQtho0Iv5mBAwFMJoF67sw-yntfx3cD_bfrI-Rf4oZaZsVn38Y2HJBe2sO2QI4e5_7s82ikxac416OX7PcIEgaf3IeEK1fSzSjRG_dyBGT_Jq_vAzVURsSu4ep976kI-k5ZXNE9EMxKu1S-n5c5eiaqo96ObnaSl4eWFik5q8vLhNLYIYO-bQi1xlJKnStwZqtUwlR763Gd5w \ No newline at end of file +eyJhbGciOiJSUzI1NiJ9.eyJpZCI6IjAwMDAwMDAwLTAwMDAtNzAwMC0wMDAwLTAwMDAwMDAwMDAwMSIsInVzZXJuYW1lIjoiYWRtaW4iLCJyb2xlIjoiQURNSU4ifQ.Z2mc__k9apWjJoZzJ3DWZuDiVN_jpisWtd0ecwrMnk1NrJ5Uw25pgrXPwn2aY0qYFAe0UGbE-4FhjUCxWLkknR0B-2_86IKHmN1A7z8lTqMRkK7qH-71uK0Y3o0kWKn117-FoSKDG-oefQE42NTwsSrzhiaEIzhUd0fsIyKuQCbDRol79rX5cU1HwOI8DHowpNEgvCLW1ogMWJDygq5GDgQI2HmV8vbnO1soFjKzvW3pz0sHWTimhAi76gl5mD_Lv_DdywcQWndwcGEoNj-SgHuKWktaG2_yzkoC9FQqWBgU7tukuycmLkbde_Oagydt2CAfPsBebu4Ac81UHGdUpw \ No newline at end of file diff --git a/src/test-integration/resources/authenticate/user-token.data b/src/test-integration/resources/authenticate/user-token.data index f28e904..6cf9cce 100644 --- a/src/test-integration/resources/authenticate/user-token.data +++ b/src/test-integration/resources/authenticate/user-token.data @@ -1 +1 @@ -eyJhbGciOiJSUzI1NiJ9.eyJpZCI6IjAwMDAwMDAwLTAwMDAtNzAwMC0wMDAwLTAwMDAwMDAwMDAwMiIsInVzZXJuYW1lIjoidXNlciIsInJvbGUiOiJST0xFX1VTRVIifQ.GvZIq0VF9xB8UY3PUGdnc6JNeUXtv4LzHJ56hWSeqUS6BXH0M_QJ5Lu9ndh9_P85CECp3eKrW4fKymGYe-NUXCtrzhr9-SSZLF6D7GRzAJ4yZjVRCOa_dgqe1RGuIZyZpli36z4NPqeBFqtHJ3Cs5rAI-WdvxGfWPgtM2kzpSJ_0zFihp9mVcZBlWP57HlN7-oKzDJWVpO2E17fWZTy-y4pdrIUsff63c256Cy8NhiAgux9aqZTdzaqp9TsXw59bRsS5d0YH7-gJuBd4xctZwgy_41BOcRk2q-nLyLZgWJs1wmCa_zaW0Fj6fjAsYvpdPNegkpIqrHJcQpGd7nE0KQ \ No newline at end of file +eyJhbGciOiJSUzI1NiJ9.eyJpZCI6IjAwMDAwMDAwLTAwMDAtNzAwMC0wMDAwLTAwMDAwMDAwMDAwMiIsInVzZXJuYW1lIjoidXNlciIsInJvbGUiOiJVU0VSIn0.kpmQYxhkyKsIjo9mJaysBXW0xdv8UjlmNnVsYNfBu-Tdro_0nQFVzhCcjaD6_TUhx2-3vSkvTwDtmMHsP0JC5B43K473o2zQjyHYzCNakPcNHiste9llNj12n5qUCOUMgCKb7ZztLffSIsYlSL7hyRwwmTaz73MDMYvLWAa4AgSNm8JPe3HkTkqRJ4YZ-saKO9Q0Vb9LLftB7T3b9P5kHYqzwISBsRm1rYHRRpGYs5goR2Qax1hLJBbQR4bswaeTRfl3fQ66mIr6mZqiY279wCzzueLuGyJPFzeZQYiQ2JiYRq3H2NyXCsWKCt2bK-YNwol1K3fYLPSq9kap-AGasQ \ No newline at end of file diff --git a/src/test-integration/resources/postgres/data.sql b/src/test-integration/resources/postgres/data.sql index 16e7c7e..90d576e 100644 --- a/src/test-integration/resources/postgres/data.sql +++ b/src/test-integration/resources/postgres/data.sql @@ -1,5 +1,5 @@ -- Test data insert into public.accounts (id, created_at, updated_at, enabled, username, password, roles) -values ('00000000-0000-7000-0000-000000000001'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', true, 'admin', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'ROLE_ADMIN'), - ('00000000-0000-7000-0000-000000000002'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', true, 'user', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'ROLE_USER'), - ('00000000-0000-7000-0000-000000000003'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', false, 'disabled', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'ROLE_USER'); +values ('00000000-0000-7000-0000-000000000001'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', true, 'admin', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'ADMIN'), + ('00000000-0000-7000-0000-000000000002'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', true, 'user', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'USER'), + ('00000000-0000-7000-0000-000000000003'::uuid, '2000-01-01 00:00:00.000001 +00:00', '2000-01-01 00:00:01.000001 +00:00', false, 'disabled', '$2a$12$KoXBoLOANMK11J4xeJHPA.Sy0FG.m8KWk7P4XFsMO.ZbFmFI2DckK', 'USER');