You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

125 lines
4.1 KiB

/**
* @license Angular v12.2.16
* (c) 2010-2021 Google LLC. https://angular.io/
* License: MIT
*/
import { InjectionToken } from '@angular/core';
import { Location as Location_2 } from '@angular/common';
import { LocationChangeListener } from '@angular/common';
import { LocationStrategy } from '@angular/common';
import { PlatformLocation } from '@angular/common';
import { SubscriptionLike } from 'rxjs';
/**
* Provider for mock platform location config
*
* @publicApi
*/
import * as ɵngcc0 from '@angular/core';
export declare const MOCK_PLATFORM_LOCATION_CONFIG: InjectionToken<MockPlatformLocationConfig>;
/**
* A mock implementation of {@link LocationStrategy} that allows tests to fire simulated
* location events.
*
* @publicApi
*/
export declare class MockLocationStrategy extends LocationStrategy {
internalBaseHref: string;
internalPath: string;
internalTitle: string;
urlChanges: string[];
private stateChanges;
constructor();
simulatePopState(url: string): void;
path(includeHash?: boolean): string;
prepareExternalUrl(internal: string): string;
pushState(ctx: any, title: string, path: string, query: string): void;
replaceState(ctx: any, title: string, path: string, query: string): void;
onPopState(fn: (value: any) => void): void;
getBaseHref(): string;
back(): void;
forward(): void;
getState(): unknown;
static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<MockLocationStrategy, never>;
static ɵprov: ɵngcc0.ɵɵInjectableDeclaration<MockLocationStrategy>;
}
/**
* Mock implementation of URL state.
*
* @publicApi
*/
export declare class MockPlatformLocation implements PlatformLocation {
private baseHref;
private hashUpdate;
private urlChangeIndex;
private urlChanges;
constructor(config?: MockPlatformLocationConfig);
get hostname(): string;
get protocol(): string;
get port(): string;
get pathname(): string;
get search(): string;
get hash(): string;
get state(): unknown;
getBaseHrefFromDOM(): string;
onPopState(fn: LocationChangeListener): VoidFunction;
onHashChange(fn: LocationChangeListener): VoidFunction;
get href(): string;
get url(): string;
private parseChanges;
replaceState(state: any, title: string, newUrl: string): void;
pushState(state: any, title: string, newUrl: string): void;
forward(): void;
back(): void;
historyGo(relativePosition?: number): void;
getState(): unknown;
private scheduleHashUpdate;
static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<MockPlatformLocation, [{ optional: true; }]>;
static ɵprov: ɵngcc0.ɵɵInjectableDeclaration<MockPlatformLocation>;
}
/**
* Mock platform location config
*
* @publicApi
*/
export declare interface MockPlatformLocationConfig {
startUrl?: string;
appBaseHref?: string;
}
/**
* A spy for {@link Location} that allows tests to fire simulated location events.
*
* @publicApi
*/
export declare class SpyLocation implements Location_2 {
urlChanges: string[];
private _history;
private _historyIndex;
setInitialPath(url: string): void;
setBaseHref(url: string): void;
path(): string;
getState(): unknown;
isCurrentPathEqualTo(path: string, query?: string): boolean;
simulateUrlPop(pathname: string): void;
simulateHashChange(pathname: string): void;
prepareExternalUrl(url: string): string;
go(path: string, query?: string, state?: any): void;
replaceState(path: string, query?: string, state?: any): void;
forward(): void;
back(): void;
historyGo(relativePosition?: number): void;
onUrlChange(fn: (url: string, state: unknown) => void): void;
subscribe(onNext: (value: any) => void, onThrow?: ((error: any) => void) | null, onReturn?: (() => void) | null): SubscriptionLike;
normalize(url: string): string;
static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<SpyLocation, never>;
static ɵprov: ɵngcc0.ɵɵInjectableDeclaration<SpyLocation>;
}
export { }
//# sourceMappingURL=testing.d.ts.map