def test_url_short_task(self): result = url_short.delay(self.url.id) url_updated = Url.objects.get(pk=self.url.id) self.assertNotEqual(url_updated.key, '') self.assertNotEqual(url_updated.key, None) result = url_short.delay(9999) self.assertEqual(result.failed(), True) self.assertEqual(isinstance(result.result, Url.DoesNotExist), True) url = Url.objects.create(long_url='test2.com') url.key = 'xxx' url.save() result = url_short.delay(url.id) self.assertEqual(result.failed(), True) self.assertEqual(isinstance(result.result, UrlAlreadyUpdatedError), True)
def test_url_short_task(self): result = url_short.delay(self.url.id) result.wait(timeout=WAIT_TIMEOUT) url_updated = Url.objects.get(pk=self.url.id) self.assertNotEqual(url_updated.key, '') self.assertNotEqual(url_updated.key, None) result = url_short.delay(9999) self.assertRaises(ObjectDoesNotExist, result.wait, (), {'timeout': WAIT_TIMEOUT}) self.assertEqual(result.failed(), True) self.assertEqual(isinstance(result.result, ObjectDoesNotExist), True) url = Url.objects.create(long_url='test2.com') url.key = 'xxx' url.save() result = url_short.delay(url.id) self.assertRaises(UrlAlreadyUpdatedError, result.wait, (), {'timeout': WAIT_TIMEOUT}) self.assertEqual(result.failed(), True) self.assertEqual(isinstance(result.result, UrlAlreadyUpdatedError), True)
def url_post_save(sender, **kwargs): instance = kwargs.get('instance') if kwargs.get('created') == True: url_short.delay(instance.id)