コード例 #1
0
 def test_crud(self):
     with self.app_context():
         store = StoreModel.find_store_by_id(1)
         self.assertIsNotNone(store)
         self.assertEqual(store, StoreModel.find_store_by_name("amazon"))
         self.assertEqual(1, store.id)
         self.assertEqual("amazon", store.name)
         self.assertListEqual(["test_name"],
                              [item.name for item in store.items.all()])
         self.assertDictEqual(
             {
                 "id":
                 1,
                 "items": [{
                     "id": 1,
                     "store_id": 1,
                     "name": "test_name",
                     "price": 23.45
                 }],
                 "name":
                 "amazon",
             },
             self.store_schema.dump(store),
         )
         store.delete()
         self.assertIsNone(StoreModel.find_store_by_id(1))
         self.assertIsNone(StoreModel.find_store_by_name("amazon"))
コード例 #2
0
def delete_store(_id):
    store = StoreModel.find_store_by_id(_id)
    if store:
        name = store.name
        store.delete_from_db()
        return message('The {} was deleted from database'.format(name), 200)
    return message("There is no store whose id is equal {}".format(_id), 400)
コード例 #3
0
def update_store(_id):
    store = StoreModel.find_store_by_id(_id)
    if store:
        # The store already exists
        store.update_from_dict(g.data)
        store.update_to_db()
        return jsonify(store.to_dict()), 201
    store.save_to_db()
    return jsonify(store.to_dict()), 200
コード例 #4
0
def get_store(_id):
    store = StoreModel.find_store_by_id(_id)
    if store:
        return jsonify(store.to_dict())
    return message("There is no store whose id is equal {}".format(_id), 400)