Test-Driving React Router
React Router is a popular library of components that integrate with the browser’s own navigation system. It manipulates the browser’s address bar so that changes in your UI appear as page transitions. To the user, it seems like they are navigating between separate pages. In reality, they remain on the same page and avoid an expensive page reload.
In this chapter, we’ll refactor our example appointments system to make use of React Router. Unlike the rest of the book, this chapter is not a walkthrough. That’s because the refactoring process is quite long and laborious. Instead, we’ll look at each of the main changes in turn.
This chapter covers the following:
- Designing React Router applications from a test-first perspective
- Testing components within a router
- Testing router links
- Testing programmatic navigation
By the end of the chapter, you’ll have learned all the necessary techniques...