50 lines
2.2 KiB
TypeScript
50 lines
2.2 KiB
TypeScript
import {Location, LocationStrategy} from '@angular/common';
|
|
import {MockLocationStrategy, SpyLocation} from '@angular/common/testing';
|
|
import {Component, ComponentResolver, provide} from '@angular/core';
|
|
import {AsyncTestCompleter, beforeEach, beforeEachProviders, ddescribe, describe, expect, iit, inject, it, xdescribe, xit} from '@angular/core/testing/testing_internal';
|
|
import {CanDeactivate, DefaultRouterUrlSerializer, OnActivate, ROUTER_DIRECTIVES, Route, RouteSegment, Router, RouterOutletMap, RouterUrlSerializer, Routes} from '@angular/router';
|
|
|
|
import {RouterLink} from '../src/directives/router_link';
|
|
|
|
export function main() {
|
|
describe('RouterLink', () => {
|
|
beforeEachProviders(
|
|
() =>
|
|
[{provide: RouterUrlSerializer, useClass: DefaultRouterUrlSerializer}, RouterOutletMap,
|
|
{provide: Location, useClass: SpyLocation},
|
|
{provide: LocationStrategy, useClass: MockLocationStrategy}, {
|
|
provide: Router,
|
|
useFactory:
|
|
(resolver: any /** TODO #9100 */, urlParser: any /** TODO #9100 */,
|
|
outletMap: any /** TODO #9100 */, location: any /** TODO #9100 */) =>
|
|
new Router(
|
|
'RootComponent', RootCmp, resolver, urlParser, outletMap, location),
|
|
deps: [ComponentResolver, RouterUrlSerializer, RouterOutletMap, Location]
|
|
}]);
|
|
|
|
describe('routerLink=', () => {
|
|
it('should accept an array of commands',
|
|
inject(
|
|
[Router, LocationStrategy],
|
|
(router: any /** TODO #9100 */, locationStrategy: any /** TODO #9100 */) => {
|
|
let link = new RouterLink(null, router, locationStrategy);
|
|
link.routerLink = ['/one', 11];
|
|
expect(link.href).toEqual('/one/11');
|
|
}));
|
|
|
|
it('should accept a single command',
|
|
inject(
|
|
[Router, LocationStrategy],
|
|
(router: any /** TODO #9100 */, locationStrategy: any /** TODO #9100 */) => {
|
|
let link = new RouterLink(null, router, locationStrategy);
|
|
link.routerLink = '/one/11';
|
|
expect(link.href).toEqual('/one/11');
|
|
}));
|
|
});
|
|
});
|
|
}
|
|
|
|
@Component({template: ''})
|
|
class RootCmp {
|
|
}
|