Ejemplo n.º 1
0
    def test_validation_messages_of_donors_direction(self, query,
                                                     test_data_set_number):
        main_page = DonorsModuleRegistryPage()

        change_product_settings(AutoDonorAutomaticApprobation='false')

        change_donor_settings(CheckAntierythrocyteDonationOrExamination='true')

        full_query = sql_query(query)

        donorid = str(full_query[0][0])

        expected_message = full_query[0][1]

        main_page.clear_localstorage()

        main_page.open()

        aistium.fill(donorid, elements=main_page.quick_search_field)

        main_page.quick_search('click')

        main_page.loading_is_completed()

        ind = sql_query(
            "select Main.Nmb from (select row_number() over (order by PerC.BirthDate desc) Nmb, PerC.UniqueId from PersonCards PerC left join IdentityDocs IDoc on PerC.IdentityDocId = IDoc.UniqueId where PerC.IsDeleted != 1 and (PerC.UniqueId = '"
            + donorid + "' or IDoc.Number = '" + donorid +
            "')) Main where Main.UniqueId = '" + donorid + "'")[0][0]

        main_page.get_grid_values('UniqueId',
                                  ind,
                                  main_page.main_grid,
                                  mode='click')

        main_page.loading_is_completed()

        aistium.click_on(elements=main_page.process_state_button)

        main_page.loading_is_completed()

        assert main_page.get_alert_text(
            mode='none').split('\n')[0] == 'Направление запрещено.'

        assert (expected_message in main_page.get_alert_text(
            mode='none').split('\n')[1:]) == True
Ejemplo n.º 2
0
    def test_donors_direction_e(self, query, test_data_set_number):
        main_page = DonorsModuleRegistryPage()

        main_page.clear_localstorage()

        donations_counts = {
            'HonorableDonorSettings[0].DonationsCount': '10',
            'HonorableDonorSettings[0].BloodAndComponentsCount': '5',
            'HonorableDonorSettings[0].PlasmaCount': '5',
            'HonorableDonorSettings[1].DonationsCount': '999',
            'HonorableDonorSettings[1].BloodAndComponentsCount': '999',
            'HonorableDonorSettings[1].PlasmaCount': '0',
            'HonorableDonorSettings[2].DonationsCount': '999',
            'HonorableDonorSettings[2].BloodAndComponentsCount': '999',
            'HonorableDonorSettings[2].PlasmaCount': '0',
            'HonorableDonorSettings[3].DonationsCount': '999',
            'HonorableDonorSettings[3].BloodAndComponentsCount': '999',
            'HonorableDonorSettings[3].PlasmaCount': '0'
        }

        change_donor_settings(
            **{str(k): v
               for k, v in donations_counts.items()},
            NotifyRegistrarForHonorableDonor='true',
            CheckDonorInFicWhileDirection='false',
            CheckFiasAddressForDonor='false',
            CheckIncompleteAnalysis='false',
            AlwaysShowEpidAddress='false',
            CheckAntierythrocyteDonationOrExamination='false',
        )

        change_product_settings(AutoDonorAutomaticApprobationProducts='true')

        change_sticker_settings(PrintRunner='false')

        full_query = sql_query(query)

        donorid = str(full_query[0][0])

        main_page.open()

        aistium.fill(donorid, elements=main_page.quick_search_field)

        main_page.quick_search('click')

        main_page.loading_is_completed()

        ind = sql_query(
            "select Main.Nmb from (select row_number() over (order by PerC.BirthDate desc) Nmb, PerC.UniqueId from PersonCards PerC left join IdentityDocs IDoc on PerC.IdentityDocId = IDoc.UniqueId where PerC.IsDeleted != 1 and (PerC.UniqueId = '"
            + donorid + "' or IDoc.Number = '" + donorid +
            "')) Main where Main.UniqueId = '" + donorid + "'")[0][0]

        main_page.get_grid_values('UniqueId', ind, main_page.main_grid,
                                  'click')

        main_page.loading_is_completed()

        aistium.click_on(elements=main_page.process_state_button)

        main_page.loading_is_completed()

        assert aistium.get_text(
            elements=main_page.process_state_button) == 'Вернуть'

        assert len(
            sql_query(
                "select PrReg.Id from DonationProcessRegistry PrReg, ref.SystemSettings SysSet where PrReg.DonorId = '"
                + donorid +
                "' and PrReg.OrgId = SysSet.CurrentOrganizationId and PrReg.RegDate = cast(getdate() as date) and PrReg.CurrentState = 1 and PrReg.MobileTeamSessionId is null"
            )[0]) > 0

        payload = {'Login': BaseTest.login, 'Password': BaseTest.password}

        url = BaseTest.stand + '/Auth/LogOn'

        s = requests.Session()

        s.post(url, data=payload)

        body = {'donorId': donorid}

        s.post('http://10.32.200.142/Common/IsExaminationsSaved', data=body)

        body = {
            'id': donorid,
            'confirmed': 'true',
            'sessionId': '',
            'reason': 'автотест',
            'fromQuickRegistryForm': 'false',
            'recipientId': '',
            'donationTypeId': '',
            'noteType': 'Registration'
        }

        s.post(BaseTest.stand + '/Common/StepBackwardDonationProcess',
               data=body)