J'ai un tuyau personnalisé appelé "myPipe". Je reçois Le tuyau 'myPipe' n'a pas pu être trouvé d'erreur dans mes tests unitaires.
Demande conseil quoi importer et déclarer dans mon .spec.ts
voici mes .spec.ts
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { By } from '@angular/platform-browser';
import { DebugElement } from '@angular/core';
import { MyComponent } from './main-page-carousel.component';
describe('CarouselComponent', () => {
let component: MyComponent ;
let fixture: ComponentFixture<MyComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ MyComponent ],
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(MyComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});
Merci!
Vous devriez pouvoir faire ceci:
import { MyPipe } from 'here put your custom pipe path';
TestBed.configureTestingModule({
declarations: [ MyComponentUnderTesting, MyPipe ]
})
J'ai eu le même problème et je l'ai corrigé en ajoutant le "faux tube" à mes spécifications:
import {Pipe, PipeTransform} from '@angular/core';
@Pipe({name: 'myPipe'})
class MockPipe implements PipeTransform {
transform(value: number): number {
// blah blah
return value;
}
}
Ensuite, vous devez ajouter MockPipe aux déclarations configureTestingModule de TestBed:
TestBed.configureTestingModule({
declarations: [ MyComponentUnderTesting, MockPipe ]
})
vous devriez commencer quelque chose comme
import { TestBed, async } from '@angular/core/testing';
import { MyPipe } from 'here put your custom pipe path';
describe('Pipe: MyPipe', () => {
it('create an instance', () => {
let pipe = new MyPipe();
expect(pipe).toBeTruthy();
});
});