diff --git a/test/e2e/ui/test/create-user.test.js b/test/e2e/ui/test/create-user.test.js
new file mode 100644
index 00000000..fdd75887
--- /dev/null
+++ b/test/e2e/ui/test/create-user.test.js
@@ -0,0 +1,18 @@
+import { test, expect } from '@playwright/test';
+
+test('Create user and save kubeconfig YAML to disk', async ({ page }) => {
+ /* SETUP */
+ const templateName = "developer";
+ const username = `test-user-${templateName}-${Date.now()}`;
+
+ await page.goto('/');
+ const createButton = await page.getByTestId('create-user');
+ await createButton.click();
+
+ await page.waitForURL('https://permission-manager.dev/create-new-user');
+ expect(page).toHaveURL(/.*create-new-user/);
+
+ const submitButton = await page.getByTestId('submit');
+
+ expect(submitButton).toBeVisible();
+});
diff --git a/web-client/src/views/CreateUser.tsx b/web-client/src/views/CreateUser.tsx
index f4b664da..92139990 100644
--- a/web-client/src/views/CreateUser.tsx
+++ b/web-client/src/views/CreateUser.tsx
@@ -209,9 +209,9 @@ const CreateUser = () => {
// Call to define Cluster Resources Access
clusterAccess !== 'none' && createClusterRoleBindings.mutate({
- roleName: `template-cluster-resources___${clusterAccessOptions.find((c: clusterAccessOption) => c.id === clusterAccess).backendvalue}`,
+ roleName: `template-cluster-resources___${clusterAccessOptions.find((c: clusterAccessOption) => c.id === clusterAccess)?.backendvalue}`,
subjects: [{kind: 'ServiceAccount', name: username, namespace: 'permission-manager'}],
- clusterRolebindingName: `${username}___template-cluster-resources___${clusterAccessOptions.find((c: clusterAccessOption) => c.id === clusterAccess).backendvalue}`,
+ clusterRolebindingName: `${username}___template-cluster-resources___${clusterAccessOptions.find((c: clusterAccessOption) => c.id === clusterAccess)?.backendvalue}`,
})
]).then(res => {
console.log('calls done', res);
@@ -249,7 +249,7 @@ const CreateUser = () => {
User data