Exemple #1
0
 def test_deserialize_a_supplier(self):
     """ Deserialize a Supplier """
     data = {"_id": 1, "name": "supplier1", "like_count": 2, "is_active": True, "products": [1, 2, 3], "rating": 8.5}
     supplier = Supplier()
     supplier.deserialize(data)
     self.assertNotEqual(supplier, None)
     self.assertEqual(supplier.id, 1)
     self.assertEqual(supplier.name, "supplier1")
     self.assertEqual(supplier.like_count, 2)
     self.assertEqual(supplier.is_active, True)
     self.assertEqual(supplier.products, [1, 2, 3])
     self.assertEqual(supplier.rating, 8.5)
Exemple #2
0
def create_suppliers():
    """
    Creates a Supplier
    This endpoint will create a Supplier based the data in the body that is posted
    """
    app.logger.info("Request to create a Supplier")
    check_content_type("application/json")
    supplier = Supplier()
    supplier.deserialize(request.get_json())
    supplier.create()
    message = supplier.serialize()
    location_url = url_for("get_suppliers", supplier_id=supplier.id, _external=True)
    return make_response(
        jsonify(message), status.HTTP_201_CREATED, {"Location": location_url}
    )
Exemple #3
0
 def post(self):
     """
     Creates a Supplier
     This endpoint will create a Supplier based the data in the body that is posted
     """
     app.logger.info('Request to Create a Supplier')
     supplier = Supplier()
     app.logger.debug('Payload = %s', api.payload)
     supplier.deserialize(api.payload)
     supplier.create()
     app.logger.info('Supplier with new id [%s] saved!', supplier.id)
     location_url = api.url_for(SupplierResource,
                                supplier_id=supplier.id,
                                _external=True)
     return supplier.serialize(), status.HTTP_201_CREATED, {
         'Location': location_url
     }
Exemple #4
0
    def post(self):
        """
        Creates a Supplier
        This endpoint will create a Supplier based the data in the body that is posted
        """
        app.logger.info('Request to Create a Supplier...')

        # 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'],
                "like_count": request.form['like_count'],
                "is_active": request.form['is_active'],
                "products": request.form['products'],
                "rating": request.form['rating']
            }
        else:
            check_content_type('application/json')
            app.logger.info('Getting json data from API call')
            data = request.get_json()
            # Data type transfer
            data = data_type_transfer(data)

        app.logger.info(data)
        supplier = Supplier()
        supplier.deserialize(data)
        supplier.save()
        app.logger.info('Supplier with new id [%s] saved!', supplier.id)
        location_url = api.url_for(SupplierResource,
                                   supplier_id=supplier.id,
                                   _external=True)
        return supplier.serialize(), status.HTTP_201_CREATED, {
            'Location': location_url
        }