Пример #1
0
def random_news():
    return News(
        title=randrus_str(10),
        description=randrus_str(10),
        text=randrus_str(10),
        publish_date=datetime.now(),
        type_of_news='NEWS',
        visible=1
    )
Пример #2
0
def rand_department():
    return Department(
        name=randrus_str(10),
        description=randrus_str(20),
        calendar_id=5,
        schedule_id=5,
        advanceLimitPeriod=10,
        sync_time=datetime.now().strftime('%Y-%m-%d') + ' 00:00:00',
        finish_advance_date=(datetime.now() +
                             timedelta(days=10)).strftime('%Y-%m-%d') +
        ' 00:00:00')
Пример #3
0
def random_schedule():
    return Schedule(
        name=randrus_str(10),
        time_begin_1=str(randrange(8, 12, 1)) + ':00:00',
        time_end_1=str(randrange(17, 19, 1)) + ':00:00',
        breaks_id1=rand_num()
    )
Пример #4
0
def random_service():
    return Services(
        id=rand_num(10),
        name=randrus_str(10),
        group_id=UserTypes.LEGAL.id,
        calendar_id=1
    )
Пример #5
0
    def test_department_creation(self, config, setup, teardown):
        global department_name

        user = GkrUserSteps(config)
        department_admin_page = DepartmentsAdminPage(config)

        # test data
        name = randrus_str(10)
        description = randrus_str(20)
        schedule = "алушта"
        phys_percents = 77
        legal_percents = 33
        department_name = name

        # filling form
        user.opens(Urls.ADMIN_DEPS.url)
        user.clicks(department_admin_page.NEW_DEPARTMENT)
        user.appends_text(department_admin_page.NAME, name)
        user.appends_text(department_admin_page.DESC, description)
        user.chooses_from_select(department_admin_page.SCHEDULE, schedule)
        user.chooses_from_select(department_admin_page.CALENDAR, Calendars.BEL_CALENDAR.name)
        user.selects_checkbox(department_admin_page.PHYS_CHECKBOX)
        user.selects_checkbox(department_admin_page.LEGAL_CHECKBOX)
        user.enters_text(department_admin_page.PHYS_INPUT, phys_percents)
        user.enters_text(department_admin_page.LEGAL_INPUT, legal_percents)
        user.chooses_from_select(department_admin_page.REGIONS_SELECT, DepartRegion.ARMYANSK.location)
        user.chooses_from_select(department_admin_page.REGIONS_SELECT, DepartRegion.ALUSHTA.location)
        user.clicks(department_admin_page.SAVE)
        user.waits_for_element_displayed(department_admin_page.SAVED, 10)
        user.reloads_page()
        user.chooses_from_select(department_admin_page.DEPARTMENTS_LIST, description)

        # verification
        user.should_see_field_value(department_admin_page.NAME, name)
        user.should_see_field_value(department_admin_page.DESC, description)
        user.should_see_element_enabled(department_admin_page.PHYS_INPUT)
        user.should_see_element_enabled(department_admin_page.LEGAL_INPUT)

        user.should_see_list_size(department_admin_page.REGIONS_LIST, 2)
        user.should_see_selected_text(department_admin_page.SCHEDULE, schedule)
        user.should_see_selected_text(department_admin_page.CALENDAR, Calendars.BEL_CALENDAR.name)
        user.should_matches_to_list_item(department_admin_page.REGIONS_LIST,
                                         contains_string(DepartRegion.ARMYANSK.location))
        user.should_matches_to_list_item(department_admin_page.REGIONS_LIST,
                                         contains_string(DepartRegion.ALUSHTA.location))
Пример #6
0
    def test_service_creation(self, config, setup, teardown):
        global service
        user = GkrUserSteps(config)
        db_user = GkrDbSteps(config)
        services_page = ServicesAdminPage(config)

        name = randrus_str(10)
        prefix = randrus_str(2)
        group = UserTypes.LEGAL
        duration = 10
        additional_duration = 5
        percent_records = 30
        percent_records_advance = 60
        button_text = "<html><b><p align=center><span style='font-size:40.0pt;color:white'>%s</span></b>" % name

        user.opens(Urls.ADMIN_SERVICES)
        user.enters_text(services_page.NAME, name)
        user.enters_text(services_page.PREFIX, prefix)
        user.chooses_from_select(services_page.GROUP, group.name)
        user.enters_text(services_page.DURATION, duration)
        user.enters_text(services_page.ADDITIONAL_DURATION, additional_duration)
        user.enters_text(services_page.PERCENT_RECORDS, percent_records)
        user.enters_text(services_page.PERCENT_RECORDS_ADVANCE, percent_records_advance)
        user.waits_for_element_enabled(services_page.SUBMIT)
        user.clicks(services_page.SUBMIT)
        user.waits_for_ajax()
        user.reloads_page()
        service = db_user.query_first(Services, Services.name == name)

        # проверяет данные в таблице
        row = services_page.SERVICES_LIST.get_row_by_title(name)
        user.should_see_element_with_text(row.id, service.id)
        user.should_see_element_with_text(row.title, name)
        user.should_see_element_with_text(row.group, group.name)

        # проверяет данные в базе
        db_user.should_see_db_entry_value(service, 'name', name)
        db_user.should_see_db_entry_value(service, 'service_prefix', prefix)
        db_user.should_see_db_entry_value(service, 'group_id', group.id)
        db_user.should_see_db_entry_value(service, 'duration', duration)
        db_user.should_see_db_entry_value(service, 'aditional_duration', additional_duration)
        db_user.should_see_db_entry_value(service, 'precent_records', percent_records/100)
        db_user.should_see_db_entry_value(service, 'precent_records_advance', percent_records_advance/100)
        db_user.should_see_db_entry_value(service, 'button_text', button_text)
