def test_should_show_reports(self): self.driver.maximize_window() self.project_name = random_string() self.report_name = random_string() file_name = 'test_questionnaire.xlsx' template_file_name = os.path.join(self.testdata, 'index.html') response = create_advance_questionnaire(self.project_name, self.testdata, file_name, VALID_CREDENTIALS) self.assertEquals(response.status_code, 200) self.assertNotEqual(response._container[0].find('project_name'), -1) response = json.loads(response._container[0]) self.project_id = response.get('project_id') self.form_code = response['form_code'] self.submission_ids = self._do_web_submissions() self.report = self._create_report_config(self.report_name, self.project_id, template_file_name) self._create_views(self.report) report_page = self.global_navigation_page.navigate_to_reports_page() report_page.navigate_to_report(self.report_name) time.sleep(300) # This waiting is for ajax calls on report page self.assertEquals(len(self.submission_ids), report_page.get_number_of_records()) delete_submissions(self.project_id, self.submission_ids[:1], VALID_CREDENTIALS) report_page.navigate_to_report(self.report_name) time.sleep(300) # This waiting is for ajax calls on report page self.assertEquals( len(self.submission_ids) - 1, report_page.get_number_of_records())
def test_should_create_project_when_xlsform_is_uploaded(self): project_name = random_string() client = Client() client.login(username='******', password='******') r = client.post(path='/xlsform/upload/?pname='+project_name+'&qqfile=text_and_integer.xls', data=open(os.path.join(self.test_data, 'text_and_integer.xls'), 'r').read(), content_type='application/octet-stream') self.assertEquals(r.status_code, 200) self.assertNotEqual(r._container[0].find('project_name'), -1)
def _create_registration_form(manager, entity_name, no_of_questions): entity_type = [entity_name] code_generator = question_code_generator() form_code = random_string() questions = [] for a in range(no_of_questions - 2): code = code_generator.next() question = TextField(name=code, code=code, label=random_string(15), defaultValue="some default value", instruction="Enter a %(entity_type)s first name" % {'entity_type': entity_name}) questions.append(question) question = TextField(name=NAME_FIELD, code=code_generator.next(), label=random_string(15), defaultValue="some default value", instruction="Enter a %(entity_type)s first name" % {'entity_type': entity_name}) questions.append(question) question = ShortCodeField( name=SHORT_CODE_FIELD, code=code_generator.next(), label="What is the %(entity_type)s's Unique ID Number?" % {'entity_type': entity_name}, defaultValue="some default value", instruction=unicode("Enter an id, or allow us to generate it"), required=False) questions.append(question) form_model = EntityFormModel(manager, name=entity_name, form_code=form_code, fields=questions, is_registration_model=True, entity_type=entity_type) return form_model
def test_should_make_entry_in_postgres_when_message_sent_to_others(self): random_message = random_string(10) response = self.client.post(path='/project/broadcast_message/' + self.project_id + '/', data={ 'others': '141231241, 121242141', 'text': random_message, 'to': 'Additional' }) self.assertIn( 'SMS sent to telephone company. Upon receipt of delivery confirmation, DataWinners will update the counter on the', response.content) response = self.admin_client.post( path= '/admin-apis/sendamessage/check_if_message_present_in_postgres/', data={'message': random_message}) self.assertEqual(response.content, '{"found": true}')
def setUp(self): self.test_data = os.path.join(DIR, 'testdata') self.client = Client() self.project_name = random_string()
label=random_string(15), defaultValue="some default value", instruction="Enter a %(entity_type)s first name" % {'entity_type': entity_name}) questions.append(question) question = ShortCodeField( name=SHORT_CODE_FIELD, code=code_generator.next(), label="What is the %(entity_type)s's Unique ID Number?" % {'entity_type': entity_name}, defaultValue="some default value", instruction=unicode("Enter an id, or allow us to generate it"), required=False) questions.append(question) form_model = EntityFormModel(manager, name=entity_name, form_code=form_code, fields=questions, is_registration_model=True, entity_type=entity_type) return form_model if __name__ == "__main__": args = sys.argv entity_type = args[1].lower() if len(args) > 1 else random_string(3) no_of_questions = int(args[2]) if len(args) > 2 else 5 create_identification_number_type('hni_testorg_slx364903', entity_type, no_of_questions)