def create_t4_task(test_case, book_id, task_t3, number_of_expected_t4_tasks):
    # creating an answer for the T3 app
    answer_t3 = '{\"img_url\":\"https://localhost/mb-static/books/rpparaiba1918/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}'
    task_run = dict(app_id=task_t3.app_id, task_id=task_t3.id, info=answer_t3)
    
    # Anonymous submission
    submit_answer(test_case.base_url, task_run)
    
    # FB authenticated user submission
    task_run['facebook_user_id'] = '12345'
    submit_answer(test_case.base_url, task_run)
    
    # Signalling the T3 task completion
    done_task(test_case.app, task_t3.id)
    time.sleep(10)
    
    # check if T3 task is closed
    task_t3 = pbclient.get_tasks(task_t3.app_id, sys.maxint)[0]
    test_case.assertTrue(task_t3.state == "completed")
    
    # one task from T4 app should exist
    app_t4 = pbclient.find_app(short_name=book_id + "_tt4")
    test_case.assertTrue(len(app_t4) > 0, "Error tt_app was not created")
    
    t4_tasks = pbclient.get_tasks(app_t4[0].id, sys.maxint)
    test_case.assertTrue(len(t4_tasks) == number_of_expected_t4_tasks)
    
    return t4_tasks
 def test_add_next_task_02(self):
     """
       Try to create twice a new task from the same task T3
     """
     
     try:
         task_run1 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/rpparaiba1918/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
         task_run2 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/rpparaiba1918/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
      
         # Anonymous submission
         submit_answer(self.base_url, task_run1)
              
         # FB authenticated user submission
         task_run2['facebook_user_id'] = '12345'
         submit_answer(self.base_url, task_run2)
              
         time.sleep(2)
              
         self.assertTrue(self.task1.check_answer())
             
         self.assertTrue(self.task1.add_next_task())
         
         self.task1.add_next_task()
              
     except Meb_exception_tt3 as e:
         self.assertEquals(e.code, 3)
def create_t3_task(test_case, book_id, task_t2):
    # creating an answer for the T2 app
    answer_t2 = '[{\"id\":\"new\",\"top\":244,\"left\":24,\"width\":506,\"height\":177,\"text\":{\"titulo\":\"test-titulo\",\"subtitulo\":\"test-subtitulo\",\"assunto\":\"0\",\"fontes\":\"test-fontes\",\"outros\":\"\",\"dataInicial\":\"01/01/1901\",\"dataFinal\":\"01/01/1902\",\"girar\":false,\"nao_girar\":true},\"editable\":true}, {\"id\":\"new\",\"top\":100,\"left\":300,\"width\":250,\"height\":230,\"text\":{\"titulo\":\"test-titulo\",\"subtitulo\":\"test-subtitulo\",\"assunto\":\"3\",\"fontes\":\"test-fontes\",\"outros\":\"test-outros\",\"dataInicial\":\"01/01/1901\",\"dataFinal\":\"01/01/1902\",\"girar\":false,\"nao_girar\":true},\"editable\":true}]'
    task_run = dict(app_id=task_t2.app_id, task_id=task_t2.id, info=answer_t2)
    
    # Anonymous submission
    submit_answer(test_case.base_url, task_run)
    
    # FB authenticated user submission
    task_run['facebook_user_id'] = '12345'
    submit_answer(test_case.base_url, task_run)
    
    # Signalling the T2 task completion
    done_task(test_case.app, task_t2.id)
    time.sleep(15)
    
    # check if T2 task is closed
    task_t2 = pbclient.get_tasks(task_t2.app_id, sys.maxint)[0]
    test_case.assertTrue(task_t2.state == "completed")
    
    # one task from T3 app should exist
    app_t3 = pbclient.find_app(short_name=book_id + "_tt3")
    test_case.assertTrue(len(app_t3) > 0, "Error tt_app was not created")
    
    t3_tasks = pbclient.get_tasks(app_t3[0].id, sys.maxint)
    test_case.assertTrue(len(t3_tasks) == 2)
    
    return t3_tasks
 def test_add_next_task_01(self):
     """
       Detection of invalid task group
     """
     
     try:
         task_run1 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/caracterizaoeten2001bras/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
         task_run2 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/caracterizaoeten2001bras/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
      
         # Anonymous submission
         submit_answer(self.base_url, task_run1)
              
         # FB authenticated user submission
         task_run2['facebook_user_id'] = '12345'
         submit_answer(self.base_url, task_run2)
              
         time.sleep(2)
              
         self.assertTrue(self.task1.check_answer())
             
         self.assertFalse(self.task1.add_next_task())
              
     except Exception as e:
         print e
         assert False
