The empty project
The source files (without any controller definition)
writes unit test for listBooks() function
write listBooks() implementation - unit test pass
assert the initial states of controller
assert the initial states of controller - unit test pass
write unit test for loadEditForm() function - fail
write unit test for loadEditForm() function - fail
write loadEditForm() implementation - pass
append HTML file for editForm
append HTML file for editForm
write unit test for cancelEditForm() function - fail
write cancelEditForm() implementation - pass
write unit test for saveEditForm() function (with defined ID) - fail
write unit test for saveEditForm() function (with undefined ID) - fail
write saveEditForm() implementation
write unit test for createBook() function - fail
write createBook() implementation - pass
write unit test for updateBook() function - fail
write updateBook() implementation - pass