def list_pets(): """Returns all of the Pets""" app.logger.info("Request for pet list") pets = [] category = request.args.get("category") name = request.args.get("name") available = request.args.get("available") gender = request.args.get("gender") if category: app.logger.info("Filtering by category: %s", category) pets = Pet.find_by_category(category) elif name: app.logger.info("Filtering by name:%s", name) pets = Pet.find_by_name(name) elif available: app.logger.info("Filtering by available: %s", available) is_available = available.lower() in ["yes", "y", "true", "t", "1"] pets = Pet.find_by_availability(is_available) elif gender: app.logger.info("Filtering by gender: %s", gender) pets = Pet.find_by_gender(gender) else: pets = Pet.all() results = [pet.serialize() for pet in pets] app.logger.info("Returning %d pets", len(results)) return make_response(jsonify(results), status.HTTP_200_OK)
def list_pets(): """ Returns all of the Pets """ app.logger.info('Request to list Pets...') pets = [] category = request.args.get('category') name = request.args.get('name') available = request.args.get('available') if available: # convert to boolean available = available.lower() in ['true', 'yes', '1'] if category: app.logger.info('Find by category: %s', category) pets = Pet.find_by_category(category) elif name: app.logger.info('Find by name: %s', name) pets = Pet.find_by_name(name) elif available: app.logger.info('Find by available: %s', available) pets = Pet.find_by_availability(available) else: app.logger.info('Find all') pets = Pet.all() app.logger.info('[%s] Pets returned', len(pets)) results = [pet.serialize() for pet in pets] return make_response(jsonify(results), status.HTTP_200_OK)
def test_find_by_name(self): """ Find a Pet by Name """ Pet("fido", "dog").save() Pet("kitty", "cat").save() pets = Pet.find_by_name("fido") self.assertNotEqual(len(pets), 0) self.assertEqual(pets[0].category, "dog") self.assertEqual(pets[0].name, "fido")
def test_find_by_name(self): """ Find a Pet by Name """ Pet(name="fido", category="dog", available=True).create() Pet(name="kitty", category="cat", available=False).create() pets = Pet.find_by_name("kitty") self.assertEqual(pets[0].category, "cat") self.assertEqual(pets[0].name, "kitty") self.assertEqual(pets[0].available, False)
def test_vcap_services(self): """ Test if VCAP_SERVICES works """ Pet.init_db() self.assertIsNotNone(Pet.client) Pet("fido", "dog", True).save() pets = Pet.find_by_name("fido") self.assertNotEqual(len(pets), 0) self.assertEqual(pets[0].name, "fido")
def test_for_case_insensitive(self): """ Test for Case Insensitive Search """ Pet(0, "Fido", "DOG").save() Pet(0, "Kitty", "CAT").save() pets = Pet.find_by_name("fido") self.assertNotEqual(len(pets), 0) self.assertEqual(pets[0].name, "Fido") pets = Pet.find_by_category("cat") self.assertNotEqual(len(pets), 0) self.assertEqual(pets[0].category, "CAT")
def test_find_by_name(self): """It should Find a Pet by Name""" pets = PetFactory.create_batch(5) for pet in pets: pet.create() name = pets[0].name found = Pet.find_by_name(name) self.assertEqual(found.count(), 1) self.assertEqual(found[0].category, pets[0].category) self.assertEqual(found[0].name, pets[0].name) self.assertEqual(found[0].available, pets[0].available) self.assertEqual(found[0].gender, pets[0].gender) self.assertEqual(found[0].birthday, pets[0].birthday)
def test_find_by_name(self): """Find a Pet by Name""" self._create_pets(5) saved_pet = PetFactory() saved_pet.name = "Rumpelstiltskin" saved_pet.create() # search by name pets = Pet.find_by_name("Rumpelstiltskin") self.assertNotEqual(len(pets), 0) pet = pets[0] self.assertEqual(pet.name, "Rumpelstiltskin") self.assertEqual(pet.category, saved_pet.category) self.assertEqual(pet.available, saved_pet.available) self.assertEqual(pet.gender, saved_pet.gender)
def list_pets(): """ Returns all of the Pets """ app.logger.info("Request for pet list") pets = [] category = request.args.get("category") name = request.args.get("name") if category: pets = Pet.find_by_category(category) elif name: pets = Pet.find_by_name(name) else: pets = Pet.all() results = [pet.serialize() for pet in pets] return make_response(jsonify(results), status.HTTP_200_OK)
def list_pets(): """ Returns all of the Pets """ app.logger.info('Request for List Pets') pets = [] category = request.args.get('category') name = request.args.get('name') available = request.args.get('available') if category: pets = Pet.find_by_category(category) elif name: pets = Pet.find_by_name(name) elif available: pets = Pet.find_by_availability(available) else: pets = Pet.all() results = [pet.serialize() for pet in pets] return make_response(jsonify(results), status.HTTP_200_OK)
def get(self): """ Returns all of the Pets """ app.logger.info('Request to list Pets...') pets = [] category = request.args.get('category') name = request.args.get('name') available = request.args.get('available') if category: pets = Pet.find_by_category(category) elif name: pets = Pet.find_by_name(name) elif available: pets = Pet.find_by_availability(available) else: pets = Pet.all() app.logger.info('[%s] Pets returned', len(pets)) results = [pet.serialize() for pet in pets] return results, status.HTTP_200_OK
def list_pets(): """ Returns all of the Pets """ app.logger.info('Request to list Pets...') pets = [] category = request.args.get('category') name = request.args.get('name') if category: app.logger.info('Find by category') pets = Pet.find_by_category(category) elif name: app.logger.info('Find by name') pets = Pet.find_by_name(name) else: app.logger.info('Find all') pets = Pet.all() app.logger.info('[%s] Pets returned', len(pets)) results = [pet.serialize() for pet in pets] return make_response(jsonify(results), status.HTTP_200_OK)
def get(self): """ Returns all of the Pets """ app.logger.info('Request to list Pets...') pets = [] args = pet_args.parse_args() if args['category']: app.logger.info('Filtering by category: %s', args['category']) pets = Pet.find_by_category(args['category']) elif args['name']: app.logger.info('Filtering by name: %s', args['name']) pets = Pet.find_by_name(args['name']) elif args['available'] is not None: app.logger.info('Filtering by availability: %s', args['available']) pets = Pet.find_by_availability(args['available']) else: pets = Pet.all() app.logger.info('[%s] Pets returned', len(pets)) results = [pet.serialize() for pet in pets] return results, status.HTTP_200_OK
def get(self): """ Returns all of the Pets """ app.logger.info('Request to list Pets...') pets = [] category = request.args.get('category') name = request.args.get('name') available = request.args.get('available') if category: app.logger.info('Filtering by category: %s', category) pets = Pet.find_by_category(category) elif name: app.logger.info('Filtering by name:%s', name) pets = Pet.find_by_name(name) elif available: app.logger.info('Filtering by available: %s', available) is_available = available.lower() in ['yes', 'y', 'true', 't', '1'] pets = Pet.find_by_availability(is_available) else: pets = Pet.all() app.logger.info('[%s] Pets returned', len(pets)) results = [pet.serialize() for pet in pets] return results, status.HTTP_200_OK