diff --git a/products/serializers.py b/products/serializers.py index 76f8871..69ea95b 100644 --- a/products/serializers.py +++ b/products/serializers.py @@ -14,7 +14,7 @@ class ProductSerializer(TaggitSerializer, serializers.ModelSerializer): class Meta: model = Product - exclude = ['created', 'updated', 'creator'] + exclude = ['updated', 'creator'] class SearchResultSerializer(TaggitSerializer, serializers.ModelSerializer): diff --git a/products/tests.py b/products/tests.py index 84d4385..bbe2151 100644 --- a/products/tests.py +++ b/products/tests.py @@ -191,6 +191,33 @@ class ProductViewSetTest(APITestCase): # Assert number of instnaces in response self.assertEquals(len(expected_instance), len(payload)) + def test_anon_user_can_order_products(self): + # create instances + company = CompanyFactory() + unexpected_instance = [ + self.factory(category='roperos', tags="zapatos, azules"), + self.factory(category='enropados', tags="xxl") + ] + expected_instance = [ + self.factory(category='ropa', tags="zapatos, rojos", company=company), + self.factory(category='ropa', tags="rojos", company=company), + self.factory(category='ropa', tags="colores/rojos", company=company) + ] + # prepare url + url = f"{self.endpoint}?ordering=created" + + # Request list + response = self.client.get(url) + payload = response.json() + + # Assert access is granted + self.assertEqual(response.status_code, status.HTTP_200_OK) + # TODO: assert correct order + previous_date = datetime.datetime.now() + for instance in payload: + self.assertTrue(datetime.datetime.fromisoformat(instance['created'][:-1]) < previous_date) + previous_date = datetime.datetime.fromisoformat(instance['created'][:-1]) + # authenticated user def test_auth_user_can_list_instances(self): """Regular logged-in user can list instance