def navigate_to_clinic3_overview_page(self):
     # going on all project page
     self.driver.go_to(DATA_WINNER_ALL_PROJECTS_PAGE)
     self.driver.wait_for_element(UI_TEST_TIMEOUT, ALL_PROJECTS_TABLE_LINK,
                                  True)
     all_project_page = ProjectsPage(self.driver)
     return all_project_page.navigate_to_project_overview_page(PROJECT_NAME)
Ejemplo n.º 2
0
    def test_should_check_if_deleted_questionnaires_and_poll_not_be_in_questionnaires_list(
            self):
        self.driver.go_to(LOGOUT)
        self.driver.go_to(DATA_WINNER_LOGIN_PAGE)
        login_page = LoginPage(self.driver)
        login_page.do_successful_login_with(USER_RASITEFA_CREDENTIALS)
        self.driver.go_to(DATA_WINNER_DASHBOARD_PAGE)
        dashboard_page = DashboardPage(self.driver)
        self.assertEqual(len(dashboard_page.get_projects_list()), 3)
        create_questionnaire_options_page = dashboard_page.navigate_to_create_project_page(
        )

        create_questionnaire_page = create_questionnaire_options_page.select_blank_questionnaire_creation_option(
        )
        create_questionnaire_page.create_questionnaire_with(
            NEW_PROJECT, QUESTIONNAIRE_DATA)
        global_navigation = GlobalNavigationPage(self.driver)
        project_overview_page = create_questionnaire_page.save_and_create_project_successfully(
        )
        project_name = project_overview_page.get_project_title()
        all_projects_page = global_navigation.navigate_to_view_all_project_page(
        )
        all_projects_page.delete_project(project_name)
        self.driver.go_to(DATA_WINNER_DASHBOARD_PAGE)
        dashboard_page = DashboardPage(self.driver)
        all_projects_page = ProjectsPage(self.driver)
        self.assertEqual(len(dashboard_page.get_projects_list()), 3)
        self.assertFalse(all_projects_page.is_project_present(project_name))
        self.global_navigation.sign_out()
Ejemplo n.º 3
0
 def open_clinic5_project_and_send_msg_via_sms_questionnaire(self, message):
     self.driver.go_to(DATA_WINNER_ALL_PROJECTS_PAGE)
     all_project_page = ProjectsPage(self.driver)
     project_overview_page = all_project_page.navigate_to_project_overview_page(
         "clinic5 test project")
     sms_tester_page = project_overview_page.open_sms_tester_light_box()
     sms_tester_page.hit_clear_message_link()
     sms_tester_page.send_sms_with(message)
     self.wait_while_loading()
     return sms_tester_page
 def test_editing_existing_questionnaire(self):
     self.global_navigation.navigate_to_view_all_project_page()
     ProjectsPage(self.driver).navigate_to_project_overview_page(TestProjectQuestionnaire.project_name)\
                              .navigate_to_questionnaire_tab()
     questionnaire_tab_page = self.questionnaire_tab_page
     self.assertEqual(
         questionnaire_tab_page.get_select_or_edit_question_message(),
         "Add or edit a question",
         "No question should be selected by default")
     self.assertIn(EDIT_PROJECT_DATA[PROJECT_NAME],
                   lower(questionnaire_tab_page.get_questionnaire_title()))
     self.assertEqual(questionnaire_tab_page.get_existing_questions_count(),
                      len(EDIT_PROJECT_QUESTIONNAIRE_DATA[QUESTIONS]),
                      "Question count does not match")
     expected_existing_questions = [
         question[QUESTION]
         for question in EDIT_PROJECT_QUESTIONNAIRE_DATA[QUESTIONS]
     ]
     self.assertEqual(questionnaire_tab_page.get_existing_question_list(),
                      expected_existing_questions,
                      "Mismatch in question list")
     questionnaire_tab_page.submit_questionnaire()
     self.assertEqual(questionnaire_tab_page.get_success_message(),
                      SUCCESS_PROJECT_SAVE_MESSAGE,
                      "Saving of unaltered questionnaire failed")
    def click_on_save_change(self):
        """
        Function to navigate to view all projects page of the website.

        Return view all projects page
         """
        self.driver.find("#save_changes").click()
        return ProjectsPage(self.driver)
    def navigate_to_view_all_project_page(self):
        """
        Function to navigate to view all projects page of the website.

        Return view all projects page
         """
        self.driver.find(PROJECT_LINK).click()
        return ProjectsPage(self.driver)
Ejemplo n.º 7
0
 def test_should_show_warning_popup_when_exiting_a_modified_questionnaire(self):
     create_questionnaire_page = self.create_questionnaire_page
     modified_warning_dialog = QuestionnaireModifiedDialog(self.driver)
     project_name = create_questionnaire_page.type_project_name(DIALOG_PROJECT_DATA)
     self._verify_edit_dialog_cancel(modified_warning_dialog)
     self._verify_edit_dialog_ignore_changes(modified_warning_dialog, project_name)
     all_projects_page = ProjectsPage(self.driver)
     self._verify_edit_dialog_save_changes(all_projects_page, modified_warning_dialog)
