{"action":"created","issue":{"url":"https://api.github.com/repos/SickRage/SickRage/issues/12","labels_url":"https://api.github.com/repos/SickRage/SickRage/issues/12/labels{/name}","comments_url":"https://api.github.com/repos/SickRage/SickRage/issues/12/comments","events_url":"https://api.github.com/repos/SickRage/SickRage/issues/12/events","html_url":"https://github.com/SickRage/SickRage/pull/12","id":117010335,"number":12,"title":"add some unit tests for exceptions helper","user":{"login":"alisonatwork","id":660556,"avatar_url":"https://avatars.githubusercontent.com/u/660556?v=3","gravatar_id":"","url":"https://api.github.com/users/alisonatwork","html_url":"https://github.com/alisonatwork","followers_url":"https://api.github.com/users/alisonatwork/followers","following_url":"https://api.github.com/users/alisonatwork/following{/other_user}","gists_url":"https://api.github.com/users/alisonatwork/gists{/gist_id}","starred_url":"https://api.github.com/users/alisonatwork/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alisonatwork/subscriptions","organizations_url":"https://api.github.com/users/alisonatwork/orgs","repos_url":"https://api.github.com/users/alisonatwork/repos","events_url":"https://api.github.com/users/alisonatwork/events{/privacy}","received_events_url":"https://api.github.com/users/alisonatwork/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-11-15T18:45:16Z","updated_at":"2015-11-15T19:41:02Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/SickRage/SickRage/pulls/12","html_url":"https://github.com/SickRage/SickRage/pull/12","diff_url":"https://github.com/SickRage/SickRage/pull/12.diff","patch_url":"https://github.com/SickRage/SickRage/pull/12.patch"},"body":"Well that was rather annoying. I also hit this issue: https://github.com/SiCKRAGETV/sickrage-issues/issues/2358 and could not figure out what was happening. So I started writing unit tests for this class, until I realized the problem happened earlier. Here's how we can recreate it:\r\n\r\n```\r\nclass Dummy():\r\n    def __str__(self):\r\n        return DummyException()\r\n\r\nclass DummyException(Exception):\r\n    pass\r\n```\r\n...\r\n```\r\n    def test_bad_string_issue_2358(self):\r\n        try:\r\n            o = Dummy()\r\n            print 'Error : %s' % o\r\n        except TypeError as e:\r\n            self.assertEqual(ex(e), u'lala')\r\n```\r\nI figured we can keep the unit tests instead of throwing them away... Next step is to figure out which string interpolation in helpers.py is getting the object with the broken __str__ method. Sigh..."},"comment":{"url":"https://api.github.com/repos/SickRage/SickRage/issues/comments/156846142","html_url":"https://github.com/SickRage/SickRage/pull/12#issuecomment-156846142","issue_url":"https://api.github.com/repos/SickRage/SickRage/issues/12","id":156846142,"user":{"login":"miigotu","id":390379,"avatar_url":"https://avatars.githubusercontent.com/u/390379?v=3","gravatar_id":"","url":"https://api.github.com/users/miigotu","html_url":"https://github.com/miigotu","followers_url":"https://api.github.com/users/miigotu/followers","following_url":"https://api.github.com/users/miigotu/following{/other_user}","gists_url":"https://api.github.com/users/miigotu/gists{/gist_id}","starred_url":"https://api.github.com/users/miigotu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/miigotu/subscriptions","organizations_url":"https://api.github.com/users/miigotu/orgs","repos_url":"https://api.github.com/users/miigotu/repos","events_url":"https://api.github.com/users/miigotu/events{/privacy}","received_events_url":"https://api.github.com/users/miigotu/received_events","type":"User","site_admin":false},"created_at":"2015-11-15T19:41:02Z","updated_at":"2015-11-15T19:41:02Z","body":":+1:  for more unit tests, will merge after football probably"}}