Geçişler

RouterTestingModule geçişi

Bu şematik, testlerdeki RouterTestingModule kullanımlarını RouterModule'e geçirir.

Bir test @angular/common/testing'den SpyLocation'ı içe aktarıyorsa ve urlChanges özelliğini kullanıyorsa, şematik orijinal davranışı korumak için provideLocationMocks() da ekleyecektir.

Şematiği şu komutla çalıştırın:

ng generate @angular/core:router-testing-module-migration

Seçenekler

Seçenek Ayrıntılar
path Geçirilecek yol (proje köküne göreceli). Varsayılan değer ./'dir. Projenizin bir alt kümesini aşamalı olarak geçirmek için bunu kullanın.

Örnekler

Router seçeneklerini koruma

Önce:

import {RouterTestingModule} from '@angular/router/testing';
import {SpyLocation} from '@angular/common/testing';

describe('test', () => {
  beforeEach(() => {
    TestBed.configureTestingModule({
      imports: [RouterTestingModule.withRoutes(routes, {initialNavigation: 'enabledBlocking'})],
    });
  });
});

Sonra:

import {RouterModule} from '@angular/router';
import {SpyLocation} from '@angular/common/testing';

describe('test', () => {
  beforeEach(() => {
    TestBed.configureTestingModule({
      imports: [RouterModule.forRoot(routes, {initialNavigation: 'enabledBlocking'})],
    });
  });
});

SpyLocation import edildiğinde ve urlChanges kullanıldığında provideLocationMocks ekleme

Önce:

import {RouterTestingModule} from '@angular/router/testing';
import {SpyLocation} from '@angular/common/testing';

describe('test', () => {
  let spy: SpyLocation;

  beforeEach(() => {
    TestBed.configureTestingModule({
      imports: [RouterTestingModule],
    });
    spy = TestBed.inject(SpyLocation);
  });

  it('Awesome test', () => {
    expect(spy.urlChanges).toBeDefined();
  });
});

Sonra:

import {RouterModule} from '@angular/router';
import {provideLocationMocks} from '@angular/common/testing';
import {SpyLocation} from '@angular/common/testing';

describe('test', () => {
  let spy: SpyLocation;

  beforeEach(() => {
    TestBed.configureTestingModule({
      imports: [RouterModule],
      providers: [provideLocationMocks()],
    });
    spy = TestBed.inject(SpyLocation);
  });

  it('Awesome test', () => {
    expect(spy.urlChanges).toBeDefined();
  });
});