{"version":3,"file":"testing.mjs","sources":["../../../../../../../src/material/legacy-card/testing/card-harness.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {HarnessPredicate, ContentContainerComponentHarness} from '@angular/cdk/testing';\nimport {LegacyCardHarnessFilters} from './card-harness-filters';\n\n/**\n * Selectors for different sections of the mat-card that can container user content.\n * @deprecated Use `MatCardSection` from `@angular/material/card/testing` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport const enum MatLegacyCardSection {\n HEADER = '.mat-card-header',\n CONTENT = '.mat-card-content',\n ACTIONS = '.mat-card-actions',\n FOOTER = '.mat-card-footer',\n}\n\n/**\n * Harness for interacting with a standard mat-card in tests.\n * @deprecated Use `MatCardHarness` from `@angular/material/card/testing` instead. See https://material.angular.io/guide/mdc-migration for information about migrating.\n * @breaking-change 17.0.0\n */\nexport class MatLegacyCardHarness extends ContentContainerComponentHarness {\n /** The selector for the host element of a `MatCard` instance. */\n static hostSelector = '.mat-card';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatCardHarness` that meets\n * certain criteria.\n * @param options Options for filtering which card instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(options: LegacyCardHarnessFilters = {}): HarnessPredicate {\n return new HarnessPredicate(MatLegacyCardHarness, options)\n .addOption('text', options.text, (harness, text) =>\n HarnessPredicate.stringMatches(harness.getText(), text),\n )\n .addOption('title', options.title, (harness, title) =>\n HarnessPredicate.stringMatches(harness.getTitleText(), title),\n )\n .addOption('subtitle', options.subtitle, (harness, subtitle) =>\n HarnessPredicate.stringMatches(harness.getSubtitleText(), subtitle),\n );\n }\n\n private _title = this.locatorForOptional('.mat-card-title');\n private _subtitle = this.locatorForOptional('.mat-card-subtitle');\n\n /** Gets all of the card's content as text. */\n async getText(): Promise {\n return (await this.host()).text();\n }\n\n /** Gets the cards's title text. */\n async getTitleText(): Promise {\n return (await this._title())?.text() ?? '';\n }\n\n /** Gets the cards's subtitle text. */\n async getSubtitleText(): Promise {\n return (await this._subtitle())?.text() ?? '';\n }\n}\n"],"names":[],"mappings":";;AAuBA;;;;AAIG;AACG,MAAO,oBAAqB,SAAQ,gCAAsD,CAAA;AAAhG,IAAA,WAAA,GAAA;;AAuBU,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;AACpD,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;KAgBnE;;aAtCQ,IAAY,CAAA,YAAA,GAAG,WAAH,CAAe,EAAA;AAElC;;;;;AAKG;AACH,IAAA,OAAO,IAAI,CAAC,OAAA,GAAoC,EAAE,EAAA;AAChD,QAAA,OAAO,IAAI,gBAAgB,CAAC,oBAAoB,EAAE,OAAO,CAAC;aACvD,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,KAC7C,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CACxD;aACA,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,KAAK,KAChD,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,KAAK,CAAC,CAC9D;aACA,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,QAAQ,KACzD,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,QAAQ,CAAC,CACpE,CAAC;KACL;;AAMD,IAAA,MAAM,OAAO,GAAA;QACX,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC;KACnC;;AAGD,IAAA,MAAM,YAAY,GAAA;AAChB,QAAA,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC;KAC5C;;AAGD,IAAA,MAAM,eAAe,GAAA;AACnB,QAAA,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC;KAC/C;;;;;"}