fix small bugs; 100% test coverage

supertest readme:

If you are using the `.end()` method `.expect()` assertions that fail will not throw - they will return the assertion as an error to the `.end()` callback. In order to fail the test case, you will need to rethrow or pass err to `done()`