angular-cn/aio/content/guide/testing-pipes.md

1.6 KiB

Testing Pipes

You can test pipes without the Angular testing utilities.

For the sample app that the testing guides describe, see the sample app.

For the tests features in the testing guides, see tests.

Testing the TitleCasePipe

A pipe class has one method, transform, that manipulates the input value into a transformed output value. The transform implementation rarely interacts with the DOM. Most pipes have no dependence on Angular other than the @Pipe metadata and an interface.

Consider a TitleCasePipe that capitalizes the first letter of each word. Here's an implementation with a regular expression.

Anything that uses a regular expression is worth testing thoroughly. Use simple Jasmine to explore the expected cases and the edge cases.

{@a write-tests}

Writing DOM tests to support a pipe test

These are tests of the pipe in isolation. They can't tell if the TitleCasePipe is working properly as applied in the application components.

Consider adding component tests such as this one: