From e829ab8fce6e3f4f5f76c4b33e3fbaee36737d52 Mon Sep 17 00:00:00 2001 From: Andrew Seguin Date: Fri, 11 Aug 2023 15:25:47 -0600 Subject: [PATCH] fix(material/menu): fix harness test --- src/material/menu/testing/menu-harness.ts | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/material/menu/testing/menu-harness.ts b/src/material/menu/testing/menu-harness.ts index c5328ef3d9bd..3539bc5bb758 100644 --- a/src/material/menu/testing/menu-harness.ts +++ b/src/material/menu/testing/menu-harness.ts @@ -19,6 +19,8 @@ import {MenuHarnessFilters, MenuItemHarnessFilters} from './menu-harness-filters /** Harness for interacting with an MDC-based mat-menu in tests. */ export class MatMenuHarness extends ContentContainerComponentHarness { + private _documentRootLocator = this.documentRootLocatorFactory(); + /** The selector for the host element of a `MatMenu` instance. */ static hostSelector = '.mat-mdc-menu-trigger'; @@ -38,11 +40,6 @@ export class MatMenuHarness extends ContentContainerComponentHarness { ); } - private _documentRootLocator = this.documentRootLocatorFactory(); - private _itemClass = MatMenuItemHarness; - - // TODO: potentially extend MatLegacyButtonHarness - /** Whether the menu is disabled. */ async isDisabled(): Promise { const disabled = (await this.host()).getAttribute('disabled'); @@ -99,7 +96,7 @@ export class MatMenuHarness extends ContentContainerComponentHarness { const panelId = await this._getPanelId(); if (panelId) { return this._documentRootLocator.locatorForAll( - this._itemClass.with({ + MatMenuItemHarness.with({ ...(filters || {}), ancestor: `#${panelId}`, } as MenuItemHarnessFilters), @@ -134,7 +131,7 @@ export class MatMenuHarness extends ContentContainerComponentHarness { if (!menu) { throw Error(`Item matching ${JSON.stringify(itemFilter)} does not have a submenu`); } - return menu.clickItem(subItemFilters as Omit); + return menu.clickItem(...(subItemFilters as [Omit])); } protected override async getRootHarnessLoader(): Promise {