Example #1
0
def create_wishlists():
    """
    Creates a Wishlist
    This endpoint will create a Wishlist based the data in the body that is posted
    """
    app.logger.info('Request to Create a Wishlist...')
    data = {}
    # Check for form submission data
    if request.headers.get('Content-Type') == 'application/x-www-form-urlencoded':
        app.logger.info('Getting data from form submit')
        data = {
            'name': request.form['name'],
            'customer_id': request.form['customer_id']
        }
    else:
        check_content_type('application/json')
        app.logger.info('Getting json data from API call')
        data = request.get_json()
    app.logger.info(data)
    wishlist = Wishlist()
    wishlist.deserialize(data)
    wishlist.save()
    app.logger.info('Wishlist with new id [%s] saved!', wishlist.id)
    message = wishlist.serialize()
    location_url = url_for('get_wishlists', wishlist_id=wishlist.id, _external=True)
    return make_response(jsonify(message), status.HTTP_201_CREATED,
                         {'Location': location_url})
Example #2
0
 def test_deserialize_a_wishlist(self):
     """ Deserialize a Wishlist """
     data = {"name": "Bags", "customer_id": "1"}
     wishlist = Wishlist()
     wishlist.deserialize(data)
     self.assertNotEqual(wishlist, None)
     self.assertEqual(wishlist.id, None)
     self.assertEqual(wishlist.name, "Bags")
     self.assertEqual(wishlist.customer_id, "1")
Example #3
0
 def post(self):
     """
     Creates a Wishlist
     This endpoint will create a Wishlist based the data in the body that is posted
     """
     app.logger.info('Request to Create a wishlist')
     check_content_type('application/json')
     wishlist = Wishlist()
     app.logger.info('Payload = %s', api.payload)
     wishlist.deserialize(api.payload)
     wishlist.save()
     app.logger.info('Wishlist with new id [%s] saved', wishlist.id)
     location_url = api.url_for(WishlistResource,
                                wishlist_id=wishlist.id,
                                _external=True)
     return wishlist.serialize(), status.HTTP_201_CREATED, {
         'Location': location_url
     }
	def test_deserialize_wishlist(self):
		""" Test deserialization of a Wishlist """
		data = {"name": "mikes wishlist", "user": "******", "entries": [
			{"id": 0, "name": "bike"}, {"id": 1, "name": "car"}]}
		wishlist = Wishlist()
		wishlist.deserialize(data)
		self.assertNotEqual(wishlist, None)
		self.assertEqual(wishlist.id, None)
		self.assertEqual(wishlist.name, "mikes wishlist")
		self.assertEqual(wishlist.user, "mike")
		self.assertEqual(wishlist.entries[0].id, 0)
		self.assertEqual(wishlist.entries[1].id, 1)
		self.assertEqual(wishlist.entries[0].name, "bike")
		self.assertEqual(wishlist.entries[1].name, "car")
		wishlist = Wishlist(1)
		wishlist.deserialize(data)
		self.assertNotEqual(wishlist, None)
		self.assertEqual(wishlist.id, None)
		self.assertEqual(wishlist.name, "mikes wishlist")
		self.assertEqual(wishlist.user, "mike")