示例#1
0
def making_vac_entries(conn, cur, columns_v, values_v, columns_c, values_c,
                       columns_cm, values_cm):
    inf = []
    entries = []
    companies = bf.search(conn, cur, 'companies', columns_cm, values_cm)
    filiations = bf.search(conn, cur, 'filiations', columns_c, values_c)
    for fil in filiations:
        for comp in companies:
            if fil[1] == comp[0]:
                columns_v.append('idOfFil')
                values_v.append(fil[0])
                inf.append(
                    (fil[0], fil[2], comp[0], comp[2], comp[3], comp[4]))
                break
    vacancies = bf.search(conn, cur, 'vacancies', columns_v, values_v)
    if vacancies:
        for vac in vacancies:
            for i in inf:
                if vac[2] == i[0]:
                    entry = (vac[0], vac[1], i[1], vac[3], vac[4], vac[5],
                             i[2], i[3], i[4], i[5])
                    entries.append(entry)
                    break
    header = [
        '   ID   ', '  Профессия  ', '  Город  ', 'Занятость', 'Зарплата',
        '    Опыт    ', '    Название    ', '    Сайт    ',
        '   Электронная   ', 'Есть ли ', '\n', 'вакансии', '             ',
        '         ', '         ', '        ', '   работы   ',
        '    компании    ', '            ', '      почта      ', 'практика'
    ]
    render(entries, header)
示例#2
0
def registration(conn, cur, table):
    if table.name == 'companies':
        while True:
            login = input(
                'Введите название компании (далее оно будет использоваться как ваш логин для входа в систему): '
            )
            if not bf.search(conn, cur, 'companies', ['login'], [login]):
                while True:
                    password = input('Придумайте восьмизначный пароль: ')
                    if len(password) == 8:
                        return login, password
                    else:
                        print('В пароле должно быть 8 символов!')
            else:
                print('Компания с таким названием уже существует.')
    else:
        while True:
            login = input('Придумайте логин: ')
            if not bf.search(conn, cur, 'users', ['login'], [login]):
                while True:
                    password = input('Придумайте восьмизначный пароль: ')
                    if len(password) == 8:
                        return login, password
                    else:
                        print('В пароле должно быть 8 символов!')
            else:
                print('Пользователь с таким логином уже существует.')
def test_ordering():

    searchphrase = 'Fizyka dla grafików komputerowych'

    browser = webdriver.Firefox()
    browser.get(basefunc.BASEURL)

    basefunc.login(browser, 'id', 'pass')
    time.sleep(2)
    basefunc.goToMainPage(browser)
    time.sleep(2)
    basefunc.search(browser, searchphrase)
    time.sleep(2)
    basefunc.getFirstBook(browser, searchphrase)
    time.sleep(2)
    basefunc.identifyBook(browser, searchphrase)
    basefunc.orderFirstCopy(browser, searchphrase)

    #walidacja/weryfikacja?
    my_account = browser.find_element_by_css_selector(
        "#primary-nav > li:nth-child(1) > a")
    my_account.click()

    my_orders = browser.find_element_by_css_selector("#ui-id-2")
    my_orders.click()

    #start = datetime.datetime.now()
    current_order = browser.find_element_by_xpath(
        "/html/body/div/div[2]/div[5]/div[3]/div[2]/form/table/tbody/tr[3]/td[1]/a"
    ).text
    assert searchphrase in current_order

    basefunc.logout(browser)
    browser.quit()
示例#4
0
def search_vacs_of_comp(conn, cur, name):
    fils = bf.search(conn, cur, 'filiations', ['nameOfComp'], [name])
    if fils:
        columns = []
        values = []
        for fil in fils:
            columns.append('idOfFil')
            values.append(fil[0])
        res = bf.search(conn, cur, 'vacancies', columns, values)
        return res
