diff --git a/e2e-tests/containers/dex/dex-config.yaml b/e2e-tests/containers/dex/dex-config.yaml index 190200844..f93a58323 100644 --- a/e2e-tests/containers/dex/dex-config.yaml +++ b/e2e-tests/containers/dex/dex-config.yaml @@ -17,6 +17,11 @@ staticClients: enablePasswordDB: true staticPasswords: - email: "test@example.com" + emailVerified: true hash: "$2y$10$JcmlXnV1y7.egUdKwYNbseOnqYVIGc323gtvvHh4ZuSPZB30veYZy" username: "test" userID: "1234" + allowedScopes: + - openid + - email + - profile diff --git a/e2e-tests/cypress/e2e/team.cy.js b/e2e-tests/cypress/e2e/team.cy.js index ce86f5038..a1f03a2d4 100644 --- a/e2e-tests/cypress/e2e/team.cy.js +++ b/e2e-tests/cypress/e2e/team.cy.js @@ -28,33 +28,55 @@ describe('Team edition tests', () => { cy.themeshot('authadmin'); }); - it.only('OAuth authentication', () => { + it('OAuth authentication', () => { cy.testid('LoginPage_linkAdmin').click(); cy.testid('LoginPage_password').type('adminpwd'); cy.testid('LoginPage_submitLogin').click(); cy.testid('AdminMenuWidget_itemAuthentication').click(); // cy.testid('AdminAuthForm_disableButton_local').click(); // cy.testid('AdminAuthForm_disableButton_none').click(); + + // fill OAuth cy.contains('Add authentication').click(); cy.contains('OAuth 2.0').click(); cy.testid('AdminAuthForm_oauthAuth_oauth').type('http://localhost:16009/dex/auth'); cy.testid('AdminAuthForm_oauthToken_oauth').type('http://localhost:16009/dex/token'); - cy.testid('AdminAuthForm_oauthScope_oauth').type('openid'); + cy.testid('AdminAuthForm_oauthScope_oauth').type('openid email profile'); cy.testid('AdminAuthForm_oauthClient_oauth').type('my-app'); cy.testid('AdminAuthForm_oauthClientSecret_oauth').type('my-secret'); - cy.testid('AdminAuthForm_oauthLoginField_oauth').type('username'); - cy.contains('Save').click(); + cy.testid('AdminAuthForm_oauthLoginField_oauth').type('name'); + cy.testid('AdminAuthForm_oauthSaveNotDefinedLogins_oauth').click(); + cy.testid('AdminAuthForm_oauthEmailField_oauth').type('email'); + cy.testid('AdminAuthTab_saveButton').click(); + cy.testid('WidgetIconPanel_menu').click(); cy.contains('File').click(); cy.contains('Logout').click(); cy.testid('LoginPage_linkRegularUser').click(); - cy.testid('LoginPage_loginButton_OAuth 2.0').click(); - // login on DEX - cy.get('#login').clear().type('test@example.com'); - cy.get('#password').clear().type('test'); - cy.get('#submit-login').click(); - // test - user is logged in - cy.get('Database not selected'); + // login two times + for (let index of [1, 2]) { + // login as OAuth + cy.testid('LoginPage_loginButton_OAuth 2.0').click(); + + // login on DEX + cy.get('#login').clear().type('test@example.com'); + cy.get('#password').clear().type('test'); + cy.get('#submit-login').click(); + + // logout + cy.testid('WidgetIconPanel_menu').click(); + cy.contains('File').click(); + cy.contains('Logout').click(); + cy.testid('NotLoggedPage_loginButton').click(); + } + + // Logout and login again as admin + cy.testid('LoginPage_linkAdmin').click(); + cy.testid('LoginPage_password').type('adminpwd'); + cy.testid('LoginPage_submitLogin').click(); + cy.testid('AdminMenuWidget_itemUsers').click(); + cy.contains('test@example.com'); + cy.contains('Rows: 1'); }); }); diff --git a/packages/web/src/NotLoggedPage.svelte b/packages/web/src/NotLoggedPage.svelte index b1783226b..6bf542f1a 100644 --- a/packages/web/src/NotLoggedPage.svelte +++ b/packages/web/src/NotLoggedPage.svelte @@ -30,8 +30,8 @@ {/if}
- - + +
diff --git a/packages/web/src/buttons/ToolStripButton.svelte b/packages/web/src/buttons/ToolStripButton.svelte index 07b302207..327abea16 100644 --- a/packages/web/src/buttons/ToolStripButton.svelte +++ b/packages/web/src/buttons/ToolStripButton.svelte @@ -16,7 +16,7 @@
-
+
{#if iconAfter}