Beispiel #1
0
    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"])
Beispiel #2
0
    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)