@@ -4,11 +4,12 @@ test.describe('map change event test ', () => {
44 let page ;
55 let context ;
66 test . beforeAll ( async ( ) => {
7- context = await chromium . launchPersistentContext ( '' ) ;
7+ context = await chromium . launchPersistentContext ( '' , { headless : false } ) ;
88 page =
99 context . pages ( ) . find ( ( page ) => page . url ( ) === 'about:blank' ) ||
1010 ( await context . newPage ( ) ) ;
1111 await page . goto ( 'events/map-change-event.html' ) ;
12+ await page . waitForTimeout ( 1000 ) ;
1213 } ) ;
1314
1415 test . afterAll ( async function ( ) {
@@ -23,6 +24,7 @@ test.describe('map change event test ', () => {
2324 }
2425 } ) ;
2526
27+ // check and uncheck layers in the DOM
2628 await page . evaluate ( ( ) => {
2729 const layer = document . querySelector ( 'map-layer' ) ;
2830 layer . addEventListener ( 'map-change' , ( ) => {
@@ -31,9 +33,26 @@ test.describe('map change event test ', () => {
3133 layer . checked = false ;
3234 layer . checked = true ;
3335 } ) ;
34-
3536 await page . waitForTimeout ( 500 ) ;
3637 expect ( layerClicked ) . toBe ( 2 ) ;
38+
39+ // check and uncheck layers using removeAttribute and setAttribute
40+ await page . evaluate ( ( ) => {
41+ const layer = document . querySelector ( 'map-layer' ) ;
42+ layer . removeAttribute ( 'checked' ) ;
43+ layer . setAttribute ( 'checked' , '' ) ;
44+ } ) ;
45+ await page . waitForTimeout ( 500 ) ;
46+ expect ( layerClicked ) . toBe ( 4 ) ;
47+
48+ // check and uncheck layers in the layer menu
49+ await page . hover ( '.leaflet-top.leaflet-right' ) ;
50+ const button = await page . locator ( '.leaflet-control-layers-selector' ) ;
51+ await button . click ( ) ;
52+ await button . click ( ) ;
53+
54+ await page . waitForTimeout ( 500 ) ;
55+ expect ( layerClicked ) . toBe ( 6 ) ;
3756 } ) ;
3857
3958 test ( 'Map change event for sub-layers work' , async ( ) => {
@@ -44,6 +63,7 @@ test.describe('map change event test ', () => {
4463 }
4564 } ) ;
4665
66+ // check and uncheck extents in the DOM
4767 await page . evaluate ( ( ) => {
4868 const extent = document . querySelector ( 'map-extent' ) ;
4969 extent . addEventListener ( 'map-change' , ( ) => {
@@ -52,8 +72,28 @@ test.describe('map change event test ', () => {
5272 extent . checked = false ;
5373 extent . checked = true ;
5474 } ) ;
55-
5675 await page . waitForTimeout ( 500 ) ;
5776 expect ( extentClicked ) . toBe ( 2 ) ;
77+
78+ // check and uncheck layers using removeAttribute and setAttribute
79+ await page . evaluate ( ( ) => {
80+ const extent = document . querySelector ( 'map-extent' ) ;
81+ extent . removeAttribute ( 'checked' ) ;
82+ extent . setAttribute ( 'checked' , '' ) ;
83+ } ) ;
84+ await page . waitForTimeout ( 500 ) ;
85+ expect ( extentClicked ) . toBe ( 4 ) ;
86+
87+ // check and uncheck extents in the layer menu
88+ const layerSettings = await page . locator ( '.mapml-layer-item-settings-control' ) ;
89+ await page . hover ( '.leaflet-top.leaflet-right' ) ;
90+ await layerSettings . first ( ) . click ( ) ;
91+ const extentControls = await page . locator ( '.mapml-layer-extent' ) ;
92+ const button = await extentControls . locator ( '.mapml-layer-item-toggle' ) ;
93+ await button . click ( ) ;
94+ await button . click ( ) ;
95+
96+ await page . waitForTimeout ( 500 ) ;
97+ expect ( extentClicked ) . toBe ( 6 ) ;
5898 } ) ;
5999} ) ;
0 commit comments