/
githubmirror
/
components
Обзор
Документация
Войти
/
githubmirror
/
components
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/material/timepicker/testing/timepicker-toggle-harness.spec.ts
59 строк
2 KB
Kristiyan Kostadinov
build: add explicit change detection to tests (#33010)
30 мар 2026, 10:52
Не верифицирован
30 мар 2026, 10:52
7806398
Код
Авторство
О чём код?
import {Component, signal, ChangeDetectionStrategy} from '@angular/core'; import {ComponentFixture, TestBed} from '@angular/core/testing'; import {HarnessLoader} from '@angular/cdk/testing'; import {DateAdapter, provideNativeDateAdapter} from '../../core'; import {TestbedHarnessEnvironment} from '@angular/cdk/testing/testbed'; import {MatTimepicker, MatTimepickerInput, MatTimepickerToggle} from '../../timepicker'; import {MatTimepickerToggleHarness} from './timepicker-toggle-harness'; describe('MatTimepickerToggleHarness', () => { let fixture: ComponentFixture<TimepickerHarnessTest>; let loader: HarnessLoader; beforeEach(() => { TestBed.configureTestingModule({providers: [provideNativeDateAdapter()]}); const adapter = TestBed.inject(DateAdapter); adapter.setLocale('en-US'); fixture = TestBed.createComponent(TimepickerHarnessTest); fixture.detectChanges(); loader = TestbedHarnessEnvironment.documentRootLoader(fixture); }); it('should be able to load timepicker toggle harnesses', async () => { const harnesses = await loader.getAllHarnesses(MatTimepickerToggleHarness); expect(harnesses.length).toBe(2); }); it('should get the open state of a timepicker toggle', async () => { const toggle = await loader.getHarness(MatTimepickerToggleHarness.with({selector: '#one'})); expect(await toggle.isTimepickerOpen()).toBe(false); await toggle.openTimepicker(); expect(await toggle.isTimepickerOpen()).toBe(true); }); it('should get the disabled state of a toggle', async () => { const toggle = await loader.getHarness(MatTimepickerToggleHarness.with({selector: '#one'})); expect(await toggle.isDisabled()).toBe(false); fixture.componentInstance.disabled.set(true); expect(await toggle.isDisabled()).toBe(true); }); }); @Component({ template: ` <input [matTimepicker]="onePicker"> <mat-timepicker #onePicker/> <mat-timepicker-toggle id="one" [for]="onePicker" [disabled]="disabled()"/> <input [matTimepicker]="twoPicker"> <mat-timepicker #twoPicker/> <mat-timepicker-toggle id="two" [for]="twoPicker" [disabled]="disabled()"/> `, imports: [MatTimepickerInput, MatTimepicker, MatTimepickerToggle], changeDetection: ChangeDetectionStrategy.Eager, }) class TimepickerHarnessTest { disabled = signal(false); }