def test_reporter_group(self): self.clear_cache() with patch("ureport.utils.datetime_to_ms") as mock_datetime_ms: mock_datetime_ms.return_value = 500 with patch('dash.orgs.models.TembaClient.get_groups') as mock: group_dict = dict(uuid="group-uuid", name="reporters", size=25) mock.return_value = Group.deserialize_list([group_dict]) with patch('django.core.cache.cache.set') as cache_set_mock: cache_set_mock.return_value = "Set" with patch('django.core.cache.cache.delete') as cache_delete_mock: cache_delete_mock.return_value = "Deleted" fetch_reporter_group(self.org) self.assertFalse(mock.called) self.assertFalse(cache_set_mock.called) self.assertEqual(self.org.get_reporter_group(), dict()) self.org.set_config("reporter_group", "reporters") fetch_reporter_group(self.org) mock.assert_called_with(name='reporters') key = CACHE_ORG_REPORTER_GROUP_KEY % (self.org.pk, "reporters") cache_set_mock.assert_called_with(key, {'time': 500, 'results': group_dict}, UREPORT_ASYNC_FETCHED_DATA_CACHE_TIME) cache_delete_mock.assert_called_with(GLOBAL_COUNT_CACHE_KEY) with patch('django.core.cache.cache.get') as cache_get_mock: cache_get_mock.return_value = {'time': 500, 'results': group_dict} self.assertEqual(get_reporter_group(self.org), group_dict)
def get_groups(self, uuids=None, name=None, pager=None): return Group.deserialize_list([dict(uuid="uuid-8", name=name, size=120)])