Пример #7
0
def random_user(role, is_legal=False):
    c = Customers(name=randrus_str(15),
                  surname=randrus_str(15),
                  patronymic=randrus_str(15),
                  email=rand_str() + '@' + rand_str() + '.com',
                  birthday=datetime.now() - timedelta(weeks=int(rand_num(4))),
                  mobile_phone='9777' + rand_num(7),
                  home_phone='',
                  code=uuid.uuid4().hex,
                  no=rand_num(6),
                  serial=rand_num(4),
                  issue=randrus_str(15),
                  when_at=datetime.now() - timedelta(weeks=int(rand_num(3))),
                  created=datetime.now().strftime('%Y-%m-%d 00:00:00'),
                  validated=datetime.now().strftime('%Y-%m-%d 00:00:00'))
    if is_legal:
        c.inn = '1' + rand_num(10)
    user = User(c, '12345678', role)
    return user
Пример #8
0
    def test_concurrent_registration(self, config):
        user = GkrUserSteps(config)
        db_user = GkrDbSteps(config)
        reg_page = RegistrationPage(config)
        dialogs = Dialogs(config)

        i = 0
        report = ''
        while i < int(config.attempts):
            mobile = '9777' + rand_num(7)
            user.opens(Urls.REGISTRATION)
            user.should_see_element(reg_page)
            user.enters_text(reg_page.SURNAME, randrus_str(15))
            user.enters_text(reg_page.NAME, randrus_str(15))
            user.enters_text(reg_page.PATRONYMIC, randrus_str(15))
            user.enters_text(reg_page.BIRTHDAY, '12.06.1984')
            user.enters_text(reg_page.PASSPORT_SERIAL, rand_num(4))
            user.enters_text(reg_page.PASSPORT_NUMBER, rand_num(6))
            user.enters_text(reg_page.ISSUE, randrus_str(15))
            user.enters_text(reg_page.ISSUE_DATE, '09.01.2015')
            user.enters_text(reg_page.MOBILE, mobile)
            user.enters_text(reg_page.EMAIL,
                             rand_str() + '@' + rand_str() + '.com')

            user.waits_for_element_enabled(reg_page.SUBMIT)
            user.submit_regform()

            user.waits_for_element_displayed(dialogs.REG_SUCCESS_DIALOG)
            tc = db_user.query_first(TCustomers,
                                     TCustomers.mobile_phone == mobile)
            user.opens(Urls.LOGOUT)
            user.opens('/registration/customer/?code=' + str(tc.code) +
                       '&id=' + str(tc.id))
            user.waits_for_element_displayed(dialogs.EMAIL_SUCCESS_DIALOG)

            c = db_user.query_first(Customers,
                                    Customers.mobile_phone == mobile)
            report = report + '\nНовый пользователь id=' + str(
                c.id) + ', phone=' + c.mobile_phone
            user.logout()
            i += 1

        allure.attach('response.log', str(report), type=AttachmentType.TEXT)
Пример #9
0
    def test_custom_verify_button(self, config, setup):
        user = GkrUserSteps(config)
        queue_page = QueuePage(config)
        locality = randrus_str(10)

        user.chooses_from_select(queue_page.CITY,
                                 Departments.BEL_DEP.short_name)
        user.enters_text(queue_page.LOCALITY, locality)
        user.waits_for_element_displayed(queue_page.address_dialog)
        user.clicks(queue_page.address_dialog.VERIFY)
        user.waits_for_element_disappeared(queue_page.address_dialog)
        user.should_see_field_value(queue_page.OTHER, '')
        user.should_see_attribute_value(queue_page.OTHER, 'disabled', True)
