diff --git a/tests/cypress/tests-e2e/3d/layers.cy.js b/tests/cypress/tests-e2e/3d/layers.cy.js index 4343b7729..d2fd964dd 100644 --- a/tests/cypress/tests-e2e/3d/layers.cy.js +++ b/tests/cypress/tests-e2e/3d/layers.cy.js @@ -241,39 +241,24 @@ describe('Test of layer handling in 3D', () => { expect(provider?.url).to.contain('test.background.layer_3d') }) }) - - // TODO: PB-284 This test is flaky and not always pass on the CI (but is working locally). - // re-enable the test and modify it to test the feature selection instead of cesium internal - it.skip('add KML layer from drawing', () => { + it('add KML layer from drawing', () => { cy.goToDrawing() cy.clickDrawingTool(EditableFeatureTypes.LINEPOLYGON) - const olSelector = '.ol-viewport' - // Create a line - cy.get(olSelector).click(100, 200) - cy.get(olSelector).click(150, 200) - cy.get(olSelector).should('be.visible').dblclick(120, 240, { force: true }) + cy.get('[data-cy="ol-map"]').click(100, 250) + cy.get('[data-cy="ol-map"]').click(150, 250) + cy.get('[data-cy="ol-map"]').dblclick(150, 280) + cy.clickDrawingTool(EditableFeatureTypes.MARKER) - cy.readWindowValue('map').then((map) => { - // Create a point - cy.simulateEvent(map, 'pointermove', 0, 0) - cy.simulateEvent(map, 'pointerdown', 0, 0) - cy.simulateEvent(map, 'pointerup', 0, 0) - }) + cy.get('[data-cy="ol-map"]').click() + cy.get('[data-cy="drawing-style-feature-title"]').type('This is a title') cy.wait('@post-kml') cy.closeDrawingMode() cy.closeMenuIfMobile() cy.get('[data-cy="3d-button"]').click() cy.waitUntilCesiumTilesLoaded() - cy.readWindowValue('cesiumViewer').then((viewer) => { - // main collection - cy.wrap(viewer.scene.primitives.get(0)).should('have.length', 1) - // layer collection - // should be 3 (line, icon, text) but ol-cesium creates additional empty collection - cy.wrap(viewer.scene.primitives.get(0).get(0), { timeout: 10000 }).should( - 'have.length', - 4 - ) + cy.readWindowValue('cesiumViewer').should((viewer) => { + expect(viewer.dataSources.length).to.eq(1) }) }) })