Updated anonymous tests

Added custom Jasmine matcher to easily verify the keys within a JavaScript object (in this case, a user auth payload).
Yeah this is a bit weird, but it's a Jasmine quirk. If an `expect` failed in this function, the main `it` test would log the failure, but not end the test. Instead it would eventually timeout. Adding the catch still logged the error and failed the test immediately after returning from the function. I added the console.log to make it easier to track where the failure came from.

I'm not sure if there is a better way to handle this, but this worked well.