add more tests, controllers, and views