reasons why to test code