def test_export(self): self.client.login(username='******', password='******') self.global_navigation_page = login(self.driver, VALID_CREDENTIALS) questionnaire_code = self._verify_questionnaire_creation( self.project_name) temporary_project_name = navigate_and_verify_web_submission_page_is_loaded( self.driver, self.global_navigation_page, self.project_name) # Make 2 submissions self._do_web_submission(temporary_project_name, questionnaire_code, '*****@*****.**', 'tester150411') self._do_web_submission(temporary_project_name, questionnaire_code, '*****@*****.**', 'tester150411') resp = self.client.post( '/project/export/log?type=all', { 'project_name': self.project_name, 'search_filters': "{\"search_text\":\"\",\"dateQuestionFilters\":{}}", 'questionnaire_code': questionnaire_code }) xlfile_fd, xlfile_name = tempfile.mkstemp(".xlsx") os.write(xlfile_fd, resp.content) os.close(xlfile_fd) workbook = xlrd.open_workbook(xlfile_name) self.assertEquals(workbook.sheet_names(), [ u'main', u'rep_group1', u'my_repeat1_group1', u'my_outer_repeat1' ]) self._verify_main_sheet(workbook) self._verify_second_sheet(workbook) self._verify_third_sheet(workbook) self._verify_fourth_sheet(workbook)
def test_export(self): self.setUpFirefox() self.project_name = random_string() client = Client() client.login(username=self.admin_email_id, password='******') form_code = self._verify_questionnaire_creation( self.project_name, 'image.xlsx') project_temp_name, web_submission_page = navigate_and_verify_web_submission_page_is_loaded( self.driver, self.global_navigation_page, self.project_name) self._do_web_submission('submission_data_image.xml', project_temp_name, form_code, self.admin_email_id, 'tester150411', image_upload=True) self.driver.find(by_id('submission_log_link')).click() self.driver.find_visible_element(by_id('ignore_changes')).click() self._verify_submission_log_page_images(web_submission_page) self._do_web_submission('submission_data_image.xml', project_temp_name, form_code, self.admin_email_id, 'tester150411', image_upload=True) self._verify_submission_log_page_image_2(web_submission_page) self._verify_without_media(form_code) self._verify_with_media(form_code)
def test_edit_submisssion(self): self.project_name = random_string() self.setUpFirefox() form_code = self._verify_questionnaire_creation( self.project_name, 'multiple-choices.xlsx') project_temp_name, web_submission_page = navigate_and_verify_web_submission_page_is_loaded( self.driver, self.global_navigation_page, self.project_name) self._do_web_submission( 'edit_submission_ft-check-multiple-choices.xml', project_temp_name, form_code, self.admin_email_id, 'tester150411') submission_log_page = self.global_navigation_page.navigate_to_all_data_page( ).navigate_to_submission_log_page( self.project_name).wait_for_table_data_to_load() self.driver.create_screenshot("debug-ft-sub-log-edit-nth-sub") web_submission_page = submission_log_page.edit_nth_submission(1) sleep(5) data = self.driver.execute_script("return dataStrToEdit;") self.driver.create_screenshot("debug-ft-edit-sub-page") expected = "<idnr>food pet rhinitis</idnr><enfant><naissance_enfant>no</naissance_enfant><poids_enfant>16</poids_enfant><nom_enfant>John</nom_enfant><date_enfant>2016-12-01</date_enfant><text>Setra</text><select_enfant>trad other</select_enfant><age_enfant>3</age_enfant></enfant><form_code>%s</form_code>" % form_code self.assertIn(expected, data) self.driver.wait_for_page_load() self.driver.create_screenshot( "debug-ft-edit-adv-submission-before-change") text_answer_locator = by_css('input[name="/' + project_temp_name + '/enfant/nom_enfant"]') web_submission_page.update_text_input(text_answer_locator, "a") self.driver.create_screenshot( "debug-ft-edit-adv-submission-after-change") self.assertFalse(web_submission_page.is_warning_dialog_displayed()) web_submission_page.navigate_to_submission_log() sleep(1) self.assertTrue(web_submission_page.is_warning_dialog_displayed()) warning_dialog = WarningDialog( self.driver, cancel_link=by_css( 'div.ui-dialog[style*="block"] > div.ui-dialog-content > div > a.dialog_cancel_link' )) warning_dialog.cancel(True) self.driver.create_screenshot( "debug-ft-edit-adv-submission-after-cancel-dialog") web_submission_page.submit(True) web_submission_page.wait_until_modal_dismissed() self.assertTrue(web_submission_page.is_success_message_tip_shown()) web_submission_page.update_text_input(text_answer_locator, "b") sleep(5) web_submission_page.navigate_to_submission_log() sleep(1) self.assertTrue(web_submission_page.is_warning_dialog_displayed()) warning_dialog.confirm() sleep(5) self.driver.wait_for_page_load() self.assertEqual(self.driver.get_title(), "Submission Log")
def test_should_create_project_when_xlsform_is_uploaded(self): self.setUpFirefox() self.project_name = random_string() file_name = 'ft_advanced_questionnaire.xls' form_code = self._verify_questionnaire_creation( self.project_name, file_name) project_temp_name, web_submission_page = navigate_and_verify_web_submission_page_is_loaded( self.driver, self.global_navigation_page, self.project_name) self._verify_datawinners_university() web_submission_page.navigate_to_datasenders_page() self._verify_datawinners_university() datasender_page = ProjectDataSendersPage(self.driver) datasender_page.search_with("1234123413").\ select_a_data_sender_by_mobile_number("1234123413").perform_datasender_action(by_css(".remove")) datasender_page.refresh() datasender_page.navigate_to_analysis_page() self._verify_datawinners_university() DataAnalysisPage(self.driver).navigate_to_web_submission_tab() web_submission_page = AdvancedWebSubmissionPage(self.driver) self._do_web_submission('submission_data.xml', project_temp_name, form_code, self.admin_email_id, 'tester150411') self._verify_submission_log_page(web_submission_page) datasender_rep_id, ds_email = self._register_datasender() self._verify_datawinners_university() self.driver.wait_for_page_with_title(UI_TEST_TIMEOUT, "Data Submission") datasender_page = DataSenderPage(self.driver) datasender_page.send_in_data() verify_advanced_web_submission_page_is_loaded(self.driver) self._verify_datawinners_university() self._do_web_submission('submission_data.xml', project_temp_name, form_code, ds_email, NEW_PASSWORD) self.global_navigation_page.sign_out() self.global_navigation_page = login(self.driver, VALID_CREDENTIALS) submission_log_page = self.global_navigation_page.navigate_to_all_data_page( ).navigate_to_submission_log_page( self.project_name).wait_for_table_data_to_load() self._verify_datawinners_university() self.assertEqual(submission_log_page.get_total_number_of_records(), 2) self._verify_date_filters(submission_log_page) submission_log_page.search(datasender_rep_id) submission_log_page.check_submission_by_row_number( 1).click_action_button().choose_on_dropdown_action(EDIT_BUTTON) verify_advanced_web_submission_page_is_loaded(self.driver) self._edit_and_verify_submission(datasender_rep_id, project_temp_name, True) self._verify_edit_of_questionnaire(file_name) self._verify_datawinners_university()