return everything when searching for empty string

This commit is contained in:
Sam
2021-02-23 12:17:30 +00:00
parent 31066e80bf
commit cbfbfb93f3
2 changed files with 28 additions and 1 deletions

View File

@@ -621,6 +621,30 @@ class ProductSearchTest(TestCase):
payload = response.json()
self.assertEquals(len(payload['products']), 2)
def test_anon_user_can_search_empty_string(self):
expected_instances = [
self.factory(tags="lunares/rojos", category='zapatos', description="zapatos verdes", discount=None),
self.factory(tags="colores/rojos, tono/brillante", discount=100.00),
self.factory(tags="lunares/azules", description="zapatos rojos", discount=12.00),
self.factory(tags="lunares/rojos", description="zapatos", discount=0.00),
self.factory(attributes='"zapatos de campo", tono/oscuro', discount=9.00),
]
unexpected_instances = [
self.factory(description="chanclas"),
self.factory(tags="azules"),
]
query_string = quote("zapatos rojos")
# discount=true
url = f"{self.endpoint}?query_string="
# send in request
response = self.client.get(url)
# check response
self.assertEqual(response.status_code, 200)
# load response data
payload = response.json()
self.assertEquals(len(payload['products']), len(expected_instances) + len(unexpected_instances))
class MyProductsViewTest(APITestCase):
"""my_products tests

View File

@@ -176,7 +176,10 @@ def product_search(request):
return Response({"errors": {"details": "No query string to parse"}})
elif query_string is '':
# return everything
pass
serializer = ProductSerializer(Product.objects.all(), many=True)
products = serializer.data
# filters = extract_search_filters(products)
return Response(data={"filters": [], "count": len(products), "products": products})
try:
# we collect our results here
result_set = set()