Ejemplo n.º 8
0
    def test_reply_messages_in_light_box_when_outgoing_reply_turned_on(self):
        self.driver.go_to(DATA_WINNER_ALL_PROJECTS_PAGE)
        automatic_reply_msg_page = ProjectsPage(self.driver).navigate_to_project_overview_page(self.project_name).navigate_send_message_tab().navigate_to_automatic_reply_sms_page()
        automatic_reply_msg_page.turn_on_reply_messages()
        self.assertTrue(automatic_reply_msg_page.is_language_selection_enabled())
        self.assertEqual(automatic_reply_msg_page.get_success_message(), 'Your changes have been saved.')

        sms_tester_light_box = automatic_reply_msg_page.open_sms_tester_light_box()

        self.assertFalse(sms_tester_light_box.reply_turned_off_text_present())

        sms_tester_light_box.send_sms_with(get_success_sms_data_with_questionnaire_code(self.questionnaire_code))
        self.assertNotEquals("", sms_tester_light_box.get_response_message())

        sms_tester_light_box.send_sms_with(get_error_sms_data_with_questionnaire_code(self.questionnaire_code))
        self.assertNotEquals("", sms_tester_light_box.get_response_message())

        sms_tester_light_box.send_sms_with(get_error_sms_data_with_incorrect_number_of_answers(self.questionnaire_code))
        self.assertNotEquals("", sms_tester_light_box.get_response_message())

        sms_tester_light_box.send_sms_with(get_error_sms_data_with_incorrect_unique_id(self.questionnaire_code))
        self.assertNotEquals("", sms_tester_light_box.get_response_message())

        sms_tester_light_box.send_sms_with(get_error_message_from_unauthorized_source(self.questionnaire_code))
        self.assertNotEquals("", sms_tester_light_box.get_response_message())
 def do_sms_submission(self, questionnaire_code, sms_data, project_title):
     self.driver.go_to(DATA_WINNER_SMS_TESTER_PAGE)
     sms_tester_page = SMSTesterPage(self.driver)
     sms_data[SMS] = sms_data[SMS] % questionnaire_code
     sms_tester_page.send_sms_with(sms_data)
     message = sms_tester_page.get_response_message()
     self.assertTrue(
         fetch_(SUCCESS_MESSAGE, sms_data) in message, "message:" + message)
     self.driver.go_to(DATA_WINNER_ALL_PROJECTS_PAGE)
     ProjectsPage(self.driver).navigate_to_project_overview_page(project_title)\
                              .navigate_to_questionnaire_tab()
Ejemplo n.º 10
0
    def test_reply_messages_in_light_box_when_outgoing_reply_turned_off(self):
        self.driver.go_to(FAILED_SUBMISSIONS_PAGE)
        initial_failed_submission_count = FailedSubmissionsPage(self.driver).get_total_number_of_entries()

        self.driver.go_to(DATA_WINNER_ALL_PROJECTS_PAGE)
        automatic_reply_msg_page = ProjectsPage(self.driver).navigate_to_project_overview_page(self.project_name)\
                                            .navigate_send_message_tab().navigate_to_automatic_reply_sms_page()
        automatic_reply_msg_page.turn_off_reply_messages()
        #time.sleep(10)
        self.assertFalse(automatic_reply_msg_page.is_language_selection_enabled())
        self.assertEqual(automatic_reply_msg_page.get_success_message(), 'Your changes have been saved.')

        sms_tester_light_box = automatic_reply_msg_page.open_sms_tester_light_box()

        self.assertTrue(sms_tester_light_box.reply_turned_off_text_present())

        sms_tester_light_box.send_sms_with(get_success_sms_data_with_questionnaire_code(self.questionnaire_code))
        self.assertEquals("", sms_tester_light_box.get_response_message())

        sms_tester_light_box.send_sms_with(get_error_sms_data_with_questionnaire_code(self.questionnaire_code))
        self.assertEquals("", sms_tester_light_box.get_response_message())

        sms_tester_light_box.send_sms_with(get_error_sms_data_with_incorrect_number_of_answers(self.questionnaire_code))
        self.assertNotEquals("", sms_tester_light_box.get_response_message())

        sms_tester_light_box.send_sms_with(get_error_sms_data_with_incorrect_unique_id(self.questionnaire_code))
        self.assertEquals("", sms_tester_light_box.get_response_message())

        sms_tester_light_box.send_sms_with(get_error_message_from_unauthorized_source(self.questionnaire_code))
        self.assertEquals("", sms_tester_light_box.get_response_message())

        #account wide messages should still go out.

        sms_tester_light_box.send_sms_with(get_success_sms_data_with_questionnaire_code('invalid_code'))
        self.assertNotEqual("", sms_tester_light_box.get_response_message())

        success_subject_registration_data = {"from": "1234123413", "to": '919880734937', "sms": "peo fname lname location 4,4 898989898" }
        sms_tester_light_box.send_sms_with(success_subject_registration_data)
        self.assertNotEqual("", sms_tester_light_box.get_response_message())

        success_subject_registration_data_with_existing_code = {"from": "1234123413", "to": '919880734937', "sms": "peo fname lname location 4,4 898989898 cid001" }
        sms_tester_light_box.send_sms_with(success_subject_registration_data_with_existing_code)
        self.assertNotEqual("", sms_tester_light_box.get_response_message())

        sms_tester_light_box.close()

        self.driver.go_to(FAILED_SUBMISSIONS_PAGE)
        current_failed_submission_count = FailedSubmissionsPage(self.driver).get_total_number_of_entries()
        self.assertEqual(current_failed_submission_count, initial_failed_submission_count + 2)
Ejemplo n.º 11
0
 def _verify_default_reminder_settings(self,project_name,default_reminder_message):
     self.assertEquals(default_reminder_message, ProjectsPage(self.driver).navigate_to_project_overview_page(
         project_name).navigate_to_reminder_page().get_example_text())
Ejemplo n.º 12
0
 def navigate_to_clinic3_overview_page(self):
     # going on all project page
     self.driver.go_to(url("/project/"))
     all_project_page = ProjectsPage(self.driver)
     return all_project_page.navigate_to_project_overview_page(PROJECT_NAME)