Пример #10
0
    def test_custom_street(self, config, setup):
        user = GkrUserSteps(config)
        queue_page = QueuePage(config)
        locality = 'с. Александровка'
        street = randrus_str(10)

        user.chooses_from_select(queue_page.CITY,
                                 Departments.BEL_DEP.short_name)
        user.enters_suggest(queue_page.LOCALITY, locality)
        user.enters_text(queue_page.STREET, street)
        user.waits_for_element_displayed(queue_page.address_dialog)
        user.clicks(queue_page.address_dialog.MANUAL)
        user.waits_for_element_disappeared(queue_page.address_dialog)
        user.should_see_element_enabled(queue_page.OTHER)
        user.should_see_field_value(queue_page.OTHER, locality + ', ' + street)
Пример #11
0
    def test_department_edition(self, config, setup, teardown):
        global department_name
        append_text = randrus_str(5)
        disabled = "disabled"

        user = GkrUserSteps(config)
        db_user = GkrDbSteps(config)
        http_user = GkrHttpSteps(config)
        department_admin_page = DepartmentsAdminPage(config)

        department = db_user.creates_department(rand_department(), DepartRegion.ARMYANSK, DepartRegion.BELOGORSKI,
                                                phys_percent=0.1, legal_percent=0.2)
        department_name = department.name + append_text

        http_user.renew_queue()
        user.opens(Urls.ADMIN_DEPS)
        user.chooses_from_select(department_admin_page.DEPARTMENTS_LIST, department.description)
        user.waits_for_ajax()

        user.appends_text(department_admin_page.NAME, append_text)
        user.appends_text(department_admin_page.DESC, append_text)
        user.chooses_from_select(department_admin_page.SCHEDULE, Calendars.BEL_CALENDAR.name)
        user.chooses_from_select(department_admin_page.CALENDAR, Calendars.BEL_CALENDAR.name)
        user.unselects_checkbox(department_admin_page.PHYS_CHECKBOX)
        user.unselects_checkbox(department_admin_page.LEGAL_CHECKBOX)
        user.clicks(department_admin_page.REGIONS_LIST.get_row_by_name(DepartRegion.ARMYANSK.location).delete)
        user.chooses_from_select(department_admin_page.REGIONS_SELECT, DepartRegion.ALUSHTA.location)
        user.clicks(department_admin_page.SAVE)
        user.waits_for_element_displayed(department_admin_page.SAVED)

        user.reloads_page()
        user.chooses_from_select(department_admin_page.DEPARTMENTS_LIST, department.description + append_text)

        user.should_see_field_value(department_admin_page.NAME, department.name + append_text)
        user.should_see_field_value(department_admin_page.DESC, department.description + append_text)
        user.should_see_attribute_value(department_admin_page.PHYS_INPUT, disabled, True)
        user.should_see_attribute_value(department_admin_page.LEGAL_INPUT, disabled, True)

        user.should_see_list_size(department_admin_page.REGIONS_LIST, 2)
        user.should_not_matches_to_list_item(department_admin_page.REGIONS_LIST,
                                             contains_string(DepartRegion.ARMYANSK.location))
        user.should_matches_to_list_item(department_admin_page.REGIONS_LIST,
                                         contains_string(DepartRegion.ALUSHTA.location))
Пример #12
0
    def test_history_search_empty(self, config, teardown):

        global advance_one, advance_two, history_operator

        advance_one = None
        advance_two = None
        user = GkrUserSteps(config)
        db_user = GkrDbSteps(config)
        main_page = MainPage(config)
        history_operator = random_user(UserRoles.OPERATOR)
        db_user.create_user(history_operator)

        user.login(history_operator.customers_data.mobile_phone,
                   history_operator.password)
        user.waits_for_element_displayed(main_page.top_menu.LOGOUT)
        user.selects_from_main_menu(MainMenu.HISTORY)
        user.should_see_text(ConfirmationMessages.HISTORY_EMPTY)

        user.reloads_page()
        user.search_history(randrus_str(7))
        user.should_see_text(ConfirmationMessages.HISTORY_EMPTY)
Пример #13
0
    user = User(c, '12345678', role)
    return user


OPERATOR = User(
    Customers(name=u'ИмяОператора',
              surname='ФамилияОператора',
              patronymic='ОтчествоОператора',
              email='*****@*****.**',
              birthday=datetime.now() - timedelta(weeks=1200),
              mobile_phone='79907777777',
              home_phone='',
              code=uuid.uuid4().hex,
              no=777777,
              serial=7777,
              issue=randrus_str(15),
              when_at=datetime.now() - timedelta(weeks=600),
              created=datetime.now().strftime('%Y-%m-%d %H:%M:%S'),
              validated=datetime.now().strftime('%Y-%m-%d %H:%M:%S')),
    '12345678', UserRoles.OPERATOR)

CUSTOMER = User(
    Customers(
        name=u'ИмяКастомера',
        surname='ФамилияКастомера',
        patronymic='ОтчествоКастомера',
        birthday=datetime.now() - timedelta(weeks=1100),
        email='*****@*****.**',
        mobile_phone='79902222222',
        home_phone='',
        code=uuid.uuid4().hex,