Testing pipes
As we learned in Chapter 5, Enrich Applications using Pipes and Directives, a pipe is a TypeScript class that implements the PipeTransform
interface. It exposes a transform
method that is usually synchronous, which means it is straightforward to test. The list.pipe.ts
file contains a pipe that converts a comma-separated string into a list:
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'list'
})
export class ListPipe implements PipeTransform {
transform(value: string): string[] {
return value.split(',');
}
}
Writing a test for it is simple. The only thing that we need to do is to instantiate an instance of ListPipe
and verify the outcome of the transform
method with some mock data:
import { ListPipe } from './list.pipe';
describe('ListPipe', () => {
it('create an instance&apos...