def test_has_expired(self): obj = AccessToken() self.assertIsNone(obj.expires_at) self.assertTrue(obj.has_expired) for i in range(-100, 100, 10): obj.expires_at = datetime.datetime.now() + datetime.timedelta(milliseconds=i) self.assertEqual(obj.has_expired, obj.expires_at < datetime.datetime.now())
def test_set_expiry(self): timestamp = datetime.datetime.now() - datetime.timedelta(seconds=10) obj = AccessToken(expires_at=timestamp) self.assertEqual(obj.expires_at, timestamp) self.assertTrue(obj.has_expired) with mock.patch('hipchat.models.tz_now', lambda: timestamp): obj.set_expiry(10) self.assertFalse(obj.has_expired) self.assertEqual(obj.expires_at, timestamp + datetime.timedelta(seconds=10))
def test_parse_json(self): data = { 'access_token': '5236346233724572457245gdgreyt345yreg', 'expires_in': 431999999, 'group_id': 123, 'group_name': 'Example Company', 'scope': 'send_notification', 'token_type': 'bearer' } obj = AccessToken() timestamp = datetime.datetime.now() - datetime.timedelta(seconds=10) with mock.patch('hipchat.models.tz_now', lambda: timestamp): obj.parse_json(data) self.assertEqual(obj.access_token, data['access_token']) self.assertEqual(obj.group_id, data['group_id']) self.assertEqual(obj.group_name, data['group_name']) self.assertEqual(obj.scope, data['scope']) self.assertEqual( obj.expires_at, timestamp + datetime.timedelta(seconds=data['expires_in']) )
def test_save(self): obj = AccessToken(app=self.app, install=self.install, group_id=123) self.assertEqual(obj.save(), obj) self.assertIsNotNone(obj.id)