12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- import { ContentContainerComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
- /** Harness for interacting with a `mat-option` in tests. */
- class MatOptionHarness extends ContentContainerComponentHarness {
- /** Selector used to locate option instances. */
- static hostSelector = '.mat-mdc-option';
- /** Element containing the option's text. */
- _text = this.locatorFor('.mdc-list-item__primary-text');
- /**
- * Gets a `HarnessPredicate` that can be used to search for an option with specific attributes.
- * @param options Options for filtering which option instances are considered a match.
- * @return a `HarnessPredicate` configured with the given options.
- */
- static with(options = {}) {
- return new HarnessPredicate(this, options)
- .addOption('text', options.text, async (harness, title) => HarnessPredicate.stringMatches(await harness.getText(), title))
- .addOption('isSelected', options.isSelected, async (harness, isSelected) => (await harness.isSelected()) === isSelected);
- }
- /** Clicks the option. */
- async click() {
- return (await this.host()).click();
- }
- /** Gets the option's label text. */
- async getText() {
- return (await this._text()).text();
- }
- /** Gets whether the option is disabled. */
- async isDisabled() {
- return (await this.host()).hasClass('mdc-list-item--disabled');
- }
- /** Gets whether the option is selected. */
- async isSelected() {
- return (await this.host()).hasClass('mdc-list-item--selected');
- }
- /** Gets whether the option is active. */
- async isActive() {
- return (await this.host()).hasClass('mat-mdc-option-active');
- }
- /** Gets whether the option is in multiple selection mode. */
- async isMultiple() {
- return (await this.host()).hasClass('mat-mdc-option-multiple');
- }
- }
- export { MatOptionHarness as M };
- //# sourceMappingURL=option-harness-BFcc-M_4.mjs.map
|