Skip to content

Commit 40734b8

Browse files
committed
test: migrate breadcrumb.feature to playwright
Signed-off-by: Kavita Gautam <kavita@jankaritech.com>
1 parent 0ac444b commit 40734b8

11 files changed

Lines changed: 159 additions & 46 deletions

File tree

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
import { test } from '@playwright/test'
2+
import { config } from '../../../e2e/config.js'
3+
import { ActorsEnvironment, UsersEnvironment } from '../../../e2e/support/environment'
4+
import { setAccessAndRefreshToken } from '../../helpers/setAccessAndRefreshToken.js'
5+
import * as ui from '../../steps/ui/index'
6+
import * as api from '../../steps/api/api'
7+
8+
test.describe('Access breadcrumb', { tag: '@predefined-users' }, () => {
9+
let actorsEnvironment
10+
const usersEnvironment = new UsersEnvironment()
11+
12+
test.beforeEach(async ({ browser }) => {
13+
actorsEnvironment = new ActorsEnvironment({
14+
context: {
15+
acceptDownloads: config.acceptDownloads,
16+
reportDir: config.reportDir,
17+
tracingReportDir: config.tracingReportDir,
18+
reportHar: config.reportHar,
19+
reportTracing: config.reportTracing,
20+
reportVideo: config.reportVideo,
21+
failOnUncaughtConsoleError: config.failOnUncaughtConsoleError
22+
},
23+
browser: browser
24+
})
25+
26+
await setAccessAndRefreshToken(usersEnvironment)
27+
await api.userHasBeenCreated({ usersEnvironment, stepUser: 'Admin', userToBeCreated: 'Alice' })
28+
await ui.logInUser({ usersEnvironment, actorsEnvironment, stepUser: 'Alice' })
29+
})
30+
31+
test.afterEach(async () => {
32+
// clean up users
33+
await api.deleteUser({ usersEnvironment, stepUser: 'Admin', targetUser: 'Alice' })
34+
})
35+
36+
test('Breadcrumb navigation', async () => {
37+
await ui.userCreatesResources({
38+
actorsEnvironment,
39+
stepUser: 'Alice',
40+
type: 'folder',
41+
resource: 'parent/folder%2Fwith%2FSlashes'
42+
})
43+
await ui.userOpensResources({
44+
actorsEnvironment,
45+
stepUser: 'Alice',
46+
resource: 'parent/folder%2Fwith%2FSlashes'
47+
})
48+
await ui.userCreatesResources({
49+
actorsEnvironment,
50+
stepUser: 'Alice',
51+
type: 'folder',
52+
resource: `'single-double quotes"`
53+
})
54+
await ui.userOpensResources({
55+
actorsEnvironment,
56+
stepUser: 'Alice',
57+
resource: `'single-double quotes"`
58+
})
59+
await ui.userCreatesResources({
60+
actorsEnvironment,
61+
stepUser: 'Alice',
62+
type: 'folder',
63+
resource: `"inner" double quote`
64+
})
65+
await ui.userOpensResources({
66+
actorsEnvironment,
67+
stepUser: 'Alice',
68+
resource: `"inner" double quote`
69+
})
70+
await ui.userCreatesResources({
71+
actorsEnvironment,
72+
stepUser: 'Alice',
73+
type: 'folder',
74+
resource: 'sub-folder'
75+
})
76+
await ui.userOpensResources({
77+
actorsEnvironment,
78+
stepUser: 'Alice',
79+
resource: 'sub-folder'
80+
})
81+
await ui.userNavigatesToFolderViaBreadcrumb({
82+
actorsEnvironment,
83+
stepUser: 'Alice',
84+
resource: `"inner" double quote`
85+
})
86+
await ui.userNavigatesToFolderViaBreadcrumb({
87+
actorsEnvironment,
88+
stepUser: 'Alice',
89+
resource: `'single-double quotes"`
90+
})
91+
await ui.userNavigatesToFolderViaBreadcrumb({
92+
actorsEnvironment,
93+
stepUser: 'Alice',
94+
resource: 'folder%2Fwith%2FSlashes'
95+
})
96+
await ui.userNavigatesToFolderViaBreadcrumb({
97+
actorsEnvironment,
98+
stepUser: 'Alice',
99+
resource: 'parent'
100+
})
101+
await ui.logOutUser({ actorsEnvironment, stepUser: 'Alice' })
102+
})
103+
})
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
######################################################################
2+
# USED FOR CI ONLY #
3+
# Run the test suite only if the changes are in the listed packages. #
4+
# #
5+
# List of web packages that affect this test suite. #
6+
######################################################################
7+
8+
web-app-files
9+
web-app-preview

