Originally, Angular 1.x was created to help developers build enterprise applications faster. With the introduction of ngAnimate written by Matias Niemelä, Angular 1.x suddenly offered something for everyone. Not only could developers create powerful line of business applications, but designers could use Angular to create rich, immersive experiences. Matias took animations to the next level in Angular 2 by rewriting the entire API to give us complete control over ever facet of how our interfaces are animated.
If you’re here, you have probably already read the Angular documentation on testing, and maybe have written a few tests for your own project. If you have not, you should, because this article will require some prior knowledge of Angular testing.
In this article, we'll explore managing state with an immutable data store in an Angular application using ngrx/store: reactive Redux for Angular.