コード例 #5
0
 def test_check_answer_01(self):
     try:
         task_run1 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="[{\"id\":\"new\",\"top\":50,\"left\":9.5,\"width\":525,\"height\":626,\"text\":{\"titulo\":\"\",\"subtitulo\":\"\",\"assunto\":\"4\",\"fontes\":\"\",\"outros\":\"\",\"dataInicial\":\"\",\"dataFinal\":\"\",\"girar\":false,\"nao_girar\":true},\"editable\":true}]")
         task_run2 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="[{\"id\":\"new\",\"top\":50,\"left\":9.5,\"width\":525,\"height\":626,\"text\":{\"titulo\":\"\",\"subtitulo\":\"\",\"assunto\":\"4\",\"fontes\":\"\",\"outros\":\"\",\"dataInicial\":\"\",\"dataFinal\":\"\",\"girar\":false,\"nao_girar\":true},\"editable\":true}]")
             
         # Anonymous submission
         submit_answer(self.base_url, task_run1)
               
         # FB authenticated user submission
         task_run2['facebook_user_id'] = '12345'
         submit_answer(self.base_url, task_run2)
               
         time.sleep(2)
              
         self.assertTrue(self.task1.check_answer())
               
         trs = self.task1.get_task_runs()
   
         self.assertEquals(trs[0].info, "[{\"id\":\"new\",\"top\":50,\"left\":9.5,\"width\":525,\"height\":626,\"text\":{\"titulo\":\"\",\"subtitulo\":\"\",\"assunto\":\"4\",\"fontes\":\"\",\"outros\":\"\",\"dataInicial\":\"\",\"dataFinal\":\"\",\"girar\":false,\"nao_girar\":true},\"editable\":true}]")
         self.assertEquals(trs[1].info, "[{\"id\":\"new\",\"top\":50,\"left\":9.5,\"width\":525,\"height\":626,\"text\":{\"titulo\":\"\",\"subtitulo\":\"\",\"assunto\":\"4\",\"fontes\":\"\",\"outros\":\"\",\"dataInicial\":\"\",\"dataFinal\":\"\",\"girar\":false,\"nao_girar\":true},\"editable\":true}]")
             
         self.assertTrue(self.task1.check_answer())
         self.assertEquals(self.task1.task.state, '0')
             
         self.task1.close_task()
             
         self.assertEquals(self.task1.task.state, 'completed')
             
     except Exception as e:
         print e
         assert False
 def test_check_answer_01(self):
     try:
         task_run1 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/rpparaiba1918/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
         task_run2 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/rpparaiba1918/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
              
         # Anonymous submission
         submit_answer(self.base_url, task_run1)
                
         # FB authenticated user submission
         task_run2['facebook_user_id'] = '12345'
         submit_answer(self.base_url, task_run2)
                
         time.sleep(2)
               
         self.assertTrue(self.task1.check_answer())
                
         trs = self.task1.get_task_runs()
    
         self.assertEquals(trs[0].info, '{\"img_url\":\"https://localhost/mb-static/books/rpparaiba1918/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
         self.assertEquals(trs[1].info, '{\"img_url\":\"https://localhost/mb-static/books/rpparaiba1918/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
              
         self.assertTrue(self.task1.check_answer())
         self.assertEquals(self.task1.task.state, '0')
              
         self.task1.close_task()
              
         self.assertEquals(self.task1.task.state, 'completed')
              
     except Exception as e:
         print e
         assert False
def create_t2_task(test_case, book_id, task_t1):
    # creating an answer for the T1 app
    task_run = dict(app_id=task_t1.app_id, task_id=task_t1.id, info="Yes")

    # Anonymous submission
    submit_answer(test_case.base_url, task_run)
    
    # FB authenticated user submission
    task_run['facebook_user_id'] = '12345'
    submit_answer(test_case.base_url, task_run)
    
    # Signalling the T1 task completion
    done_task(test_case.app, task_t1.id)
    time.sleep(5)
    
    # check if T1 task is closed
    task_t1 = pbclient.get_tasks(task_t1.app_id, sys.maxint)[0]
    test_case.assertTrue(task_t1.state == "completed")
    
    # one task from T2 app should exist
    app_t2 = pbclient.find_app(short_name=book_id + "_tt2")
    test_case.assertTrue(len(app_t2) > 0, "Error tt_app was not created")
    
    t2_tasks = pbclient.get_tasks(app_t2[0].id, sys.maxint)
    test_case.assertTrue(len(t2_tasks) == 1)
    
    return t2_tasks[0]
コード例 #8
0
 def test_add_next_task_03(self):
     """
        Try to create the next task from the same task T2
     """
     try:
         task_run1 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="[{\"id\":\"new\",\"top\":50,\"left\":9.5,\"width\":525,\"height\":626,\"text\":{\"titulo\":\"\",\"subtitulo\":\"\",\"assunto\":\"4\",\"fontes\":\"\",\"outros\":\"\",\"dataInicial\":\"\",\"dataFinal\":\"\",\"girar\":false,\"nao_girar\":true},\"editable\":true}]")
         task_run2 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="[{\"id\":\"new\",\"top\":50,\"left\":9.5,\"width\":525,\"height\":626,\"text\":{\"titulo\":\"\",\"subtitulo\":\"\",\"assunto\":\"4\",\"fontes\":\"\",\"outros\":\"\",\"dataInicial\":\"\",\"dataFinal\":\"\",\"girar\":false,\"nao_girar\":true},\"editable\":true}]")
   
         # Anonymous submission
         submit_answer(self.base_url, task_run1)
           
         # FB authenticated user submission
         task_run2['facebook_user_id'] = '12345'
         submit_answer(self.base_url, task_run2)
           
         time.sleep(2)
           
         self.assertTrue(self.task1.check_answer())
          
         self.assertTrue(self.task1.add_next_task())
          
         self.task1.add_next_task()
         
         assert False  
     except Meb_exception_tt2 as e:
         self.assertEquals(e.code, 6)
