TestbedHarnessEnvironment
Angular Testbed용 HarnessEnvironment 구현입니다.
constructor
TestbedHarnessEnvironmentElementTestbedHarnessEnvironmentforceStabilize
Promise<void>Angular Zone에서 추적하는 변경 감지와 비동기 작업을 모두 처리합니다. 대부분 직접 호출할 필요는 없지만, 일부 예외적인 상황에서는 애니메이션 이벤트를 완전히 처리하기 위해 필요할 수 있습니다.
Promise<void>waitForTasksOutsideAngular
Promise<void>예약되었거나 실행 중인 모든 비동기 작업이 완료될 때까지 기다립니다. 하네스 작성자가 Angular Zone 밖의 비동기 작업을 기다릴 수 있게 합니다.
Zone.js가 존재하고 zone.js/testing(Jasmine과 Jest만 해당) 또는 다른 스크립트가 테스트 프레임워크에 패치를 적용한 경우에만 작동합니다.
Promise<void>getDocumentRoot
Element문서의 루트 엘리먼트를 가져옵니다.
ElementcreateTestElement
TestElement원시 엘리먼트로 TestElement를 생성합니다.
ElementTestElementcreateEnvironment
HarnessEnvironment<Element>주어진 원시 엘리먼트를 기준으로 하는 HarnessLoader를 생성합니다.
ElementHarnessEnvironment<Element>getAllRawElements
Promise<Element[]>이 환경의 루트 엘리먼트 아래에서 주어진 선택자와 일치하는 모든 엘리먼트 목록을 가져옵니다.
stringPromise<Element[]>rawRootElement
E이 HarnessEnvironment의 네이티브 루트 엘리먼트입니다.
rootElement
TestElementTestElement로 표현한 이 HarnessEnvironment의 루트 엘리먼트입니다.
rootElement
TestElementdocumentRootLocatorFactory
LocatorFactory문서 루트를 기준으로 하는 로케이터 팩토리를 가져옵니다.
LocatorFactorylocatorFor
() => Promise<LocatorFnResult<T>>이 HarnessEnvironment의 루트 엘리먼트 아래에서 ComponentHarness 인스턴스나 엘리먼트를 찾는 데 사용할 비동기 로케이터 함수를 생성합니다.
예를 들어 다음 DOM이 있고 DivHarness.hostSelector가 'div'라고 가정하면:
<div id="d1"></div><div id="d2"></div>
다음과 같은 결과가 나옵니다:
await lf.locatorFor(DivHarness, 'div')() // Gets a `DivHarness` instance for #d1
await lf.locatorFor('div', DivHarness)() // Gets a `TestElement` instance for #d1
await lf.locatorFor('span')() // Throws because the `Promise` rejects
T검색할 하네스와 엘리먼트를 지정하는 쿼리 목록입니다:
string은 문자열로 지정한 CSS 선택자와 일치하는 엘리먼트를 검색합니다.ComponentHarness생성자는 주어진 클래스와 일치하는ComponentHarness인스턴스를 검색합니다.HarnessPredicate는 주어진 조건자와 일치하는ComponentHarness인스턴스를 검색합니다.
() => Promise<LocatorFnResult<T>>locatorForOptional
() => Promise<LocatorFnResult<T> | null>이 HarnessEnvironmnet의 루트 엘리먼트 아래에서 ComponentHarness 인스턴스나 엘리먼트를 찾는 데 사용할 비동기 로케이터 함수를 생성합니다.
예를 들어 다음 DOM이 있고 DivHarness.hostSelector가 'div'라고 가정하면:
<div id="d1"></div><div id="d2"></div>
다음과 같은 결과가 나옵니다:
await lf.locatorForOptional(DivHarness, 'div')() // Gets a `DivHarness` instance for #d1
await lf.locatorForOptional('div', DivHarness)() // Gets a `TestElement` instance for #d1
await lf.locatorForOptional('span')() // Gets `null`
T검색할 하네스와 엘리먼트를 지정하는 쿼리 목록입니다:
string은 문자열로 지정한 CSS 선택자와 일치하는 엘리먼트를 검색합니다.ComponentHarness생성자는 주어진 클래스와 일치하는ComponentHarness인스턴스를 검색합니다.HarnessPredicate는 주어진 조건자와 일치하는ComponentHarness인스턴스를 검색합니다.
() => Promise<LocatorFnResult<T> | null>locatorForAll
() => Promise<LocatorFnResult<T>[]>이 HarnessEnvironment의 루트 엘리먼트 아래에서 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 lf.locatorForAll(DivHarness, 'div')()
// Gets [TestElement for #d1, TestElement for #d2]
await lf.locatorForAll('div', '#d1')()
// Gets [DivHarness for #d1, IdIsD1Harness for #d1, DivHarness for #d2]
await lf.locatorForAll(DivHarness, IdIsD1Harness)()
// Gets []
await lf.locatorForAll('span')()
T검색할 하네스와 엘리먼트를 지정하는 쿼리 목록입니다:
string은 문자열로 지정한 CSS 선택자와 일치하는 엘리먼트를 검색합니다.ComponentHarness생성자는 주어진 클래스와 일치하는ComponentHarness인스턴스를 검색합니다.HarnessPredicate는 주어진 조건자와 일치하는ComponentHarness인스턴스를 검색합니다.
() => Promise<LocatorFnResult<T>[]>rootHarnessLoader
Promise<HarnessLoader>Promise<HarnessLoader>harnessLoaderFor
Promise<HarnessLoader>이 HarnessEnvironment의 루트 아래 엘리먼트에 대한 HarnessLoader 인스턴스를 가져옵니다.
string루트 엘리먼트의 선택자입니다.
Promise<HarnessLoader>harnessLoaderForOptional
Promise<HarnessLoader | null>이 HarnessEnvironment의 루트 아래 엘리먼트에 대한 HarnessLoader 인스턴스를 가져옵니다.
string루트 엘리먼트의 선택자입니다.
Promise<HarnessLoader | null>harnessLoaderForAll
Promise<HarnessLoader[]>일치하는 각 엘리먼트에 대한 HarnessLoader 인스턴스 목록을 가져옵니다.
string루트 엘리먼트의 선택자입니다.
Promise<HarnessLoader[]>getHarness
Promise<T>HarnessEnvironment의 루트 엘리먼트 아래에서 주어진 하네스 타입에 대응하는 컴포넌트 인스턴스를 검색하고 해당 인스턴스의 ComponentHarness를 반환합니다. 여러 컴포넌트가 일치하면 첫 번째 컴포넌트의 하네스를 반환합니다. 일치하는 컴포넌트가 없으면 오류를 던집니다.
HarnessQuery<T>생성할 하네스의 쿼리입니다.
Promise<T>getHarnessOrNull
Promise<T | null>HarnessEnvironment의 루트 엘리먼트 아래에서 주어진 하네스 타입에 대응하는 컴포넌트 인스턴스를 검색하고 해당 인스턴스의 ComponentHarness를 반환합니다. 여러 컴포넌트가 일치하면 첫 번째 컴포넌트의 하네스를 반환합니다. 일치하는 컴포넌트가 없으면 null을 반환합니다.
HarnessQuery<T>생성할 하네스의 쿼리입니다.
Promise<T | null>getHarnessAtIndex
Promise<T>HarnessEnvironment의 루트 엘리먼트 아래에서 주어진 하네스 타입과 인덱스에 대응하는 컴포넌트 인스턴스를 검색하고 해당 인스턴스의 ComponentHarness를 반환합니다. 인덱스는 찾을 컴포넌트의 위치를 지정합니다. 해당 인덱스에 일치하는 컴포넌트가 없으면 오류를 던집니다.
HarnessQuery<T>생성할 하네스의 쿼리입니다.
numberPromise<T>getAllHarnesses
Promise<T[]>HarnessEnvironment의 루트 엘리먼트 아래에서 주어진 하네스 타입에 대응하는 모든 컴포넌트 인스턴스를 검색하고 각 인스턴스의 ComponentHarness 목록을 반환합니다.
HarnessQuery<T>생성할 하네스의 쿼리입니다.
Promise<T[]>countHarnesses
Promise<number>HarnessEnvironment의 루트 엘리먼트 아래에서 주어진 하네스 타입에 대응하는 모든 컴포넌트 인스턴스를 검색하고 찾은 개수를 반환합니다.
HarnessQuery<T>생성할 하네스의 쿼리입니다.
Promise<number>hasHarness
Promise<boolean>HarnessEnvironment의 루트 엘리먼트 아래에서 주어진 하네스 타입에 대응하는 컴포넌트 인스턴스를 검색하고, 찾은 인스턴스가 있는지를 불리언으로 반환합니다.
HarnessQuery<T>생성할 하네스의 쿼리입니다.
Promise<boolean>getChildLoader
Promise<HarnessLoader>환경의 루트 엘리먼트 아래에서 주어진 선택자와 일치하는 엘리먼트를 검색하고, 해당 엘리먼트를 기준으로 하는 HarnessLoader를 반환합니다. 여러 엘리먼트가 일치하면 첫 번째를 사용합니다. 일치하는 엘리먼트가 없으면 오류를 던집니다.
string새 HarnessLoader의 루트 엘리먼트 선택자입니다.
Promise<HarnessLoader>getAllChildLoaders
Promise<HarnessLoader[]>환경의 루트 엘리먼트 아래에서 주어진 선택자와 일치하는 모든 엘리먼트를 검색하고, 각 엘리먼트를 기준으로 하는 HarnessLoader 배열을 반환합니다.
string새 HarnessLoader의 루트 엘리먼트 선택자입니다.
Promise<HarnessLoader[]>createComponentHarness
T주어진 하네스 타입과 원시 호스트 엘리먼트로 ComponentHarness를 생성합니다.
ComponentHarnessConstructor<T>ETloader
HarnessLoader주어진 fixture의 루트 엘리먼트를 기준으로 하는 HarnessLoader를 생성합니다.
HarnessLoaderdocumentRootLoader
HarnessLoader문서 루트에 HarnessLoader를 생성합니다. 하네스가 fixture 밖에 있을 때(예: 문서 body에 추가된 오버레이) 사용할 수 있습니다.
HarnessLoadergetNativeElement
Element주어진 TestElement에 대응하는 네이티브 DOM 엘리먼트를 가져옵니다.
TestElementElementharnessForFixture
Promise<T>fixture의 루트 엘리먼트를 하네스의 호스트 엘리먼트로 사용하여 주어진 하네스 타입의 인스턴스를 생성합니다. 컴포넌트를 fixture의 루트로 생성하면 올바른 선택자를 갖지 않으므로, fixture 루트 엘리먼트의 하네스를 만들 때 이 메서드를 사용해야 합니다.
ComponentHarnessConstructor<T>Promise<T>