def get_products():
    """Servicio de búsqueda de productos: Devuelve un listado
     de productos utilizando varios de sus atributos como filtros"""

    keys = ['text', 'units', 'min_price', 'max_price', 'longitude', 'latitude',
            'min_distance', 'max_distance', 'categories', 'payment_methods', 'seller']
    single_value_keys = ['units', 'min_price', 'max_price', 'longitude', 'latitude', 'seller',
                         'latitude', 'longitude', 'min_distance', 'max_distance']

    params = request.args.to_dict(flat=False)
    filters = dict()
    for key in keys:
        if key in params:
            if key in single_value_keys:
                filters[key] = params[key][0]
            else:
                filters[key] = params[key]
    products = ProductsService.get_products(filters)
    return jsonify(count=len(products), result=products), 200
示例#2
0
def test_get_products_if_none_found_raises_not_found_error(pm_mock):
    filters = dict()
    pm_mock.return_value = []
    with pytest.raises(NotFoundError):
        ProductsService.get_products(filters)