コード例 #9
0
 def test_check_answer_01(self):
     try:
         task_run1 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info='{\"cells\":[[0, 0, 34, 60], [34, 0, 227, 60], [227, 0, 300, 60], [300, 0, 374, 60]],\"computer_values\":[\"PARA\u00cdBA ( ESTADO )\",\"PRES IDENTE\",\"( FRANC|SCO CAM!\",\"\u00a1LLO DE HOLLANDA )\"],\"human_values\":[\"PARAIBA ( ESTADO )\",\"PRESIDENTE\",\"( FRANCISCO CAMILLO DE HOLLANDA )\",\"MENSAGEM 19 DE SETEMBRO DE 1918.\"],\"confidences\":[83,88,83,81],\"num_of_confirmations\":[2,2,2,2]}')
         task_run2 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info='{\"cells\":[[0, 0, 34, 60], [34, 0, 227, 60], [227, 0, 300, 60], [300, 0, 374, 60]],\"computer_values\":[\"PARA\u00cdBA ( ESTADO )\",\"PRES IDENTE\",\"( FRANC|SCO CAM!\",\"\u00a1LLO DE HOLLANDA )\"],\"human_values\":[\"PARAIBA ( ESTADO )\",\"PRESIDENTE\",\"( FRANCISCO CAMILLO DE HOLLANDA )\",\"MENSAGEM 19 DE SETEMBRO DE 1918.\"],\"confidences\":[83,88,83,81],\"num_of_confirmations\":[2,2,2,2]}')
             
         # Anonymous submission
         submit_answer(self.base_url, task_run1)
               
         # FB authenticated user submission
         task_run2['facebook_user_id'] = '12345'
         submit_answer(self.base_url, task_run2)
               
         time.sleep(2)
              
         self.assertTrue(self.task1.check_answer())
               
         trs = self.task1.get_task_runs()
   
         self.assertEquals(trs[0].info, '{\"cells\":[[0, 0, 34, 60], [34, 0, 227, 60], [227, 0, 300, 60], [300, 0, 374, 60]],\"computer_values\":[\"PARA\u00cdBA ( ESTADO )\",\"PRES IDENTE\",\"( FRANC|SCO CAM!\",\"\u00a1LLO DE HOLLANDA )\"],\"human_values\":[\"PARAIBA ( ESTADO )\",\"PRESIDENTE\",\"( FRANCISCO CAMILLO DE HOLLANDA )\",\"MENSAGEM 19 DE SETEMBRO DE 1918.\"],\"confidences\":[83,88,83,81],\"num_of_confirmations\":[2,2,2,2]}')
         self.assertEquals(trs[1].info, '{\"cells\":[[0, 0, 34, 60], [34, 0, 227, 60], [227, 0, 300, 60], [300, 0, 374, 60]],\"computer_values\":[\"PARA\u00cdBA ( ESTADO )\",\"PRES IDENTE\",\"( FRANC|SCO CAM!\",\"\u00a1LLO DE HOLLANDA )\"],\"human_values\":[\"PARAIBA ( ESTADO )\",\"PRESIDENTE\",\"( FRANCISCO CAMILLO DE HOLLANDA )\",\"MENSAGEM 19 DE SETEMBRO DE 1918.\"],\"confidences\":[83,88,83,81],\"num_of_confirmations\":[2,2,2,2]}')
             
         self.assertTrue(self.task1.check_answer())
         self.assertEquals(self.task1.task.state, '0')
             
         self.task1.close_task()
             
         self.assertEquals(self.task1.task.state, 'completed')
             
     except Exception as e:
         print e
         assert False
