Spec-Zone.ru › Angular

ContentContainerComponentHarness

Базовый класс для тестовых оболочек компонентов, от которого следует наследоваться, если предполагается, что пользователям оболочки может потребоваться доступ к другим оболочкам внутри <ng-content> компонента.

API

abstract class ContentContainerComponentHarness<S extends string = string> extends ComponentHarness implements HarnessLoader {
  getChildLoader(selector: S): Promise<HarnessLoader>;
  getAllChildLoaders(selector: S): Promise<HarnessLoader[]>;
  getHarness<T extends ComponentHarness>(query: HarnessQuery<T>): Promise<T>;
  getHarnessOrNull<T extends ComponentHarness>(query: HarnessQuery<T>): Promise<T | null>;
  getHarnessAtIndex<T extends ComponentHarness>(query: HarnessQuery<T>, index: number): Promise<T>;
  getAllHarnesses<T extends ComponentHarness>(query: HarnessQuery<T>): Promise<T[]>;
  countHarnesses<T extends ComponentHarness>(query: HarnessQuery<T>): Promise<number>;
  hasHarness<T extends ComponentHarness>(query: HarnessQuery<T>): Promise<boolean>;
  protected getRootHarnessLoader(): Promise<HarnessLoader>;
  override host(): Promise<TestElement>;
  protected override documentRootLocatorFactory(): LocatorFactory;
  protected override locatorFor<T extends (HarnessQuery<any> | string)[]>(...queries: T): () => Promise<LocatorFnResult<T>>;
  protected override locatorForOptional<T extends (HarnessQuery<any> | string)[]>(...queries: T): () => Promise<LocatorFnResult<T> | null>;
  protected override locatorForAll<T extends (HarnessQuery<any> | string)[]>(...queries: T): () => Promise<LocatorFnResult<T>[]>;
  protected override forceStabilize(): Promise<void>;
  protected override waitForTasksOutsideAngular(): Promise<void>;
}

getChildLoader

Promise<HarnessLoader>

Возвращает HarnessLoader, который ищет тестовые оболочки под первым элементом, соответствующим заданному селектору в содержимом текущей тестовой оболочки.

@paramselectorS

Селектор элемента в содержимом компонента.

@returnsPromise<HarnessLoader>

HarnessLoader, который ищет тестовые оболочки под заданным селектором.

getAllChildLoaders

Promise<HarnessLoader[]>

Возвращает список HarnessLoader для каждого элемента в содержимом текущей тестовой оболочки, соответствующего заданному селектору; каждый из них ищет тестовые оболочки под этим элементом.

@paramselectorS

Селектор элементов в содержимом компонента.

@returnsPromise<HarnessLoader[]>

Список HarnessLoader для каждого элемента, соответствующего заданному селектору.

getHarness

Promise<T>

Возвращает первую тестовую оболочку, соответствующую заданному запросу в содержимом текущей тестовой оболочки.

@paramqueryHarnessQuery<T>

Запрос для поиска тестовой оболочки.

@returnsPromise<T>

Первая тестовая оболочка, соответствующая заданному запросу.

getHarnessOrNull

Promise<T | null>

Возвращает первую тестовую оболочку, соответствующую заданному запросу в содержимом текущей тестовой оболочки.

@paramqueryHarnessQuery<T>

Запрос для поиска тестовой оболочки.

@returnsPromise<T | null>

Первая тестовая оболочка, соответствующая заданному запросу, или null, если совпадений нет.

getHarnessAtIndex

Promise<T>

Возвращает тестовую оболочку, соответствующую заданному запросу и индексу в содержимом текущей тестовой оболочки.

@paramqueryHarnessQuery<T>

Запрос для поиска тестовой оболочки.

@paramindexnumber

Смещение компонента, который нужно найти, начиная с нуля.

@returnsPromise<T>

Первая тестовая оболочка, соответствующая заданному запросу.

getAllHarnesses

Promise<T[]>

Возвращает все тестовые оболочки, соответствующие заданному запросу в содержимом текущей тестовой оболочки.

@paramqueryHarnessQuery<T>

Запрос для поиска тестовой оболочки.

@returnsPromise<T[]>

Список тестовых оболочек, соответствующих заданному запросу.

countHarnesses

Promise<number>

Возвращает количество тестовых оболочек, соответствующих заданному запросу в содержимом текущей тестовой оболочки.

@paramqueryHarnessQuery<T>

Запрос для поиска тестовой оболочки.

@returnsPromise<number>

Количество тестовых оболочек, соответствующих заданному запросу.

hasHarness

Promise<boolean>

Проверяет, есть ли в содержимом текущей тестовой оболочки тестовая оболочка, соответствующая заданному запросу.

@paramqueryHarnessQuery<T>

Запрос для поиска тестовой оболочки.

@returnsPromise<boolean>

Указывает, есть ли тестовая оболочка, соответствующая заданному запросу.

getRootHarnessLoader

Promise<HarnessLoader>

