1.8 KiB
Testing Pipes
You can test pipes without the Angular testing utilities.
For a hands-on experience you can run tests and explore the test code in your browser as your read this guide.
If you'd like to experiment with the application that this guide describes, you can run it in your browser or download and run it locally.
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: