{ "id": "api/common/testing/SpyLocation", "title": "SpyLocation", "contents": "\n\n
\n
\n
\n \n API > @angular/common > @angular/common/testing\n
\n \n
\n \n
\n

SpyLocationlink

\n \n \n \n \n \n
\n \n \n\n
\n \n
\n

A spy for Location that allows tests to fire simulated location events.

\n\n \n
\n \n \n \n
\n\nclass SpyLocation implements Location {\n urlChanges: string[]\n setInitialPath(url: string)\n setBaseHref(url: string)\n path(): string\n getState(): unknown\n isCurrentPathEqualTo(path: string, query: string = ''): boolean\n simulateUrlPop(pathname: string)\n simulateHashChange(pathname: string)\n prepareExternalUrl(url: string): string\n go(path: string, query: string = '', state: any = null)\n replaceState(path: string, query: string = '', state: any = null)\n forward()\n back()\n onUrlChange(fn: (url: string, state: unknown) => void)\n subscribe(onNext: (value: any) => void, onThrow?: (error: any) => void, onReturn?: () => void): SubscriptionLike\n normalize(url: string): string\n}\n\n\n \n \n\n
\n\n\n \n\n \n \n \n\n\n\n\n\n\n\n\n
\n

Propertieslink

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
PropertyDescription
\n \n urlChanges: string[]\n \n \n \n \n
\n
\n\n\n\n
\n

Methodslink

\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n setInitialPath()\n \n link

\n \n
\n
\n
\n \n\n setInitialPath(url: string)\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n
\n \n url\n string\n \n \n
\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n setBaseHref()\n \n link

\n \n
\n
\n
\n \n\n setBaseHref(url: string)\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n
\n \n url\n string\n \n \n
\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n path()\n \n link

\n \n
\n
\n
\n \n\n path(): string\n\n \n\n
Parameters
\n

There are no parameters.

\n\n \n
Returns
\n

string

\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n getState()\n \n link

\n \n
\n
\n
\n \n\n getState(): unknown\n\n \n\n
Parameters
\n

There are no parameters.

\n\n \n
Returns
\n

unknown

\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n isCurrentPathEqualTo()\n \n link

\n \n
\n
\n
\n \n\n isCurrentPathEqualTo(path: string, query: string = ''): boolean\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n path\n string\n \n \n
\n \n query\n string\n

Optional. Default is ''.

\n \n
\n\n \n
Returns
\n

boolean

\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n simulateUrlPop()\n \n link

\n \n
\n
\n
\n \n\n simulateUrlPop(pathname: string)\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n
\n \n pathname\n string\n \n \n
\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n simulateHashChange()\n \n link

\n \n
\n
\n
\n \n\n simulateHashChange(pathname: string)\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n
\n \n pathname\n string\n \n \n
\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n prepareExternalUrl()\n \n link

\n \n
\n
\n
\n \n\n prepareExternalUrl(url: string): string\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n
\n \n url\n string\n \n \n
\n\n \n
Returns
\n

string

\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n go()\n \n link

\n \n
\n
\n
\n \n\n go(path: string, query: string = '', state: any = null)\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n path\n string\n \n \n
\n \n query\n string\n

Optional. Default is ''.

\n \n
\n \n state\n any\n

Optional. Default is null.

\n \n
\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n replaceState()\n \n link

\n \n
\n
\n
\n \n\n replaceState(path: string, query: string = '', state: any = null)\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n path\n string\n \n \n
\n \n query\n string\n

Optional. Default is ''.

\n \n
\n \n state\n any\n

Optional. Default is null.

\n \n
\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n forward()\n \n link

\n \n
\n
\n
\n \n\n forward()\n\n \n\n
Parameters
\n

There are no parameters.

\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n back()\n \n link

\n \n
\n
\n
\n \n\n back()\n\n \n\n
Parameters
\n

There are no parameters.

\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n onUrlChange()\n \n link

\n \n
\n
\n
\n \n\n onUrlChange(fn: (url: string, state: unknown) => void)\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n
\n \n fn\n (url: string, state: unknown) => void\n \n \n
\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n subscribe()\n \n link

\n \n
\n
\n
\n \n\n subscribe(onNext: (value: any) => void, onThrow?: (error: any) => void, onReturn?: () => void): SubscriptionLike\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n onNext\n (value: any) => void\n \n \n
\n \n onThrow\n (error: any) => void\n

Optional. Default is undefined.

\n \n
\n \n onReturn\n () => void\n

Optional. Default is undefined.

\n \n
\n\n \n
Returns
\n

SubscriptionLike

\n\n \n\n\n \n\n \n
\n
\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n \n
\n
\n

\n normalize()\n \n link

\n \n
\n
\n
\n \n\n normalize(url: string): string\n\n \n\n
Parameters
\n \n \n \n \n \n \n \n \n \n
\n \n url\n string\n \n \n
\n\n \n
Returns
\n

string

\n\n \n\n\n \n\n \n
\n
\n\n \n
\n\n\n\n \n\n\n
\n
\n\n\n" }