Beispiel #1
0
 def test_find_by_category(self):
     """ Find Suppliers by Category """
     suppliers = SupplierFactory.create_batch(3)
     suppliers[0].category = "home furnishings"
     suppliers[0].create()
     suppliers[1].category = "health & beauty"
     suppliers[1].create()
     suppliers[2].category = "health & beauty"
     suppliers[2].create()
     results = Supplier.find_by_category("health & beauty")
     logging.debug(results)
     self.assertNotEqual(results, [])
     self.assertEqual(results[0].category, "health & beauty")
Beispiel #2
0
def list_suppliers():
    """ Returns all of the suppliers """
    app.logger.info("Request for Supplier list")
    suppliers = []
    name = request.args.get("name")
    category = request.args.get("category")
    
    if name:
        suppliers = Supplier.find_by_name(name)
    elif category: 
        suppliers = Supplier.find_by_category(category)
    else:
        suppliers = Supplier.all()

    results = [supplier.serialize() for supplier in suppliers]
    return make_response(jsonify(results), status.HTTP_200_OK)
Beispiel #3
0
    def get(self):
        """ Returns all of the Suppliers """
        app.logger.info('Request to list Suppliers...')
        suppliers = []
        args = supplier_args.parse_args()
        if args['category']:
            app.logger.info('Filtering by category: %s', args['category'])
            suppliers = Supplier.find_by_category(args['category'])
        elif args['name']:
            app.logger.info('Filtering by name: %s', args['name'])
            suppliers = Supplier.find_by_name(args['name'])
        elif args['preferred'] is not None:
            app.logger.info('Filtering by preferred: %s', args['preferred'])
            suppliers = Supplier.find_by_preferred(args['preferred'])
        else:
            suppliers = Supplier.all()

        app.logger.info('[%s] Suppliers returned', len(suppliers))
        results = [supplier.serialize() for supplier in suppliers]
        return results, status.HTTP_200_OK