コード例 #10
0
 def test_add_next_task_02(self):
     """
        Invalid book
     """
     try:
         book_title = "BLBLB_title"
         app = Apptt_meta(short_name="BLBLB_tt2", title=book_title)
         app.add_task(task_info=dict(link="http://archive.org/download/livro1/n1", page=1))
         app.add_task(task_info=dict(link="http://archive.org/download/livro1/n2", page=2))
          
         tasks = pbclient.get_tasks(app_id=app.app_id)
          
         task1 = TTTask2(tasks[0].id, app_short_name=app.short_name)
         task2 = TTTask2(tasks[1].id, app_short_name=app.short_name)
          
         book_id = "BLBLB"
         data_mngr.record_book(dict(bookid=book_id, title=book_title, contributor="cont1", publisher="pub1", volume="1", img="image1"))
          
         task_run1 = dict(app_id=app.app_id, task_id=task1.task.id, info="[{\"id\":\"new\",\"top\":50,\"left\":9.5,\"width\":525,\"height\":626,\"text\":{\"titulo\":\"\",\"subtitulo\":\"\",\"assunto\":\"4\",\"fontes\":\"\",\"outros\":\"\",\"dataInicial\":\"\",\"dataFinal\":\"\",\"girar\":false,\"nao_girar\":true},\"editable\":true}]")
         task_run2 = dict(app_id=app.app_id, task_id=task1.task.id, info="[{\"id\":\"new\",\"top\":50,\"left\":15.5,\"width\":625,\"height\":626,\"text\":{\"titulo\":\"\",\"subtitulo\":\"\",\"assunto\":\"4\",\"fontes\":\"\",\"outros\":\"\",\"dataInicial\":\"\",\"dataFinal\":\"\",\"girar\":false,\"nao_girar\":true},\"editable\":true}]")
    
         # Anonymous submission
         submit_answer(self.base_url, task_run1)
            
         # FB authenticated user submission
         task_run2['facebook_user_id'] = '12345'
         submit_answer(self.base_url, task_run2)
            
         time.sleep(2)
            
         self.assertFalse(task1.check_answer())
           
         task1.add_next_task()
         
         assert False   
     
     except Meb_exception_tt2 as e:
         self.assertEquals(e.code, 3)
     
     finally:
         next_app = None 
         next_app_list = pbclient.find_app(short_name=app.short_name[:-1] + "3")
         
         if len(next_app_list) > 0:
             next_app = next_app_list[0]
         
             next_task = None
             tasks = pbclient.get_tasks(next_app.id)
             for t in tasks:
                 if t.info["page"] == task1.task.info["page"]: 
                     pbclient.delete_task(task_id=t.id)
      
         pbclient.delete_app(app_id=next_app.id)
         
         pbclient.delete_task(task1.task.id)
         pbclient.delete_task(task2.task.id)
         pbclient.delete_app(app.app_id)
         
         data_mngr.delete_book(book_id="BLBLB")
 def test_check_answer_03(self):
     try:
         task_run1 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info='{}')
         task_run2 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/caracterizaoeten2001bras/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
               
         # Anonymous submission
         submit_answer(self.base_url, task_run1)
                 
         # FB authenticated user submission
         task_run2['facebook_user_id'] = '12345'
         submit_answer(self.base_url, task_run2)
                 
         time.sleep(2)
                
         self.task1.check_answer()
           
     except Meb_exception_tt3 as e:
         self.assertEquals(e.code, 2)
