diff --git a/tests/sanity/tests/model/workspace/owner-pages.ts b/tests/sanity/tests/model/workspace/owner-pages.ts index e69c398e6c..13fed7ba5f 100644 --- a/tests/sanity/tests/model/workspace/owner-pages.ts +++ b/tests/sanity/tests/model/workspace/owner-pages.ts @@ -28,6 +28,12 @@ export class OwnersPage { emailMask = (): Locator => this.page.getByRole('textbox', { name: 'Type text...' }) noLimitToggleButton = (): Locator => this.page.locator('label span') avatarLarge = (): Locator => this.page.locator('.hulyAvatarSize-medium.ava-image') + updateWorkspaceNameButton = (): Locator => this.page.locator('.ws > .antiButton') + confirmUpdateWorkspaceName = (): Locator => this.page.locator('.ws > button').first() + inputWorkspaceName = (): Locator => this.page.getByPlaceholder('Workspace name') + deleteWorkspaceButton = (): Locator => this.page.getByRole('button', { name: 'Delete workspace' }) + cancelDeleteWorkspace = (): Locator => this.page.getByRole('button', { name: 'Cancel' }) + confirmDeleteWorkspace = (): Locator => this.page.getByRole('button', { name: 'Ok' }) async addMember (memberName: string): Promise { await expect(this.spacesAdminText()).toBeVisible() @@ -74,4 +80,19 @@ export class OwnersPage { await expect(this.avatarLarge()).toBeVisible() await expect(this.avatarLarge()).toHaveAttribute('src') } + + async updateWorkspaceName (newName: string): Promise { + await this.updateWorkspaceNameButton().click() + await this.inputWorkspaceName().fill(newName) + await this.confirmUpdateWorkspaceName().click() + await expect(this.inputWorkspaceName()).toHaveValue(newName) + } + + async deleteWorkspace (): Promise { + await this.deleteWorkspaceButton().click() + await this.cancelDeleteWorkspace().click() + await this.deleteWorkspaceButton().click() + await this.confirmDeleteWorkspace().click() + await expect(this.page.getByText('Select workspace')).toBeVisible(); + } } diff --git a/tests/sanity/tests/workspace/workspace-settings.spec.ts b/tests/sanity/tests/workspace/workspace-settings.spec.ts index c74fc2f959..7f1cf4ea58 100644 --- a/tests/sanity/tests/workspace/workspace-settings.spec.ts +++ b/tests/sanity/tests/workspace/workspace-settings.spec.ts @@ -164,4 +164,41 @@ test.describe('Workspace tests', () => { await workspaceSettingsPage.selectWorkspaceSettingsTab(ButtonType.InviteSettings) await ownersPage.createEnumWithName(enumTitle, enumName) }) + + test('User is able to update workspace name', async ({ page }) => { + newUser = { + firstName: faker.person.firstName(), + lastName: faker.person.lastName(), + email: faker.internet.email(), + password: '1234' + } + const newWorkspaceName = `New Workspace Name - ${generateId(2)}` + const updatedWorkspaceName = `Updated Workspace Name - ${generateId(3)}` + await loginPage.goto() + await loginPage.linkSignUp().click() + await signUpPage.signUp(newUser) + await selectWorkspacePage.createWorkspace(newWorkspaceName) + await userProfilePage.openProfileMenu() + await userProfilePage.clickSettings() + await workspaceSettingsPage.selectWorkspaceSettingsTab(ButtonType.General) + await ownersPage.updateWorkspaceName(updatedWorkspaceName) + }) + + test('User is able to delete workspace', async ({ page }) => { + newUser = { + firstName: faker.person.firstName(), + lastName: faker.person.lastName(), + email: faker.internet.email(), + password: '1234' + } + const newWorkspaceName = `New Workspace Name - ${generateId(2)}` + await loginPage.goto() + await loginPage.linkSignUp().click() + await signUpPage.signUp(newUser) + await selectWorkspacePage.createWorkspace(newWorkspaceName) + await userProfilePage.openProfileMenu() + await userProfilePage.clickSettings() + await workspaceSettingsPage.selectWorkspaceSettingsTab(ButtonType.General) + await ownersPage.deleteWorkspace() + }) })