tests/e2e-playwright/specs/oidc/iframeTokenRenewal.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ test.describe('details', () => {
7878
// And "Alice" creates the following resources
7979
// | resource | type |
8080
// | space-folder | folder |
81-
await ui.createResource({
81+
await ui.userCreatesResources({
8282
actorsEnvironment,
8383
stepUser: 'Alice',
8484
resource: 'space-folder',

tests/e2e-playwright/specs/oidc/refreshToken.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ test.describe('details', () => {
7979
// And "Alice" creates the following resources
8080
// | resource | type |
8181
// | space-folder | folder |
82-
await ui.createResource({
82+
await ui.userCreatesResources({
8383
actorsEnvironment,
8484
stepUser: 'Alice',
8585
resource: 'space-folder',
@@ -112,7 +112,7 @@ test.describe('details', () => {
112112
// And "Alice" creates the following resources
113113
// | resource | type | content |
114114
// | PARENT/parent.txt | txtFile | some text |
115-
await ui.createResource({
115+
await ui.userCreatesResources({
116116
actorsEnvironment,
117117
stepUser: 'Alice',
118118
resource: 'PARENT/parent.txt',

tests/e2e-playwright/specs/search/searchProjectSpace.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ test.describe('Search in the project space', () => {
5353

5454
await ui.navigateToSpace({ actorsEnvironment, stepUser: 'Alice', space: 'team.1' })
5555

56-
await ui.createResource({
56+
await ui.userCreatesResources({
5757
actorsEnvironment,
5858
stepUser: 'Alice',
5959
resource: 'folder(WithSymbols:!;_+-&)',

tests/e2e-playwright/specs/shares/denyShareAccess.spec.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ test.describe('deny share access', () => {
5555
resourceType: 'folder'
5656
})
5757

58-
await ui.openResource({
58+
await ui.userOpensResources({
5959
actorsEnvironment,
6060
stepUser: 'Alice',
6161
resource: 'folder_to_shared'
@@ -89,7 +89,7 @@ test.describe('deny share access', () => {
8989
})
9090

9191
await ui.navigateToSharedWithMePage({ actorsEnvironment, stepUser: 'Brian' })
92-
await ui.openResource({
92+
await ui.userOpensResources({
9393
actorsEnvironment,
9494
stepUser: 'Brian',
9595
resource: 'folder_to_shared'
@@ -109,7 +109,7 @@ test.describe('deny share access', () => {
109109
name: 'files'
110110
})
111111

112-
await ui.openResource({
112+
await ui.userOpensResources({
113113
actorsEnvironment,
114114
stepUser: 'Alice',
115115
resource: 'folder_to_shared'
@@ -126,7 +126,7 @@ test.describe('deny share access', () => {
126126
})
127127
await ui.userOpensApplication({ actorsEnvironment, stepUser: 'Brian', name: 'files' })
128128
await ui.navigateToSharedWithMePage({ actorsEnvironment, stepUser: 'Brian' })
129-
await ui.openResource({
129+
await ui.userOpensResources({
130130
actorsEnvironment,
131131
stepUser: 'Brian',
132132
resource: 'folder_to_shared'

tests/e2e-playwright/specs/spaces/pagination.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ test.describe('check files pagination in project space', () => {
126126
})
127127

128128
// When "Alice" opens file "testfile45.txt"
129-
await ui.openResource({
129+
await ui.userOpensResources({
130130
actorsEnvironment,
131131
stepUser: 'Alice',
132132
resource: 'testfile45.txt'

tests/e2e-playwright/specs/user-settings/tiles.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,13 +53,13 @@ test.describe('tiles view', { tag: '@predefined-users' }, () => {
5353
stepUser: 'Alice'
5454
})
5555
// And "Alice" opens folder "tile_folder"
56-
await ui.openResource({
56+
await ui.userOpensResources({
5757
actorsEnvironment,
5858
stepUser: 'Alice',
5959
resource: 'tile_folder'
6060
})
6161
// And "Alice" creates the following resources
62-
await ui.createResource({
62+
await ui.userCreatesResources({
6363
actorsEnvironment,
6464
stepUser: 'Alice',
6565
type: 'folder',

tests/e2e-playwright/steps/ui/resources.ts

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ export async function isAbleToEditFileOrFolder({
5353
return userCanEdit
5454
}
5555

56-
export async function createResource({
56+
export async function userCreatesResources({
5757
actorsEnvironment,
5858
stepUser,
5959
resource,
@@ -128,7 +128,7 @@ export async function shouldSeeResourcesAsTiles({
128128
await resourceObject.expectThatResourcesAreTiles()
129129
}
130130

131-
export async function openResource({
131+
export async function userOpensResources({
132132
actorsEnvironment,
133133
stepUser,
134134
resource
@@ -327,3 +327,17 @@ export async function userCreatesSpaceFromResourcesUsingContexMenu({
327327
space: { name: space.name, id: space.id }
328328
})
329329
}
330+
331+
export async function userNavigatesToFolderViaBreadcrumb({
332+
actorsEnvironment,
333+
stepUser,
334+
resource
335+
}: {
336+
actorsEnvironment: ActorsEnvironment
337+
stepUser: string
338+
resource: string
339+
}): Promise<void> {
340+
const { page } = actorsEnvironment.getActor({ key: stepUser })
341+
const resourceObject = new objects.applicationFiles.Resource({ page })
342+
await resourceObject.openFolderViaBreadcrumb(resource)
343+
}

tests/e2e/cucumber/features/navigation/breadcrumb.feature

Lines changed: 0 additions & 33 deletions
This file was deleted.

0 commit comments

Comments
 (0)