In the last chapter, we implemented our first application using functional reactive programming; we decided to implement a real-time web chat using WebSockets because of its inherit nature of interactivity, making it a perfect candidate for functional reactive programming.
We decided to use RxJS in all levels of the application; we used it to:
- Model servers and incoming WebSocket connections
- Implement the business rule for some services
- Implement the DataSource of our application
- Implement the tests of our application
In our server implementation, we had the opportunity to implement observables from different sources and even implement a subject to push data.
From the tests perspective, we decided to implement some basic tests only for our services; we did not want to have full coverage of our code, but the constructs and architecture of these tests can be easily replicated to create more tests...