Возвращает корневой загрузчик тестовых оболочек, с которого начинается поиск содержимого, принадлежащего этой тестовой оболочке.

@returnsPromise<HarnessLoader>

host

Promise<TestElement>

Возвращает Promise для TestElement, представляющего корневой элемент компонента.

@returnsPromise<TestElement>

documentRootLocatorFactory

LocatorFactory

Возвращает LocatorFactory для корневого элемента документа. Эту фабрику можно использовать для создания средств поиска элементов, которые компонент создаёт за пределами собственного корневого элемента (например, добавляя их в document.body).

@returnsLocatorFactory

locatorFor

() => Promise<LocatorFnResult<T>>

Создаёт асинхронную функцию поиска, которую можно использовать для поиска экземпляра ComponentHarness или элемента внутри корневого элемента этой ComponentHarness.

Например, для следующей DOM-структуры и при условии, что DivHarness.hostSelector — это 'div'

<div id="d1"></div><div id="d2"></div>

ожидается следующее:

await ch.locatorFor(DivHarness, 'div')() // Gets a `DivHarness` instance for #d1
await ch.locatorFor('div', DivHarness)() // Gets a `TestElement` instance for #d1
await ch.locatorFor('span')()            // Throws because the `Promise` rejects
@paramqueriesT

Список запросов, определяющих, какие тестовые оболочки и элементы нужно искать:

  • string ищет элементы, соответствующие CSS-селектору, заданному строкой.
  • Конструктор ComponentHarness ищет экземпляры ComponentHarness, соответствующие заданному классу.
  • HarnessPredicate ищет экземпляры ComponentHarness, соответствующие заданному предикату.
@returns() => Promise<LocatorFnResult<T>>

locatorForOptional

() => Promise<LocatorFnResult<T> | null>

Создаёт асинхронную функцию поиска, которую можно использовать для поиска экземпляра ComponentHarness или элемента внутри корневого элемента этой ComponentHarness.

Например, для следующей DOM-структуры и при условии, что DivHarness.hostSelector — это 'div'

<div id="d1"></div><div id="d2"></div>

ожидается следующее:

await ch.locatorForOptional(DivHarness, 'div')() // Gets a `DivHarness` instance for #d1
await ch.locatorForOptional('div', DivHarness)() // Gets a `TestElement` instance for #d1
await ch.locatorForOptional('span')()            // Gets `null`
@paramqueriesT

Список запросов, определяющих, какие тестовые оболочки и элементы нужно искать:

  • string ищет элементы, соответствующие CSS-селектору, заданному строкой.
  • Конструктор ComponentHarness ищет экземпляры ComponentHarness, соответствующие заданному классу.
  • HarnessPredicate ищет экземпляры ComponentHarness, соответствующие заданному предикату.
@returns() => Promise<LocatorFnResult<T> | null>

locatorForAll

() => Promise<LocatorFnResult<T>[]>

Создаёт асинхронную функцию поиска, которую можно использовать для поиска экземпляров ComponentHarness или элементов внутри корневого элемента этой ComponentHarness.

Например, для следующей DOM-структуры и при условии, что DivHarness.hostSelector — это 'div', а IdIsD1Harness.hostSelector — это '#d1'

<div id="d1"></div><div id="d2"></div>

ожидается следующее:

// Gets [DivHarness for #d1, TestElement for #d1, DivHarness for #d2, TestElement for #d2]
await ch.locatorForAll(DivHarness, 'div')()
// Gets [TestElement for #d1, TestElement for #d2]
await ch.locatorForAll('div', '#d1')()
// Gets [DivHarness for #d1, IdIsD1Harness for #d1, DivHarness for #d2]
await ch.locatorForAll(DivHarness, IdIsD1Harness)()
// Gets []
await ch.locatorForAll('span')()
@paramqueriesT

Список запросов, определяющих, какие тестовые оболочки и элементы нужно искать:

  • string ищет элементы, соответствующие CSS-селектору, заданному строкой.
  • Конструктор ComponentHarness ищет экземпляры ComponentHarness, соответствующие заданному классу.
  • HarnessPredicate ищет экземпляры ComponentHarness, соответствующие заданному предикату.
@returns() => Promise<LocatorFnResult<T>[]>

forceStabilize

Promise<void>

Запускает обнаружение изменений и асинхронные задачи в зоне Angular. В большинстве случаев вызывать этот метод вручную не требуется. Однако в некоторых особых случаях это может понадобиться, чтобы полностью обработать события анимации.

@returnsPromise<void>

waitForTasksOutsideAngular

Promise<void>

Ожидает завершения всех запланированных или выполняющихся асинхронных задач. Это позволяет авторам тестовых оболочек ожидать завершения асинхронных задач вне зоны Angular.

@returnsPromise<void>

Super-powered by Google ©2010–2025.
Code licensed under an MIT-style License. Documentation licensed under CC BY 4.0.
https://angular.dev/api/cdk/testing/ContentContainerComponentHarness

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API