def test_load_data(): project = Project() project.find('test load data') entry_id = project.find_entry('test entries') datasource = project.project.input_file[entry_id] key = datasource.keys()[0] entry = project.get_entry_collection(entry_id) print key project.load_datafile(entry_id,key) test_data = entry.query({'a':'1'}) assert test_data['b'] == '2' assert test_data['c'] == '3'
def get(self, project_id, entry, entry_id): project = Project() project.get(project_id) model = project.get_entry_collection(entry) if entry_id: id = objectid.ObjectId(str(entry_id)) result = model.query({"_id": id}) else: result = model.all() data = json.dumps(result, default=bson.json_util.default) resp = Response(data, status=200, mimetype="application/json") resp.headers["Link"] = "http://localhost:5000" return resp
def delete(self, project_id, entry, entry_id): api_key = request.args.get("api_key") if not authorized(api_key, project_id): return jsonify({"status": False}) # if project not in user.user.project: # return jsonify({'status':False}) id = objectid.ObjectId(str(entry_id)) project = Project() project.get(project_id) model = project.get_entry_collection(entry) model.delete({"_id": id}) project.entry_updated() return jsonify({"status": True})
def post(self, project_id, entry): api_key = request.args.get("api_key") if not authorized(api_key, project_id): return jsonify({"status": False, "message": "user is not authenticated"}) # Lets disable it for now. Until flask-principal is implemented # if project not in user.user.project: # return jsonify({'status':False,'message':'user don nott have access to project'}) project = Project() project.get(project_id) model = project.get_entry_collection(entry) model.insert(request.json) project.entry_updated() return jsonify({"status": True})
def setup_test_get(): project = Project() project.create('scraped','test scraping') entry_id = project.add_entry('entry','test entry','entry','entry') model = project.get_entry_collection(entry_id) model.insert({'a':1})