Fix compatibility of I Done This integration with released RB 3.0

Review Request #9466 — Created Dec. 31, 2017 and submitted — Latest diff uploaded

Information

rbintegrations
master
62e540f...

Reviewers

My last update to https://reviews.reviewboard.org/r/8776/ was done right
before some changes in the main RB repository caused an incompatibility:
https://reviews.reviewboard.org/r/9323/

This change addresses the breakage and a few more issues with unit tests:

  1. to_submitter_only renamed to to_owner_only to match RB 3.0 API.
  2. Avoid calling set(None) if get_user_team_ids fails, and instead copy
    the set before returning the cached result from get_user_team_ids.
    The exception was caught and ignored by the signal hook, so it did not show
    up in unit tests unless a failed test printed the logged error.
  3. Check for exceptions in more unit tests to avoid hiding the above issue.
  4. Add a new test for review request signal and error during team IDs request.
  5. Fake urlopen calls need **kwargs after a recent kgb update, otherwise
    the fake call raises an exception due to unhandled default arguments.

All unit tests pass.
Manually verified that posting to I Done This works as expected.