@@ -18,7 +18,6 @@ import { TableClass } from '../../../support/entity/TableClass';
1818import {
1919 getDefaultAdminAPIContext ,
2020 redirectToHomePage ,
21- uuid ,
2221} from '../../../utils/common' ;
2322import { waitForAllLoadersToDisappear } from '../../../utils/entity' ;
2423import {
@@ -29,149 +28,153 @@ import {
2928import { sidebarClick } from '../../../utils/sidebar' ;
3029import { test } from '../../fixtures/pages' ;
3130
32- // Create a table with '/' in the name to test encoding functionality
33- const tableNameWithSlash = `pw-table-with/slash-${ uuid ( ) } ` ;
34- const table = new TableClass ( tableNameWithSlash ) ;
35-
36- test . beforeAll ( async ( { browser } ) => {
37- const { apiContext, afterAction } = await getDefaultAdminAPIContext ( browser ) ;
38- await table . create ( apiContext ) ;
39-
40- await table . patch ( {
41- apiContext,
42- patchData : [
43- {
44- op : 'add' ,
45- value : {
46- type : 'domain' ,
47- id : EntityDataClass . domain1 . responseData . id ,
31+ let table : TableClass ;
32+
33+ test . describe . serial ( 'Platform lineage' , ( ) => {
34+ test . beforeAll ( async ( { browser } ) => {
35+ table = new TableClass ( ) ;
36+
37+ const { apiContext, afterAction } = await getDefaultAdminAPIContext (
38+ browser
39+ ) ;
40+ await table . create ( apiContext ) ;
41+
42+ await table . patch ( {
43+ apiContext,
44+ patchData : [
45+ {
46+ op : 'add' ,
47+ value : {
48+ type : 'domain' ,
49+ id : EntityDataClass . domain1 . responseData . id ,
50+ } ,
51+ path : '/domains/0' ,
4852 } ,
49- path : '/domains/0' ,
50- } ,
51- ] ,
52- } ) ;
53+ ] ,
54+ } ) ;
5355
54- await afterAction ( ) ;
55- } ) ;
56+ await afterAction ( ) ;
57+ } ) ;
5658
57- test . beforeEach ( async ( { page } ) => {
58- await redirectToHomePage ( page ) ;
59- await table . visitEntityPage ( page ) ;
60- await visitLineageTab ( page ) ;
61- await performZoomOut ( page ) ;
62- } ) ;
59+ test . beforeEach ( async ( { page } ) => {
60+ await redirectToHomePage ( page ) ;
61+ await table . visitEntityPage ( page ) ;
62+ await visitLineageTab ( page ) ;
63+ await performZoomOut ( page ) ;
64+ } ) ;
6365
64- test ( 'Verify table search with special characters as handled' , async ( {
65- page,
66- } ) => {
67- await redirectToHomePage ( page ) ;
68- const db = table . databaseResponseData . name ;
66+ test ( 'Verify table search with special characters as handled' , async ( {
67+ page,
68+ } ) => {
69+ await redirectToHomePage ( page ) ;
70+ const db = table . databaseResponseData . name ;
6971
70- await sidebarClick ( page , SidebarItem . LINEAGE ) ;
72+ await sidebarClick ( page , SidebarItem . LINEAGE ) ;
7173
72- await page . getByTestId ( 'search-entity-select' ) . waitFor ( ) ;
73- await page . getByTestId ( 'search-entity-select' ) . click ( ) ;
74+ await page . getByTestId ( 'search-entity-select' ) . waitFor ( ) ;
75+ await page . getByTestId ( 'search-entity-select' ) . click ( ) ;
7476
75- await page . fill (
76- '[data-testid="search-entity-select"] .ant-select-selection-search-input' ,
77- table . entity . name
78- ) ;
77+ await page . fill (
78+ '[data-testid="search-entity-select"] .ant-select-selection-search-input' ,
79+ table . entity . name
80+ ) ;
7981
80- await page . waitForRequest (
81- ( req ) =>
82- req . url ( ) . includes ( '/api/v1/search/query' ) &&
83- req . url ( ) . includes ( 'deleted=false' )
84- ) ;
82+ await page . waitForRequest (
83+ ( req ) =>
84+ req . url ( ) . includes ( '/api/v1/search/query' ) &&
85+ req . url ( ) . includes ( 'deleted=false' )
86+ ) ;
8587
86- await page . locator ( '.ant-select-dropdown' ) . waitFor ( ) ;
88+ await page . locator ( '.ant-select-dropdown' ) . waitFor ( ) ;
8789
88- const nodeFqn = get ( table , 'entityResponseData.fullyQualifiedName' ) ;
89- const dbFqn = get (
90- table ,
91- 'entityResponseData.database.fullyQualifiedName' ,
92- ''
93- ) ;
94- await page
95- . locator ( `[data-testid="node-suggestion-${ nodeFqn } "]` )
96- . dispatchEvent ( 'click' ) ;
90+ const nodeFqn = get ( table , 'entityResponseData.fullyQualifiedName' ) ;
91+ const dbFqn = get (
92+ table ,
93+ 'entityResponseData.database.fullyQualifiedName' ,
94+ ''
95+ ) ;
96+ await page
97+ . locator ( `[data-testid="node-suggestion-${ nodeFqn } "]` )
98+ . dispatchEvent ( 'click' ) ;
9799
98- await page . waitForResponse ( '/api/v1/lineage/getLineage?*' ) ;
100+ await page . waitForResponse ( '/api/v1/lineage/getLineage?*' ) ;
99101
100- await expect ( page . locator ( '[data-testid="lineage-details"]' ) ) . toBeVisible ( ) ;
102+ await expect ( page . locator ( '[data-testid="lineage-details"]' ) ) . toBeVisible ( ) ;
101103
102- await expect (
103- page . locator ( `[data-testid="lineage-node-${ nodeFqn } "]` )
104- ) . toBeVisible ( ) ;
104+ await expect (
105+ page . locator ( `[data-testid="lineage-node-${ nodeFqn } "]` )
106+ ) . toBeVisible ( ) ;
105107
106- await redirectToHomePage ( page ) ;
107- await sidebarClick ( page , SidebarItem . LINEAGE ) ;
108- await page . getByTestId ( 'search-entity-select' ) . waitFor ( ) ;
109- await page . click ( '[data-testid="search-entity-select"]' ) ;
108+ await redirectToHomePage ( page ) ;
109+ await sidebarClick ( page , SidebarItem . LINEAGE ) ;
110+ await page . getByTestId ( 'search-entity-select' ) . waitFor ( ) ;
111+ await page . click ( '[data-testid="search-entity-select"]' ) ;
110112
111- await page . fill (
112- '[data-testid="search-entity-select"] .ant-select-selection-search-input' ,
113- db
114- ) ;
115- await page . getByTestId ( `node-suggestion-${ dbFqn } ` ) . waitFor ( ) ;
116- await page . getByTestId ( `node-suggestion-${ dbFqn } ` ) . dispatchEvent ( 'click' ) ;
117- await page . waitForResponse ( '/api/v1/lineage/getLineage?*' ) ;
113+ await page . fill (
114+ '[data-testid="search-entity-select"] .ant-select-selection-search-input' ,
115+ db
116+ ) ;
117+ await page . getByTestId ( `node-suggestion-${ dbFqn } ` ) . waitFor ( ) ;
118+ await page . getByTestId ( `node-suggestion-${ dbFqn } ` ) . dispatchEvent ( 'click' ) ;
119+ await page . waitForResponse ( '/api/v1/lineage/getLineage?*' ) ;
118120
119- await expect ( page . getByTestId ( 'lineage-details' ) ) . toBeVisible ( ) ;
121+ await expect ( page . getByTestId ( 'lineage-details' ) ) . toBeVisible ( ) ;
120122
121- await clickLineageNode ( page , dbFqn ) ;
123+ await clickLineageNode ( page , dbFqn ) ;
122124
123- await expect (
124- page . locator ( '.lineage-entity-panel' ) . getByTestId ( 'entity-header-title' )
125- ) . toBeVisible ( ) ;
126- } ) ;
125+ await expect (
126+ page . locator ( '.lineage-entity-panel' ) . getByTestId ( 'entity-header-title' )
127+ ) . toBeVisible ( ) ;
128+ } ) ;
127129
128- test ( 'Verify service platform view' , async ( { page } ) => {
129- await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
130+ test ( 'Verify service platform view' , async ( { page } ) => {
131+ await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
130132
131- const serviceBtn = page . getByTestId ( 'lineage-layer-service-btn' ) ;
132- await expect ( serviceBtn ) . toBeVisible ( ) ;
133+ const serviceBtn = page . getByTestId ( 'lineage-layer-service-btn' ) ;
134+ await expect ( serviceBtn ) . toBeVisible ( ) ;
133135
134- await serviceBtn . click ( ) ;
135- await page . keyboard . press ( 'Escape' ) ;
136+ await serviceBtn . click ( ) ;
137+ await page . keyboard . press ( 'Escape' ) ;
136138
137- await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
138- await expect ( serviceBtn ) . toHaveClass ( / M u i - s e l e c t e d / ) ;
139- } ) ;
139+ await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
140+ await expect ( serviceBtn ) . toHaveClass ( / M u i - s e l e c t e d / ) ;
141+ } ) ;
140142
141- test ( 'Verify domain platform view' , async ( { page } ) => {
142- await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
143+ test ( 'Verify domain platform view' , async ( { page } ) => {
144+ await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
143145
144- const domainBtn = page . getByTestId ( 'lineage-layer-domain-btn' ) ;
145- await expect ( domainBtn ) . toBeVisible ( ) ;
146+ const domainBtn = page . getByTestId ( 'lineage-layer-domain-btn' ) ;
147+ await expect ( domainBtn ) . toBeVisible ( ) ;
146148
147- await domainBtn . click ( ) ;
148- await page . keyboard . press ( 'Escape' ) ;
149+ await domainBtn . click ( ) ;
150+ await page . keyboard . press ( 'Escape' ) ;
149151
150- await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
151- await expect ( domainBtn ) . toHaveClass ( / M u i - s e l e c t e d / ) ;
152+ await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
153+ await expect ( domainBtn ) . toHaveClass ( / M u i - s e l e c t e d / ) ;
152154
153- await page . keyboard . press ( 'Escape' ) ;
155+ await page . keyboard . press ( 'Escape' ) ;
154156
155- await waitForAllLoadersToDisappear ( page ) ;
156- } ) ;
157+ await waitForAllLoadersToDisappear ( page ) ;
158+ } ) ;
157159
158- test ( 'Verify platform view switching' , async ( { page } ) => {
159- await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
160+ test ( 'Verify platform view switching' , async ( { page } ) => {
161+ await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
160162
161- const serviceBtn = page . getByTestId ( 'lineage-layer-service-btn' ) ;
162- const domainBtn = page . getByTestId ( 'lineage-layer-domain-btn' ) ;
163+ const serviceBtn = page . getByTestId ( 'lineage-layer-service-btn' ) ;
164+ const domainBtn = page . getByTestId ( 'lineage-layer-domain-btn' ) ;
163165
164- await serviceBtn . click ( ) ;
165- await page . keyboard . press ( 'Escape' ) ;
166+ await serviceBtn . click ( ) ;
167+ await page . keyboard . press ( 'Escape' ) ;
166168
167- await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
168- await expect ( serviceBtn ) . toHaveClass ( / M u i - s e l e c t e d / ) ;
169- await expect ( domainBtn ) . not . toHaveClass ( / M u i - s e l e c t e d / ) ;
169+ await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
170+ await expect ( serviceBtn ) . toHaveClass ( / M u i - s e l e c t e d / ) ;
171+ await expect ( domainBtn ) . not . toHaveClass ( / M u i - s e l e c t e d / ) ;
170172
171- await domainBtn . click ( ) ;
172- await page . keyboard . press ( 'Escape' ) ;
173+ await domainBtn . click ( ) ;
174+ await page . keyboard . press ( 'Escape' ) ;
173175
174- await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
175- await expect ( domainBtn ) . toHaveClass ( / M u i - s e l e c t e d / ) ;
176- await expect ( serviceBtn ) . not . toHaveClass ( / M u i - s e l e c t e d / ) ;
176+ await page . getByTestId ( 'lineage-layer-btn' ) . click ( ) ;
177+ await expect ( domainBtn ) . toHaveClass ( / M u i - s e l e c t e d / ) ;
178+ await expect ( serviceBtn ) . not . toHaveClass ( / M u i - s e l e c t e d / ) ;
179+ } ) ;
177180} ) ;
0 commit comments