def test_searchWithoutLog():

    browser = webdriver.Firefox()
    browser.get(basefunc.BASEURL)

    basefunc.search(browser, searchphrase)
    time.sleep(2)
    basefunc.getFirstBook(browser, searchphrase)
    time.sleep(2)
    basefunc.identifyBook(browser, searchphrase)
    basefunc.logout(browser)
    browser.quit()
def test_searchWithFilter():

    browser = webdriver.Firefox()
    browser.get(basefunc.BASEURL)

    basefunc.search(browser, searchphrase)
    time.sleep(2)
    browser.find_element_by_partial_link_text("Nagranie dźwiękowe").click()
    time.sleep(1)
    browser.find_element_by_xpath(
        "/html/body/div/div[2]/div[5]/div[3]/form/span/ul/li/div[2]/div[1]/a[1]"
    ).click()
    title_elem = browser.find_element_by_class_name('title').text
    assert filter_searchphrase in title_elem
    browser.quit()
def test_searchWithLog():

    browser = webdriver.Firefox()
    browser.get(basefunc.BASEURL)

    basefunc.login(browser, 'id', 'pass')
    time.sleep(2)
    basefunc.goToMainPage(browser)
    time.sleep(2)
    basefunc.search(browser, searchphrase)
    time.sleep(2)
    basefunc.getFirstBook(browser, searchphrase)
    time.sleep(2)
    basefunc.identifyBook(browser, searchphrase)
    browser.quit()
示例#8
0
def view_fil(conn, cur, name):
    res = bf.search(conn, cur, 'filiations', ['nameOfComp'], [name])
    hf.render(res, filiations.header)
    answer = input('Хотите редактировать данные филиалов? (да/нет)\n')
    print('')
    if answer == 'да':
        return edit_fil(conn, cur, name)
    return menu_for_comp(conn, cur, name)
示例#9
0
def authorization(conn, cur, table):
    while True:
        print('Введите данные')
        login = input('Логин: ')
        password = input('Пароль: ')
        if not login or not password:
            print('Неверный ввод логина или пароля')
        else:
            if not bf.search(conn, cur, table.name, ['login', 'password'],
                             [login, password]):
                print('Неверный ввод логина или пароля')
            else:
                return login
示例#10
0
def making_res_entries(conn, cur, columns_u, values_u, columns_r, values_r):
    entries = []
    users = bf.search(conn, cur, 'users', columns_u, values_u)
    for user in users:
        columns_r.append('login')
        values_r.append(user[0])
    if columns_r and values_r:
        resumes = bf.search(conn, cur, 'resumes', columns_r, values_r)
        if resumes:
            for resume in resumes:
                user = bf.search(conn, cur, 'users', ['login'], [resume[1]])
                user = user[0]
                entry = (resume[0], user[2], user[3], user[4], user[5],
                         user[6], resume[2], resume[3], resume[4], resume[5])
                entries.append(entry)
    header = [
        '  ID  ', '     Имя     ', '   Фамилия   ', '   Номер   ', '  Город  ',
        '  Статус  ', '   Профессия   ', '    Опыт    ', 'Занятость',
        'Нужна ли', '\n', 'резюме', '             ', '             ',
        ' телефона  ', '         ', '          ', '               ',
        '   работы   ', '         ', 'практика'
    ]
    render(entries, header)
示例#11
0
def view_resume(conn, cur, login):
    res = bf.search(conn, cur, 'resumes', ['login'], [login])
    hf.render(res, resumes.header)
    while True:
        print('Выберите дальнешее действие:')
        print('1. Изменить имеющееся резюме')
        print('2. Удалить имеющееся резюме')
        print('3. Вернутся в главное меню')
        num = input('Введите пункт меню: ')
        print('')
        if num == '1':
            uf.change_resume(conn, cur)
        elif num == '2':
            uf.delete_resume(conn, cur)
        elif num == '3':
            return menu_for_st(conn, cur, login)
        else:
            print('Такого пункта в меню нет.\n')
示例#12
0
def search_id(conn, cur, table):
    res = bf.search(conn, cur, table, [], [])
    return len(res) + 1