As you might have noticed, React has an opinionated view on a component's API. But it also has a very strong opinion on its life cycle, allowing us developers to add hooks to create custom behavior and perform cleanup tasks as we develop our components.
This is one of React's greatest triumphs because it is through this standardization that we can create bigger and better components by composition; through that, we can use not only our components, but other people's components.
To demonstrate one use case, we are going to implement a very simple behavior: on page load, we want the new investment form stock symbol input to be focused so that a user can start typing right away.
But, before we can start writing the test, there is ...