Skip to main content

AccordionPanelElement

Playwright element wrapper for <vaadin-accordion-panel> offering utilities to toggle open state, read summary, and access content.

Component Tag

vaadin-accordion-panel
  • vaadin-accordion-heading - Panel heading/summary element

Constructor

locator
Locator
required
Playwright locator for the <vaadin-accordion-panel> element

Static Factory Methods

getAccordionPanelBySummary

Get an accordion panel by its summary text within a scope.
AccordionPanelElement.getAccordionPanelBySummary(Locator locator, String summary)
locator
Locator
Scope to search within (typically the accordion element)
summary
String
Panel summary heading text

getOpenedAccordionPanel

Get the currently opened accordion panel within a scope.
AccordionPanelElement.getOpenedAccordionPanel(Locator locator)
locator
Locator
Scope to search within (typically the accordion element)

Methods

isOpen

Whether the panel is open.
boolean isOpen()

setOpen

Set the open state by clicking the summary when needed.
void setOpen(boolean open)
open
boolean
Desired open state

getSummaryLocator

Locator pointing to the summary heading (vaadin-accordion-heading).
Locator getSummaryLocator()

getSummaryText

Text content of the summary heading.
String getSummaryText()

getContentLocator

Locator pointing to the first non-slotted content element.
Locator getContentLocator()

Assertion Methods

assertOpened

Assert that the panel is opened.
void assertOpened()

assertClosed

Assert that the panel is closed.
void assertClosed()

assertContentVisible

Assert that the content area is visible.
void assertContentVisible()

assertContentNotVisible

Assert that the content area is not visible.
void assertContentNotVisible()

assertEnabled

Assert that the panel is enabled.
void assertEnabled()

assertDisabled

Assert that the panel is disabled.
void assertDisabled()

Usage Examples

Basic Panel Operations

// Get panel from accordion
AccordionElement accordion = new AccordionElement(page.locator("vaadin-accordion").first());
AccordionPanelElement panel = accordion.getPanel("Panel 1");

panel.assertOpened();
panel.assertContentVisible();

Toggle Panel State

AccordionPanelElement panel = accordion.getPanel("Panel 2");
panel.assertClosed();
panel.setOpen(true);
panel.assertOpened();

Check Summary Text

AccordionPanelElement panel = accordion.getPanel("My Panel");
String summary = panel.getSummaryText();
assertEquals("My Panel", summary);

Access Panel Content

AccordionPanelElement panel = accordion.getPanel("Panel 1");
if (panel.isOpen()) {
    assertThat(panel.getContentLocator()).hasText("Content 1");
}

Work with Disabled Panel

AccordionPanelElement panel = accordion.getPanel("Disabled Panel");
panel.assertDisabled();
panel.assertClosed();

// Manual click has no effect when disabled
panel.getSummaryLocator().click();
panel.assertClosed();

Use Static Factory Methods

// Get panel directly by summary
Locator accordionLocator = page.locator("vaadin-accordion").first();
AccordionPanelElement panel = AccordionPanelElement.getAccordionPanelBySummary(
    accordionLocator, 
    "Settings"
);

// Get currently opened panel
AccordionPanelElement opened = AccordionPanelElement.getOpenedAccordionPanel(accordionLocator);
assertEquals("Panel 2", opened.getSummaryText());

Build docs developers (and LLMs) love