def test_global_info_about_person(self, person):
        try:
            persons_page = self.app.persons_page
            persons_page.is_this_page()
            # Find new person by surname (Alexey test 'add person')
            add_person_pattern = AddPersonPattern()
            add_person_pattern.search_person_by_surname(self.app, person.surname_ukr)
            persons_page.wait_until_page_generate()
            persons_page.view_first_person_in_page
            persons_page.wait_until_page_generate()
            # Is it current view person page?
            assert self.app.person_papers_view_page.get_text_person_profile() == u"Перегляд персони"

            personUkrFIO = person.surname_ukr + " " + person.first_name_ukr + " " + person.second_name_ukr
            personEngFIO = person.surname_eng + " " + person.first_name_eng
            private_case_chars = person.private_case_chars
            private_case_number = str(person.private_case_number)

            actual_person = self.app.person_current_view_page

            assert personUkrFIO == actual_person.get_fio_ukranian().text
            assert personEngFIO == actual_person.get_fio_english().text
            assert private_case_chars == actual_person.get_serial_person_record()
            assert private_case_number == actual_person.get_number_person_record()
        except AssertionError:
            allure.attach('screenshot', self.app.driver.get_screenshot_as_png(), type=AttachmentType.PNG)
            raise
 def test_surname_search(self, person):
     try:
         with pytest.allure.step("Prepare Data"):
             add_person_pattern = AddPersonPattern()
             add_person_pattern.search_person_by_surname(self.app, person.surname_ukr)
         with pytest.allure.step("Check Data"):
             assert self.app.persons_page.try_get_searched_surname(person.surname_ukr).text.partition(' ')[
                        0] == person.surname_ukr
     except Exception:
         allure.attach('screenshot', self.app.driver.get_screenshot_as_png(), type=AttachmentType.PNG)
         raise
def test_add_enrollment_in_new_person(logout_login, person, dictionary_with_json_files, screenshot):
    with pytest.allure.step('Test of add enrollment in new person.'):
        add_person = AddPersonPattern()
        app = logout_login
        assert app.persons_page.is_this_page()
        add_person.search_person_by_surname(app, person.surname_ukr)
        app.internal_page.wait_until_page_generate()
        app.persons_page.edit_first_person_in_page.click()
        app.persons_page.wait_until_page_generate()
        app.person_base_page.click_enrollments_tab()
        enrollment = fill_enrollment_in_person(app, dictionary_with_json_files["fill_enrollment_main"])
        expected_number = enrollment.number_statements
        app.internal_page.wait_until_page_generate()
        list_with_actual_numbers = app.person_enrollment.enrollment_doc_number
        assert_expression = is_doc_number_in_list_of_numbers(expected_number, list_with_actual_numbers)
        screenshot.assert_and_get_screenshot(app, assert_expression)
        app.persons_page.return_to_persons_main_page(app)