コード例 #12
0
    def test_check_answer_03(self):
        try:
            task_run1 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="BLA")
            task_run2 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="No")

            # Anonymous submission
            submit_answer(self.base_url, task_run1)

            # FB authenticated user submission
            task_run2["facebook_user_id"] = "12345"
            submit_answer(self.base_url, task_run2)

            time.sleep(2)

            self.task1.check_answer()

        except Meb_exception_tt1 as e:
            self.assertEquals(e.code, 2)
コード例 #13
0
    def test_add_next_task_01(self):
        try:
            task_run1 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="Yes")
            task_run2 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="Yes")

            # Anonymous submission
            submit_answer(self.base_url, task_run1)

            # FB authenticated user submission
            task_run2["facebook_user_id"] = "12345"
            submit_answer(self.base_url, task_run2)

            time.sleep(2)

            self.assertTrue(self.task1.check_answer())
            self.assertTrue(self.task1.add_next_task())

        except Exception as e:
            print e
            assert False
コード例 #14
0
 def test_check_answer_05(self):
     """
       Detection of some field faulting 
     """
     try:
         task_run1 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="[{\"id\":\"new\",\"top\":50,\"left\":9.5,\"width\":525,\"height\":626,\"text\":{\"titulo\":\"\",\"subtitulo\":\"\",\"assunto\":\"4\",\"fontes\":\"\",\"outros\":\"\",\"dataInicial\":\"\",\"dataFinal\":\"\",\"girar\":false,\"nao_girar\":true},\"editable\":true}]")
         task_run2 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="[{\"id\":\"new\",\"top\":50,\"left\":9.5,\"width\":525,\"height\":626,\"text\":{\"titulo\":\"\",\"subtitulo\":\"\",\"assunto\":\"4\",\"fontes\":\"\",\"outros\":\"\",\"dataFinal\":\"\",\"girar\":false,\"nao_girar\":true},\"editable\":true}]")
       
         # Anonymous submission
         submit_answer(self.base_url, task_run1)
               
         # FB authenticated user submission
         task_run2['facebook_user_id'] = '12345'
         submit_answer(self.base_url, task_run2)
               
         time.sleep(2)
               
         self.task1.check_answer()
               
     except Meb_exception_tt2 as e:
         self.assertEquals(e.code, 1)
def close_t4_task(test_case, book_id, task_t4):
    # creating an answer for the T4 app
    answer_t4 = '{\"cells\":[[0,0,239,54],[239,0,507,54],[0,54,239,103],[239,54,507,103],[0,103,239,178],[239,103,507,178]],\"computer_values\":[\"PARA\u00cdBA ( ESTADO )\",\"PRES IDENTE\",\"( FRANC|SCO CAM!\",\"\u00a1LLO DE HOLLANDA )\",\"MENSAGEM ..\u00c7 19\",\"DE SETEMBRO DE 1918.\"],\"human_values\":[\"PARA\u00cdBA ( ESTADO )\",\"PRES IDENTE\",\"( FRANC|SCO CAM!\",\"\u00a1LLO DE HOLLANDA )\",\"MENSAGEM ..\u00c7 19\",\"DE SETEMBRO DE 1918.\"],\"confidences\":[83,88,83,81,72,85],\"num_of_confirmations\":[2,2,2,2,2,2]}'
    task_run = dict(app_id=task_t4.app_id, task_id=task_t4.id, info=answer_t4)
    
    # Anonymous submission
    submit_answer(test_case.base_url, task_run)
    
    # FB authenticated user submission
    task_run['facebook_user_id'] = '12345'
    submit_answer(test_case.base_url, task_run)
    
    # Signalling the T3 task completion
    done_task(test_case.app, task_t4.id)
    time.sleep(1)
    
    # check if T4 task is closed
    tasks_t4 = pbclient.get_tasks(task_t4.app_id, sys.maxint)
    
    for task in tasks_t4:
        test_case.assertTrue(task.state == "completed")
