Skip to content

Commit

Permalink
fix lint and api goldens
Browse files Browse the repository at this point in the history
  • Loading branch information
mmalerba committed Nov 9, 2019
1 parent c5f4af1 commit 6c3c040
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 24 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
"dev-app": "ibazel run //src/dev-app:devserver",
"test": "bazel test //src/... --test_tag_filters=-e2e,-browser:firefox-local --build_tag_filters=-browser:firefox-local --build_tests_only",
"test-firefox": "bazel test //src/... --test_tag_filters=-e2e,-browser:chromium-local --build_tag_filters=-browser:chromium-local --build_tests_only",
"lint": "gulp lint && yarn -s bazel:format-lint",
"lint": "yarn -s tslint && yarn -s bazel:format-lint && yarn -s ownerslint",
"e2e": "bazel test //src/... --test_tag_filters=e2e",
"deploy": "echo 'Not supported yet. Tracked with COMP-230'",
"webdriver-manager": "webdriver-manager",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ import {
HarnessQuery,
TestElement
} from '@angular/cdk/testing';
import {MatFormFieldControlHarness} from '@angular/material-experimental/form-field/testing/control';
import {MatInputHarness} from '@angular/material-experimental/input/testing';
import {MatSelectHarness} from '@angular/material-experimental/select/testing';
import {MatFormFieldControlHarness} from './control';
import {FormFieldHarnessFilters} from './form-field-harness-filters';

// TODO(devversion): support datepicker harness once developed (COMP-203).
Expand Down
43 changes: 21 additions & 22 deletions tools/public_api_guard/cdk/testing.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,9 @@ export declare abstract class ComponentHarness {
protected documentRootLocatorFactory(): LocatorFactory;
protected forceStabilize(): Promise<void>;
host(): Promise<TestElement>;
protected locatorFor(selector: string): AsyncFactoryFn<TestElement>;
protected locatorFor<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T>;
protected locatorForAll(selector: string): AsyncFactoryFn<TestElement[]>;
protected locatorForAll<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T[]>;
protected locatorForOptional(selector: string): AsyncFactoryFn<TestElement | null>;
protected locatorForOptional<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T | null>;
protected locatorFor<T extends (HarnessQuery<any> | string)[]>(...queries: T): AsyncFactoryFn<LocatorFnResult<T>>;
protected locatorForAll<T extends (HarnessQuery<any> | string)[]>(...queries: T): AsyncFactoryFn<LocatorFnResult<T>[]>;
protected locatorForOptional<T extends (HarnessQuery<any> | string)[]>(...queries: T): AsyncFactoryFn<LocatorFnResult<T> | null>;
protected waitForTasksOutsideAngular(): Promise<void>;
}

Expand All @@ -39,28 +36,25 @@ export declare abstract class HarnessEnvironment<E> implements HarnessLoader, Lo
documentRootLocatorFactory(): LocatorFactory;
abstract forceStabilize(): Promise<void>;
getAllChildLoaders(selector: string): Promise<HarnessLoader[]>;
getAllHarnesses<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): Promise<T[]>;
getAllHarnesses<T extends ComponentHarness>(query: HarnessQuery<T>): Promise<T[]>;
protected abstract getAllRawElements(selector: string): Promise<E[]>;
getChildLoader(selector: string): Promise<HarnessLoader>;
protected abstract getDocumentRoot(): E;
getHarness<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): Promise<T>;
getHarness<T extends ComponentHarness>(query: HarnessQuery<T>): Promise<T>;
harnessLoaderFor(selector: string): Promise<HarnessLoader>;
harnessLoaderForAll(selector: string): Promise<HarnessLoader[]>;
harnessLoaderForOptional(selector: string): Promise<HarnessLoader | null>;
locatorFor(selector: string): AsyncFactoryFn<TestElement>;
locatorFor<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T>;
locatorForAll(selector: string): AsyncFactoryFn<TestElement[]>;
locatorForAll<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T[]>;
locatorForOptional(selector: string): AsyncFactoryFn<TestElement | null>;
locatorForOptional<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T | null>;
locatorFor<T extends (HarnessQuery<any> | string)[]>(...queries: T): AsyncFactoryFn<LocatorFnResult<T>>;
locatorForAll<T extends (HarnessQuery<any> | string)[]>(...queries: T): AsyncFactoryFn<LocatorFnResult<T>[]>;
locatorForOptional<T extends (HarnessQuery<any> | string)[]>(...queries: T): AsyncFactoryFn<LocatorFnResult<T> | null>;
abstract waitForTasksOutsideAngular(): Promise<void>;
}

export interface HarnessLoader {
getAllChildLoaders(selector: string): Promise<HarnessLoader[]>;
getAllHarnesses<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): Promise<T[]>;
getAllHarnesses<T extends ComponentHarness>(query: HarnessQuery<T>): Promise<T[]>;
getChildLoader(selector: string): Promise<HarnessLoader>;
getHarness<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): Promise<T>;
getHarness<T extends ComponentHarness>(query: HarnessQuery<T>): Promise<T>;
}

export declare class HarnessPredicate<T extends ComponentHarness> {
Expand All @@ -75,22 +69,27 @@ export declare class HarnessPredicate<T extends ComponentHarness> {
static stringMatches(s: string | Promise<string>, pattern: string | RegExp): Promise<boolean>;
}

export declare type HarnessQuery<T extends ComponentHarness> = ComponentHarnessConstructor<T> | HarnessPredicate<T>;

export interface LocatorFactory {
rootElement: TestElement;
documentRootLocatorFactory(): LocatorFactory;
forceStabilize(): Promise<void>;
harnessLoaderFor(selector: string): Promise<HarnessLoader>;
harnessLoaderForAll(selector: string): Promise<HarnessLoader[]>;
harnessLoaderForOptional(selector: string): Promise<HarnessLoader | null>;
locatorFor(selector: string): AsyncFactoryFn<TestElement>;
locatorFor<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T>;
locatorForAll(selector: string): AsyncFactoryFn<TestElement[]>;
locatorForAll<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T[]>;
locatorForOptional(selector: string): AsyncFactoryFn<TestElement | null>;
locatorForOptional<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T | null>;
locatorFor<T extends (HarnessQuery<any> | string)[]>(...queries: T): AsyncFactoryFn<LocatorFnResult<T>>;
locatorForAll<T extends (HarnessQuery<any> | string)[]>(...queries: T): AsyncFactoryFn<LocatorFnResult<T>[]>;
locatorForOptional<T extends (HarnessQuery<any> | string)[]>(...queries: T): AsyncFactoryFn<LocatorFnResult<T> | null>;
waitForTasksOutsideAngular(): Promise<void>;
}

export declare type LocatorFnResult<T extends (HarnessQuery<any> | string)[]> = {
[I in keyof T]: T[I] extends new (...args: any[]) => infer C ? C : T[I] extends {
harnessType: new (...args: any[]) => infer C;
} ? C : T[I] extends string ? TestElement : never;
}[number];

export interface TestElement {
blur(): Promise<void>;
clear(): Promise<void>;
Expand Down

0 comments on commit 6c3c040

Please sign in to comment.