Implement adding component to empty layout without dnd

Created on 17 January 2025, 5 months ago

Overview

We need this for accessibility, but it also provides a way to add components in e2e tests without needing to replicate drag and drop, something that is prone to intermittent fails.

Proposed resolution

  • Provide a way to add components to an empty layout without drag and drop
  • Refactor e2e tests that use drag and drop for this to use the new interaction. If those tests are skipped, they should be unskipped as part of this MR

User interface changes

πŸ“Œ Task
Status

Active

Version

0.0

Component

Page builder

Created by

πŸ‡ΊπŸ‡ΈUnited States bnjmnm Ann Arbor, MI

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

  • Issue created by @bnjmnm
  • Merge request !568#3500542 avoid dnd in e2e lol β†’ (Merged) created by bnjmnm
  • πŸ‡ΊπŸ‡ΈUnited States bnjmnm Ann Arbor, MI

    This brings back every skip added in πŸ› Temporarily skip intermittently failing e2e tests Active , and I've rerun the Cypress tests many times and they pass every time.

    • components-operations, empty-canvas and publish-button now add a component to the empty layout by clicking the component instead of dragging it. (turns out the UI already does this! Just no affordance to make it evident)
    • global-regions was unskipped but no changes as the drag and drop operation is never in the canvas area. Seems to be passing
    • The skip added in components-slots earlier today was removed, but only because a skip is already present on the higher level describe() that was added last month. The scope of this issue is only to remove skips added in #3500549
  • πŸ‡¦πŸ‡ΊAustralia larowlan πŸ‡¦πŸ‡ΊπŸ.au GMT+10
  • πŸ‡§πŸ‡ͺBelgium wim leers Ghent πŸ‡§πŸ‡ͺπŸ‡ͺπŸ‡Ί
  • Pipeline finished with Skipped
    5 months ago
    #400649
  • πŸ‡§πŸ‡ͺBelgium wim leers Ghent πŸ‡§πŸ‡ͺπŸ‡ͺπŸ‡Ί

    πŸ₯³ for more reliable tests! (And running the entire test suite again.)

  • πŸ‡§πŸ‡ͺBelgium wim leers Ghent πŸ‡§πŸ‡ͺπŸ‡ͺπŸ‡Ί

    This restored all tests that πŸ› Temporarily skip intermittently failing e2e tests Active temporarily skipped.

  • πŸ‡§πŸ‡ͺBelgium wim leers Ghent πŸ‡§πŸ‡ͺπŸ‡ͺπŸ‡Ί

    FYI: when this was merged, component-operations.cy.js failed during the 0.x test run πŸ™ˆ But it failed ~20 LoC earlier than the change here.

    Failure:

          cy:command βœ”  click	
            cy:fetch ➟  GET http://localhost/web/xb/api/config/pattern
                        Status: 200
          cy:command βœ”  get	.primaryPanelContent
          cy:command βœ”  within	
          cy:command βœ”  findByText	Sections
          cy:command βœ”  click	{force: true, scrollbehavior: false}
          cy:command ✘  findByText	The Entire Node 1
          cy:command ✘  assert	expected **findByText(`The Entire Node 1`)** to exist in the DOM
                        Actual: 	"findByText(`The Entire Node 1`)"
                        Expected: 	"findByText(`The Entire Node 1`)"
    

    Relevant test code:

        cy.openLibraryPanel();
        cy.get('.primaryPanelContent').within(() => {
          cy.findByText('Sections').click(clickDefault);
          cy.findByText('The Entire Node 1').should('exist');
        });
        cy.get('.primaryPanelContent')
          .as('panel')
          .should('contain.text', 'The Entire Node 1');
    
  • Automatically closed - issue fixed for 2 weeks with no activity.

  • Issue was unassigned.
  • Status changed to Fixed 4 days ago
  • πŸ‡§πŸ‡ͺBelgium wim leers Ghent πŸ‡§πŸ‡ͺπŸ‡ͺπŸ‡Ί

    Closed πŸ“Œ Remove pause() call in Cypress editHeroComponent command Active thanks to this :)

Production build 0.71.5 2024