def setUp(self): super(UserRepeaterTest, self).setUp() self.repeater = UserRepeater( domain=self.domain, url='super-cool-url', ) self.repeater.save()
class UserRepeaterTest(TestCase): domain = 'user-repeater' def setUp(self): super(UserRepeaterTest, self).setUp() self.repeater = UserRepeater( domain=self.domain, url='super-cool-url', ) self.repeater.save() def tearDown(self): super(UserRepeaterTest, self).tearDown() delete_all_repeat_records() delete_all_repeaters() def repeat_records(self): # Enqueued repeat records have next_check set 48 hours in the future. later = datetime.utcnow() + timedelta(hours=48 + 1) return RepeatRecord.all(domain=self.domain, due_before=later) def make_user(self, username): user = CommCareUser.create( self.domain, "{}@{}.commcarehq.org".format(username, self.domain), "123", ) self.addCleanup(user.delete) return user def test_trigger(self): self.assertEqual(0, len(self.repeat_records().all())) user = self.make_user("bselmy") records = self.repeat_records().all() self.assertEqual(1, len(records)) record = records[0] self.assertEqual( json.loads(record.get_payload()), { 'id': user._id, 'username': user.username, 'first_name': '', 'last_name': '', 'default_phone_number': None, 'user_data': { 'commcare_project': self.domain }, 'groups': [], 'phone_numbers': [], 'email': '', 'resource_uri': '/a/user-repeater/api/v0.5/user/{}/'.format(user._id), })
def setUp(self): super().setUp() self.connx = ConnectionSettings.objects.create( domain=self.domain, url='super-cool-url', ) self.repeater = UserRepeater( domain=self.domain, connection_settings_id=self.connx.id, ) self.repeater.save()
class UserRepeaterTest(TestCase): domain = 'user-repeater' def setUp(self): super(UserRepeaterTest, self).setUp() self.repeater = UserRepeater( domain=self.domain, url='super-cool-url', ) self.repeater.save() def tearDown(self): super(UserRepeaterTest, self).tearDown() delete_all_repeat_records() delete_all_repeaters() def repeat_records(self): # Enqueued repeat records have next_check set 48 hours in the future. later = datetime.utcnow() + timedelta(hours=48 + 1) return RepeatRecord.all(domain=self.domain, due_before=later) def make_user(self, username): user = CommCareUser.create( self.domain, "{}@{}.commcarehq.org".format(username, self.domain), "123", ) self.addCleanup(user.delete) return user def test_trigger(self): self.assertEqual(0, len(self.repeat_records().all())) user = self.make_user("bselmy") records = self.repeat_records().all() self.assertEqual(1, len(records)) record = records[0] self.assertEqual( json.loads(record.get_payload()), { 'id': user._id, 'username': user.username, 'first_name': '', 'last_name': '', 'default_phone_number': None, 'user_data': {'commcare_project': self.domain}, 'groups': [], 'phone_numbers': [], 'email': '', 'resource_uri': '/a/user-repeater/api/v0.5/user/{}/'.format(user._id), } )
class UserRepeaterTest(TestCase, DomainSubscriptionMixin): @classmethod def setUpClass(cls): super().setUpClass() cls.domain = 'user-repeater' cls.domain_obj = create_domain(name=cls.domain) # DATA_FORWARDING is on PRO and above cls.setup_subscription(cls.domain, SoftwarePlanEdition.PRO) def setUp(self): super(UserRepeaterTest, self).setUp() self.repeater = UserRepeater( domain=self.domain, url='super-cool-url', ) self.repeater.save() @classmethod def tearDownClass(cls): cls.teardown_subscriptions() cls.domain_obj.delete() clear_plan_version_cache() super().tearDownClass() def tearDown(self): super().tearDown() delete_all_repeat_records() delete_all_repeaters() def repeat_records(self): # Enqueued repeat records have next_check set 48 hours in the future. later = datetime.utcnow() + timedelta(hours=48 + 1) return RepeatRecord.all(domain=self.domain, due_before=later) def make_user(self, username): user = CommCareUser.create( self.domain, "{}@{}.commcarehq.org".format(username, self.domain), "123", ) self.addCleanup(user.delete) return user def test_trigger(self): self.assertEqual(0, len(self.repeat_records().all())) user = self.make_user("bselmy") records = self.repeat_records().all() self.assertEqual(1, len(records)) record = records[0] self.assertEqual( json.loads(record.get_payload()), { 'id': user._id, 'username': user.username, 'first_name': '', 'last_name': '', 'default_phone_number': None, 'user_data': { 'commcare_project': self.domain }, 'groups': [], 'phone_numbers': [], 'email': '', 'resource_uri': '/a/user-repeater/api/v0.5/user/{}/'.format(user._id), })