def test_400(self): g = Sender(api_key='fake', url='http://localhost:9000/400/') ids = ['ABC123'] n = {'icon': 1} # bad payload! m = Message(registration_ids=ids, notification=n) send = lambda: g.send(m) self.assertRaises(GCMException, send)
def test_invalid_api_key(self): s = Sender(api_key='fake', url='http://localhost:9000/401/') ids = ['ABC123', 'DEF456'] data = {'score': 5.0} m = Message(registration_ids=ids, data=data) send = lambda: s.send(m) self.assertRaises(GCMException, send)
def test_200(self): g = Sender(api_key='fake', url='http://localhost:9000/200/') ids = ['ABC123'] d = {'score': 5.0} m = Message(registration_ids=ids, data=d) r = g.send(m) self.assertEqual(r.get_retry_message(), None) self.assertEqual(len(r.success), 1)
def test_501(self): g = Sender(api_key='fake', url='http://localhost:9000/501/') ids = ['ABC123'] d = {'score': 5.0} m = Message(registration_ids=ids, data=d) r = g.send(m) self.assertEqual(int(r.backoff), 5) retry_msg = r.get_retry_message() self.assertNotEqual(retry_msg, None) self.assertEqual(m.body, retry_msg.body) self.assertNotEqual(id(m), id(retry_msg))
def test_200_2(self): g = Sender(api_key='fake', url='http://localhost:9000/200_2/') ids = ['oldToken123', 'ABC123', 'CBA123', '123ABC'] d = {'score': 5.0} m = Message(registration_ids=ids, data=d) r = g.send(m) self.assertNotEqual(r.get_retry_message(), None) self.assertEqual(len(r.success), 1) self.assertEqual(r.canonicals['oldToken123'], 'newToken123') self.assertEqual(len(r.unavailables), 1) self.assertEqual(len(r.unregistered), 1) self.assertEqual(len(r.failure), 1) # test network issues g.url = 'http://localhost:1111' # invalid send = lambda: g.send(m) self.assertRaises(Exception, send) g.api_key = None self.assertRaises(ValueError, send)