As of this writing, I have not finished testing the Timepicker Addon. I have pushed 37 commits to my fork of the project. I have created two pull requests, of which Trent has accepted and merged one to the dev branch. I plan to finish covering the code, fixing and refactoring as I find things.
In this example, we saw a different approach to testing. Bringing untested code under test has a different flow from test driving a new project. Even though this project was pretty well written to start, I found and fixed bugs, uncovered ambiguous intent, unearthed vestigial code, cleaned up warnings, and improved readability.
This project showed some of the differences working in a dynamic language and with a different flavor of testing framework. The testing required the use of a variety of matchers for both result and error verification, as well as the use of spies for behavioral verification. At times, I thought I would need some of the other spy behaviors, such as the ability to return a specified value, but I was proven wrong by commit time. Perhaps most interestingly, I started to explore the techniques used to test JavaScript that interacts with the DOM by using Jasmine extensions to create automatically torn down DOM fixtures.
18.225.254.192