+ {#if update??}readonly value="{user.username}"{/if}>
+ {#if update??}disabled value="xxxxx"{/if}>
+ {#if update??}disabled value="xxxxx"{/if}>
@@ -34,9 +34,9 @@
-
diff --git a/src/main/resources/templates/user.html b/src/main/resources/templates/user.html
index d9dbbde..d777a00 100644
--- a/src/main/resources/templates/user.html
+++ b/src/main/resources/templates/user.html
@@ -3,8 +3,8 @@
{#contents}
-
Hallo {current_username}
- {#if is_admin}
+
Hallo {current_user.username}
+ {#if is_admin??}
@@ -34,12 +34,12 @@
- {#if is_admin}
+ {#if is_admin??}
neuer Benutzer
{/if}
Passwort ändern
- {#if is_admin}
- {#include user-modal.html rooms=rooms}{/include}
+ {#if is_admin??}
+ {#include user-modal.html rooms=rooms user=current_user}{/include}
{/if}
{#include password-modal.html}{/include}
diff --git a/src/test/java/de/mbremer/secutity/UserResourceTest.java b/src/test/java/de/mbremer/secutity/UserResourceTest.java
new file mode 100644
index 0000000..86b3f99
--- /dev/null
+++ b/src/test/java/de/mbremer/secutity/UserResourceTest.java
@@ -0,0 +1,43 @@
+package de.mbremer.secutity;
+
+import io.quarkus.hibernate.orm.panache.PanacheQuery;
+import io.quarkus.panache.mock.PanacheMock;
+import io.quarkus.security.identity.SecurityIdentity;
+import io.quarkus.test.junit.QuarkusTest;
+import io.quarkus.test.junit.mockito.InjectMock;
+import io.quarkus.test.security.TestSecurity;
+import org.junit.jupiter.api.Test;
+
+import java.security.Principal;
+
+import static io.restassured.RestAssured.given;
+import static org.hamcrest.Matchers.containsString;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
+
+@QuarkusTest
+class UserResourceTest {
+
+ @InjectMock
+ SecurityIdentity identity;
+
+ @Test
+ @TestSecurity(authorizationEnabled = false)
+ void testUser() {
+ Principal principal = mock(Principal.class);
+ when(principal.getName()).thenReturn("user");
+ when(identity.getPrincipal()).thenReturn(principal);
+
+ PanacheMock.mock(User.class);
+ PanacheQuery panacheQuery = mock(PanacheQuery.class);
+ when(panacheQuery.singleResult()).thenReturn(new User());
+ when(User.find("username", "user")).thenReturn(panacheQuery);
+
+ given()
+ .when().get("/user")
+ .then()
+ .statusCode(200)
+ .body(containsString("Hallo"));
+ }
+
+}
\ No newline at end of file