コード例 #16
0
    def test_check_answer_02(self):
        try:
            task_run1 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="Yes")
            task_run2 = dict(app_id=self.app.app_id, task_id=self.task1.task.id, info="No")

            # Anonymous submission
            submit_answer(self.base_url, task_run1)

            # FB authenticated user submission
            task_run2["facebook_user_id"] = "12345"
            submit_answer(self.base_url, task_run2)

            time.sleep(2)

            self.assertFalse(self.task1.check_answer())

            trs = self.task1.get_task_runs()

            self.assertEquals(trs[0].info, "Yes")
            self.assertEquals(trs[1].info, "No")

        except Exception as e:
            print e
            assert False
 def test_add_next_task_02(self):
     """
       Valid task group
     """
     
     try:
         task_run1 = dict(app_id=self.app.app_id, task_id=self.task2.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/caracterizaoeten2001bras/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
         task_run2 = dict(app_id=self.app.app_id, task_id=self.task2.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/caracterizaoeten2001bras/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
      
         task_run3 = dict(app_id=self.app.app_id, task_id=self.task3.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/caracterizaoeten2001bras/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
         task_run4 = dict(app_id=self.app.app_id, task_id=self.task3.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/caracterizaoeten2001bras/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
         
         task_run5 = dict(app_id=self.app.app_id, task_id=self.task4.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/caracterizaoeten2001bras/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
         task_run6 = dict(app_id=self.app.app_id, task_id=self.task4.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/caracterizaoeten2001bras/metadados/tabelasBaixa/image0_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
         
         # Anonymous submission
         submit_answer(self.base_url, task_run1)
         submit_answer(self.base_url, task_run3)
         submit_answer(self.base_url, task_run5)
              
         # FB authenticated user submission
         task_run2['facebook_user_id'] = '12345'
         task_run4['facebook_user_id'] = '12345'
         task_run6['facebook_user_id'] = '12345'
         
         submit_answer(self.base_url, task_run2)
         submit_answer(self.base_url, task_run4)
         submit_answer(self.base_url, task_run6)
              
         time.sleep(2)
         
         self.assertTrue(self.task2.check_answer())
         self.assertTrue(self.task3.check_answer())
         self.assertTrue(self.task4.check_answer())
         
         self.task2.close_task()
         self.task3.close_task()
         self.task4.close_task()
         
         self.task4.add_next_task()
         
     except Meb_exception_tt3 as e:
         self.assertEquals(e.code, 5)  # didnt found images to run tesseract executor
 def test_add_next_task_03(self):
     """
        Invalid book
     """
     try:
         book_title = "BLABDL_title"
         app = Apptt_struct(short_name="BLABDL_tt3", title=book_title)
     
         app.add_task(task_info=dict(
                                          hasZoom=False,
                                          zoom=[0, 0, 489, 168], 
                                          coords=[[0, 0, 7, 9], [7, 0, 37, 9], [37, 0, 118, 9], [118, 0, 251, 9], [251, 0, 489, 9], [0, 9, 7, 53], [7, 9, 37, 53], [37, 9, 118, 53], [118, 9, 251, 53], [251, 9, 489, 53], [0, 53, 7, 61], [7, 53, 37, 61], [37, 53, 118, 61], [118, 53, 251, 61], [251, 53, 489, 61], [0, 61, 7, 100], [7, 61, 37, 100], [37, 61, 118, 100], [118, 61, 251, 100], [251, 61, 489, 100], [0, 100, 7, 144], [7, 100, 37, 144], [37, 100, 118, 144], [118, 100, 251, 144], [251, 100, 489, 144], [0, 144, 7, 153], [7, 144, 37, 153], [37, 144, 118, 153], [118, 144, 251, 153], [251, 144, 489, 153], [0, 153, 7, 181], [7, 153, 37, 181], [37, 153, 118, 181], [118, 153, 251, 181], [251, 153, 489, 181], [0, 181, 7, 239], [7, 181, 37, 239], [37, 181, 118, 239], [118, 181, 251, 239], [251, 181, 489, 239], [0, 239, 7, 280], [7, 239, 37, 280], [37, 239, 118, 280], [118, 239, 251, 280], [251, 239, 489, 280], [0, 280, 7, 289], [7, 280, 37, 289], [37, 280, 118, 289], [118, 280, 251, 289], [251, 280, 489, 289], [0, 289, 7, 506], [7, 289, 37, 506], [37, 289, 118, 506], [118, 289, 251, 506], [251, 289, 489, 506]], 
                                          table_id=0, 
                                          img_url="http://localhost/mb-static/books/BLABDL/metadados/tabelasBaixa/image2000_0.png", 
                                          page=1
                                          )
                           )
         app.add_task(task_info=dict(
                                          hasZoom=False,
                                          zoom=[0, 0, 489, 168], 
                                          coords=[[0, 0, 7, 9], [7, 0, 37, 9], [37, 0, 118, 9], [118, 0, 251, 9], [251, 0, 489, 9], [0, 9, 7, 53], [7, 9, 37, 53], [37, 9, 118, 53], [118, 9, 251, 53], [251, 9, 489, 53], [0, 53, 7, 61], [7, 53, 37, 61], [37, 53, 118, 61], [118, 53, 251, 61], [251, 53, 489, 61], [0, 61, 7, 100], [7, 61, 37, 100], [37, 61, 118, 100], [118, 61, 251, 100], [251, 61, 489, 100], [0, 100, 7, 144], [7, 100, 37, 144], [37, 100, 118, 144], [118, 100, 251, 144], [251, 100, 489, 144], [0, 144, 7, 153], [7, 144, 37, 153], [37, 144, 118, 153], [118, 144, 251, 153], [251, 144, 489, 153], [0, 153, 7, 181], [7, 153, 37, 181], [37, 153, 118, 181], [118, 153, 251, 181], [251, 153, 489, 181], [0, 181, 7, 239], [7, 181, 37, 239], [37, 181, 118, 239], [118, 181, 251, 239], [251, 181, 489, 239], [0, 239, 7, 280], [7, 239, 37, 280], [37, 239, 118, 280], [118, 239, 251, 280], [251, 239, 489, 280], [0, 280, 7, 289], [7, 280, 37, 289], [37, 280, 118, 289], [118, 280, 251, 289], [251, 280, 489, 289], [0, 289, 7, 506], [7, 289, 37, 506], [37, 289, 118, 506], [118, 289, 251, 506], [251, 289, 489, 506]], 
                                          table_id=1, 
                                          img_url="http://localhost/mb-static/books/BLABDL/metadados/tabelasBaixa/image2000_1.png", 
                                          page=1
                                          )
                           )
           
         tasks = pbclient.get_tasks(app_id=app.app_id)
           
         task1 = TTTask3(tasks[0].id, app_short_name=app.short_name)
         task2 = TTTask3(tasks[1].id, app_short_name=app.short_name)
           
         book_id = "BLABDL"
           
         task_run1 = dict(app_id=app.app_id, task_id=task1.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/BLABDL/metadados/tabelasBaixa/image2000_0.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
         task_run2 = dict(app_id=app.app_id, task_id=task1.task.id, info='{\"img_url\":\"https://localhost/mb-static/books/BLABDL/metadados/tabelasBaixa/image2000_1.png\",\"linhas\":[[0,0,507,0],[0,54,507,54],[0,103,507,103],[0,178,507,178]],\"colunas\":[[0,0,0,178],[239,0,239,178],[507,0,507,178]],\"maxX\":507,\"maxY\":178}')
     
         # Anonymous submission
         submit_answer(self.base_url, task_run1)
             
         # FB authenticated user submission
         task_run2['facebook_user_id'] = '12345'
         submit_answer(self.base_url, task_run2)
             
         time.sleep(2)
             
         self.assertTrue(task1.check_answer())
            
         task1.add_next_task()
          
         assert False   
      
     except Meb_exception_tt3 as e:
         self.assertEquals(e.code, 5)
      
     finally:
         next_app = None 
         next_app_list = pbclient.find_app(short_name=app.short_name[:-1] + "4")
          
         if len(next_app_list) > 0:
             next_app = next_app_list[0]
          
             next_task = None
             tasks = pbclient.get_tasks(next_app.id)
             for t in tasks:
                 if t.info["img_url"] == task1.task.info["img_url"]: 
                     pbclient.delete_task(task_id=t.id)
       
             pbclient.delete_app(app_id=next_app.id)
          
         pbclient.delete_task(task1.task.id)
         pbclient.delete_task(task2.task.id)
         pbclient.delete_app(app.app_id)
          
         data_mngr.delete_book(book_id="BLABDL")