def test_url_with_supplements_requested(self): url = reverse(BetterSelfResourceConstants.AGGREGATE) start_date = "2020-01-02" supplements = SupplementFactory.create_batch(2, user=self.user_1) start_time = serialize_date_to_user_localized_datetime( start_date, user=self.user_1) for supplement in supplements: SupplementLogFactory(user=self.user_1, supplement=supplement, time=start_time) supplement_uuids = [str(supplement.uuid) for supplement in supplements] kwargs = { "start_date": "2020-01-01", "end_date": "2020-01-02", "supplement_uuids": supplement_uuids, } response = self.client_1.post(url, data=kwargs, format="json") self.assertEqual(response.status_code, 200, response.data) self.assertIsNotNone(response.data["supplements"])
def test_url_with_supplements_requested_filter(self): url = reverse(BetterSelfResourceConstants.AGGREGATE) start_date = "2020-01-02" # delete any previous data to not screw up results SupplementLog.objects.filter(user=self.user_1).delete() supplements = SupplementFactory.create_batch(2, user=self.user_1) start_time = serialize_date_to_user_localized_datetime( start_date, user=self.user_1) for supplement in supplements: SupplementLogFactory(user=self.user_1, supplement=supplement, time=start_time) # only do one uuid supplement_uuids = [ str(supplement.uuid) for supplement in supplements[:1] ] kwargs = { "start_date": "2020-01-01", "end_date": "2020-01-02", "supplement_uuids": supplement_uuids, } response = self.client_1.post(url, data=kwargs, format="json") self.assertEqual(response.status_code, 200, response.data) expected_log_count = SupplementLog.objects.filter( user=self.user_1, supplement__uuid__in=supplement_uuids).count() returned_log_count = len(response.data["supplements"]["logs"]) self.assertEqual(expected_log_count, returned_log_count)