def load(self): self.tasks = pbclient.find_tasks(**self.query) last_fetched_tasks = self.tasks del self.query['offset'] while self._tasks_not_exhausted(last_fetched_tasks): self.query['last_id'] = last_fetched_tasks[-1].id last_fetched_tasks = pbclient.find_tasks(**self.query) self.tasks += last_fetched_tasks return self.tasks
def send_data(): api_key = request.json.get('api_key') server_url = request.json.get('server_url') data = request.json.get('data') project_name = request.json.get('project_name') tpl_presenter = render_template('presenter.html', steps=data['steps'], project_name=project_name) pbclient.set('endpoint', server_url) pbclient.set('api_key', api_key) # TODO: check error app = pbclient.find_app(short_name=project_name)[0] app.info['task_presenter'] = tpl_presenter for task in pbclient.find_tasks(app.id): pbclient.delete_task(task.id) for task in data['tasks']: pbclient.create_task(app.id, task) pbclient.update_app(app) return '', 200
def test_add_task_01(self): try: for i in range(0,15): self.app_tt.add_task({1: "info1", 2: "info2"}) tasks = pbclient.find_tasks(self.app_tt.app_id) self.assertEquals(len(tasks), 15) for i in range(0,15): self.assertEquals(tasks[i].info['1'], unicode("info1", 'utf-8')) self.assertEquals(tasks[i].info['2'], unicode("info2", 'utf-8')) except Exception as e: assert False
def test_add_task_02(self): try: for i in range(0,15): self.app_tt.add_task({1: "info1", 2: "info2"}, priority=random.randrange(0,1)) tasks = pbclient.find_tasks(self.app_tt.app_id) self.assertEquals(len(tasks), 15) for i in range(0,15): self.assertEquals(tasks[i].info['1'], unicode("info1",'utf-8')) self.assertEquals(tasks[i].info['2'], unicode("info2",'utf-8')) self.assertTrue(tasks[i].priority_0 >= 0 and tasks[i].priority_0 <= 1) except Exception as e: print e assert False
def test_get_tasks_01(self): try: for i in range(0,15): self.app_tt.add_task({1: "info1", 2: "info2"}) tasks = pbclient.find_tasks(self.app_tt.app_id) tasks2 = self.app_tt.get_tasks() self.assertEquals(len(tasks), 15) self.assertEquals(len(tasks2), 15) for t1 in tasks: for t2 in tasks2: if t1.id == t2.id: self.assertEquals(t1.info['1'], t2.info['1']) self.assertEquals(t1.info['2'], t2.info['2']) except Exception as e: print e assert False
def getTasksAmount( app_id ): return len( pbclient.find_tasks( app_id ) )
def getOverallProgress( app_id ): tasks_completed_amount = len( pbclient.find_tasks( app_id, state = "completed" ) ) tasks_amount = len( pbclient.find_tasks( app_id ) ) return round( ( tasks_completed_amount / float(tasks_amount) ) * 100, 2 )
parser.error("You must supply an API-KEY to create an applicationa and tasks in PyBossa") else: pbclient.set('api_key', options.api_key) if (options.verbose): print('Running against PyBosssa instance at: %s' % options.api_url) print('Using API-KEY: %s' % options.api_key) if (options.results): offset = 0 limit = 100 app = pbclient.find_app(short_name=app_config['short_name'])[0] if options.completed or options.average: completed_tasks = pbclient.find_tasks(app.id, state="completed", offset=offset, limit=limit) else: completed_tasks = pbclient.find_tasks(app.id, offset=offset, limit=limit) # Now get the task runs import csv if not (options.csv_file): options.csv_file = "results.csv" f = csv.writer(open(options.csv_file, "wb")) f.writerow(['taskid', 'incident id', 'incident title',
) else: pbclient.set('api_key', options.api_key) if (options.verbose): print('Running against PyBosssa instance at: %s' % options.api_url) print('Using API-KEY: %s' % options.api_key) if (options.results): offset = 0 limit = 100 app = pbclient.find_app(short_name='philippinestyphoon')[0] if options.completed: completed_tasks = pbclient.find_tasks(app.id, state="completed", offset=offset, limit=limit) else: completed_tasks = pbclient.find_tasks(app.id, offset=offset, limit=limit) # Now get the task runs import csv f = csv.writer(open("results.csv", "wb")) f.writerow([ 'taskid', 'tweetid', 'text', 'date', 'username',
parser.add_option("-u", "--update", dest="update", action="store_true", help="Update the templates of the application", metavar="UPDATE-APP") parser.add_option("-v", "--verbose", action="store_true", dest="verbose") (options, args) = parser.parse_args() if not options.update: fw_client = pbclient fw_client.set('endpoint','http://forestwatchers.net/pybossa') fw_client.set('api_key', options.api_key) besttile = pbclient.find_app(short_name='besttile')[0] offset = 0 limit = 100 completed_tasks = pbclient.find_tasks(besttile.id, state="completed", offset=0,limit=200) if not options.api_url: options.api_url = 'http://localhost:5000' pbclient.set('endpoint', options.api_url) if not options.api_key: parser.error("You must supply an API-KEY to create an applicationa and tasks in PyBossa") else: pbclient.set('api_key', options.api_key) if not options.template: print("Using default template: template.html") options.template = "template.html"