Example #1
0
def main():
    recruiter_1 = Recruiter('Bon Jovi', '*****@*****.**', 20)
    programmer_1 = Programmer('Jason Stathem', '*****@*****.**', 50)
    programmer_2 = Programmer('Vin Diesel', '*****@*****.**', 60)
    candidate_1 = Candidate('John Snow', '*****@*****.**', 'Jaba-Java', 'trainee')
    candidate_2 = Candidate('Hodor', '*****@*****.**', 'Hodor', 'hodor')
    candidate_3 = Candidate('Groot', 'iamgroot@groot', '01001101 programmer', 'guardian of senior')
    vacancy_1 = Vacancy('Python')
    vacancy_2 = Vacancy('01001101 programmer')
Example #2
0
def main():
    recruiter1 = Recruiter('Natali', nata @ gmail.com, 20)
    programmer1 = Programmer('Alex', alex @ mail.ru, 50)
    programmer2 = Programmer('Roman', roman @ gmail.com, 60)
    candidate1 = Candidate('Vasil', vasyok @ gmail.com, 'Python')
    candidate2 = Candidate('Grisha', grigor @ rambler.ru, 'Python')
    candidate3 = Candidate('Katya', kate @ gmail.com, 'FrontEnd')
    vacancy1 = Vacancy('Python')
    vacancy2 = Vacancy('FrontEnd')
Example #3
0
def main():
    recruiter1 = Recruiter()
    programmer1 = Programmer()
    programmer2 = Programmer()
    candidate1 = Candidate()
    candidate2 = Candidate()
    candidate3 = Candidate()
    vacancy1 = Vacancy()
    vacancy2 = Vacancy()
Example #4
0
def main():

    recr_1 = Recruiter('Vika', '*****@*****.**', 24)
    emp_2 = Programmer('Sophia', '*****@*****.**', 30,
                       ['Python', 'SQL', 'CSS', 'PostgreSQL'])
    emp_3 = Programmer('Vlad', '*****@*****.**', 500,
                       ['Python', 'GitHub', 'Java'])
    cand_1 = Candidate('Valentin Zal', '@gmail.com', ['SQL', 'Java'],
                       'English', 'Magister')
    cand_2 = Candidate('Valentin Zal', '@gmail.com', ['SQL', 'Java'],
                       'English', 'Magister')
    cand_3 = Candidate('Valentin Zal', '@gmail.com', ['SQL', 'Java'],
                       'English', 'Magister')
    vak_1 = Vacancy('Programmer', ['C++', 'C#'], 'Midle')
    vak_2 = Vacancy('Desiner', ['Figma', 'C#'], 'Midle')
Example #5
0
class TestPairStairs(TestCase):
    def reset_db(self):
        Programmer.objects.all().delete()
        Pair.objects.all().delete()

    def setUp(self):
        self.reset_db()

    def tearDown(self):
        self.reset_db()

    def test_should_render_page_to_pair_stairs_page(self):
        response = Client().get('/pairstairs/')
        self.assertEqual(response.status_code, 200)

    def test_should_render_page_to_add_programmers_page(self):
        response = Client().get('/pairstairs/add')
        self.assertEqual(response.status_code, 200)

    def test_should_save_pairs(self):
        names = ','.join(['Kitty','Transformer'])
        Client().post('/pairstairs/add', {"programmer_names":names})
        self.assertEqual(Programmer.objects.count(), 2)
        self.assertEqual(Programmer.objects.filter(name="Kitty").count(),1)
        self.assertEqual(Programmer.objects.filter(name="Transformer").count(),1)

    def prepare_data(self):
        self.programmer1 = Programmer(name='Jason')
        self.programmer2 = Programmer(name='David')
        self.programmer1.save()
        self.programmer2.save()

    def test_should_reset_stairs(self):
        self.prepare_data()
        Client().get("/pairstairs/reset")
        self.assertEqual(Programmer.objects.count(), 0)

    def test_should_update_count_of_pair(self):
        self.prepare_data()
        Client().get("/pairstairs/2/1")
        pair = Pair.objects.get(programmer_1=self.programmer2, programmer_2=self.programmer1)
        self.assertEqual(pair.count, 1)
Example #6
0
def main():
    vasilyev = Programmer(
        ['js', 'python', 'make good coffee'],
        'Vasya',
        'Vasilyev',
        '*****@*****.**',
        '+322223322',
        32,
    )

    gunko = Programmer(['js', 'python', 'kubernetes', 'docker'], 'petr',
                       'gunko', '*****@*****.**', '+322227772', 30)

    tatarinova = Recruiter('Lena', 'Tatarinova', '*****@*****.**', '+372223322',
                           32)
    gagarin = Candidate('Yuriy Gagarin', '*****@*****.**',
                        ['spaceman', 'pilot'], 'pilot', 100)
    peterson = Candidate('Jim Peterson', 'jim_peterson.gmail.com',
                         ['python', 'js'], 'python', 79)
    vorghol = Candidate('Anastasia Vorghol', 'vorghol_a1952.gmail.com',
                        ['python', 'js'], 'js', 68)
    js_junior = Vacancy('JS Junior', 'js', 45)
    python_middle = Vacancy('Python Middle', 'python', 60)

    print(vasilyev, gunko, tatarinova, sep='\n')
    print(f'{vasilyev.name} salary: {vasilyev.check_salary()}')
    print(vasilyev.surname, 'said:', vasilyev.work())
    print(vasilyev > tatarinova)
    print(vasilyev >= tatarinova)
    print(vasilyev.tech_stack)
    print(gunko)
    print(vasilyev < gunko)
    print(vasilyev + gunko)
    print(js_junior)
    print(peterson)
    print(vorghol)
    print(gagarin)
    print(python_middle)
    print(vasilyev.about_person)
    data = Candidate.make_candidates_from_csv()
    [print(i) for i in data]
Example #7
0
File: app.py Project: Allinka1/OOP
def main():
    employee_1 = Programmer('Alinka', '*****@*****.**', 100,
                            ['Python', 'HTML', 'CSS', 'PostgreSQL'])
    employee_2 = Programmer('Nikita', '*****@*****.**', 500,
                            ['Python', 'GitHub'])
    recruiter_1 = Recruiter('Dasha', '*****@*****.**', 100)
    candidate_1 = Candidate('Maria Klukina', '*****@*****.**',
                            ['Python', 'Java Script'], 'Python', 'middle')
    candidate_2 = Candidate('Dima Mironin', '*****@*****.**',
                            ['Ruby', 'C#', 'Java'], 'Ruby', 'senior')
    candidate_3 = Candidate('Vladislav Limov', '*****@*****.**',
                            ['HTML', 'CSS', 'C++'], 'C++', 'junior')
    vacancy_1 = Vacancy('Python Developer', 'Python', 'middle')
    vacancy_2 = Vacancy('Ruby Developer', 'Ruby', 'senior')
    # candidate_1.work()
    # print(recruiter_1.full_info)
    # print(employee_1.full_info)
    # print(Candidate.from_csv('candidates.csv'))
    print(
        Candidate.from_csv(
            'https://bitbucket.org/ivnukov/lesson2/raw/master/candidates.csv'))
Example #8
0
 def test_should_redirect_to_stair_page(self):
     programmer1 = Programmer(name='Minkey', id=1)
     programmer2 = Programmer(name='Minnie', id=2)
     programmer1.save()
     programmer2.save()
     response = Client().get("/stairs/2/1")
     self.assertRedirects(response, "/stairs/")
Example #9
0
 def test_should_save_pair(self):
     programmer1 = Programmer(name='Minkey', id=1)
     programmer2 = Programmer(name='Minnie', id=2)
     programmer1.save()
     programmer2.save()
     Client().get("/stairs/2/1")
     pair = Pair.objects.get(first=programmer2, second=programmer1)
     self.assertEqual(1, pair.count)
Example #10
0
 def test_that_all_programmers_get_deleted(self):
     factory = RequestFactory()
     request = factory.get('request')
     programmer1 = Programmer(name='Kory Kraft')
     programmer1.save()
     programmer2 = Programmer(name='Jason Wickstra')
     programmer2.save()
     delete_programmers(request)
     self.assertEqual(0,len(Programmer.objects.all()))
Example #11
0
 def test_should_get_pair_from_database_if_exist(self):
     programmer1 = Programmer(name='Minkey', id=1)
     programmer2 = Programmer(name='Minnie', id=2)
     programmer1.save()
     programmer2.save()
     programmers = [programmer1,programmer2]
     pair_times = 2
     Pair(first=programmer2, second=programmer1, count =pair_times).save()
     pairs = create_pairs(programmers)
     self.assertEqual(pair_times, pairs[0].count)
Example #12
0
 def test_selected_programmer_gets_deleted(self):
     factory = RequestFactory()
     request = factory.get('request')
     programmer1 = Programmer(name='Kory Kraft')
     programmer1.save()
     programmer2 = Programmer(name='Jason Wickstra')
     programmer2.save()
     delete_programmer(request,1)
     self.assertEqual(1,len(Programmer.objects.all()))
     self.assertEqual('Jason Wickstra', Programmer.objects.all()[0].name)
Example #13
0
 def test_add_count_adds_1_to_pair_count(self):
     factory = RequestFactory()
     request = factory.get('request')
     programmer1 = Programmer(name='Kory Kraft')
     programmer1.save()
     programmer2 = Programmer(name='Jason Wickstra')
     programmer2.save()
     pair = Pair(pair1=programmer1, pair2=programmer2, count=0)
     pair.save()
     add_count(request=request, pair1_id=1, pair2_id=2)
     pair = Pair.objects.get(pk=1)
     self.assertEqual(pair.count, 1)
Example #14
0
from models import Programmer, Recruiter
from models import Candidate, Vacancy

if __name__ == '__main__':

    technologies = ['python', 'js', 'html', 'css']
    recruiter_anna = Recruiter('Anna', "*****@*****.**", 50)
    programmer_oleg = Programmer('Oleg', "*****@*****.**", 100)
    programmer_vasya = Programmer('Vasya', "*****@*****.**", 75)
    candidate_grisha = Candidate('Grisha Vetrov', '*****@*****.**',
                                 technologies, 'Python', 'Middle')
    candidate_petya = Candidate('Petr Vetrov', '*****@*****.**', technologies,
                                'Python', 'Junior')
    candidate_kolya = Candidate('Kolya Ivanov', '*****@*****.**',
                                technologies, 'Python', 'Senior')
    vacancy_python_middle = Vacancy('Python Middle on Project 1', 'Python',
                                    'Middle')
    vacancy_python_senior = Vacancy('Python Senior on Project 2', 'Python',
                                    'Senior')

    print(programmer_oleg.work())
    print(programmer_vasya.check_salary(15))
    print(programmer_oleg.__str__())
    print(recruiter_anna.work())
    print(recruiter_anna.check_salary(15))
    print(recruiter_anna.__str__())

    print(candidate_grisha.__str__())
    print(candidate_petya.__str__())
    print(candidate_kolya.__str__())
    print(vacancy_python_middle.__str__())
Example #15
0
from models import Employee
from models import Recruiter
from models import Programmer

programmer = Programmer(name='Vasya', email='*****@*****.**', salary=100)
print(programmer)
print(programmer.check_salary(50))

recruiter = Recruiter(name='masha', email='*****@*****.**', salary=20)
print(recruiter)
print(recruiter.check_salary(8))
Example #16
0
    new_net = ''
    for n in programmers[p]['networks']:
        new_net += f'{n}, '
    new_net = new_net[:-2]

    if programmers[p]['rate_card']['P4'] == True:
        P4 = 1
    else:
        P4 = 0

    if programmers[p]['invoice_num'] == None:
        programmers[p]['invoice_num'] = 0

    programmer = Programmer(
        i,
        p,
        programmers[p]['title'],
        programmers[p]['total_imp'],
        programmers[p]['revenue'],
        programmers[p]['rate_card']['value'],
        P4,
        new_net,
        programmers[p]['invoice_num'],
        programmers[p]['invoice_path'],
        programmers[p]['start_point']
    )
    
    prog_file = open(f'programmers/{p}.p', 'wb')
    pickle.dump(programmer, prog_file)

    i+=1
Example #17
0
 def prepare_data(self):
     self.programmer1 = Programmer(name='Jason')
     self.programmer2 = Programmer(name='David')
     self.programmer1.save()
     self.programmer2.save()
Example #18
0
def main():
    try:
        r = Recruiter(name="Sasha", zp_day=150, days=21, email='sasha@com')
        p = Programmer(name="Slava", zp_day=220, days=23, email='sl@com',
                       tech_stack={'have a car ', 'Python', 'JS', 'Git', 'HTML'})
        p2 = Programmer(name="Kostya", zp_day=200, days=24, email='kos@com',
                        tech_stack={'know of English ', 'Python', 'Django', 'flaks', 'react'})
        c = Candidate("Petya", "pet@com", "Razrabotka", "JS", "trenie")
        c2 = Candidate("Katya", "KET@com", "Recruter", "English", "С1")
        c3 = Candidate("Kiril", "Kir@com", "Razrabotkbotka", "Python", "junior")
        v = Vacancy("Programmer", "Python,JS,HTML", "junior")
        v2 = Vacancy("Recruiter", "комуникабельность , знание английского языка", "стаж 1год")

        # print(v)
        # print(v2)
        #
        # print('---------------------------')
        #
        # print(c)
        # # print(c.work())
        # print(c2)
        # print(c3)
        #
        # print('---------------------------')
        #
        # print(r)
        # print(r.work())
        # print(r.cheak_salary())
        #
        # print('---------------------------')
        #
        # print(p)
        # print(p.work())
        # print(p.cheak_salary())
        # print(p.tech_stack)
        #
        # print('---------------------------')
        # print(r == p)  # comparison by salary
        # print('---------------------------')
        # print(p.cheak_salary())
        #
        # print(p2)
        # print(p2.work())
        # print(p2.cheak_salary())
        # print(p2.tech_stack)
        #
        # print('---------------------------')
        # print(p > p2)
        # print()
        #
        # alfaprogr = p + p2
        # print(alfaprogr)
        # print(alfaprogr.work())
        # print(alfaprogr.cheak_salary())
        # print(alfaprogr.tech_stack)
        print(p.full_info)
        Candidate.create_candidat(' candidates.csv')


    except Exception as e:

        with open('logs.txt', 'a+') as log:
            mytime = (datetime.now().ctime())
            log.write(mytime + '\n')
            log.write(traceback.format_exc() + '------------------' + '\n')
Example #19
0
import datetime

import traceback

from models import Programmer

from models import Recruiter

from models import Employee

from models import Candidate

from models import Vacancy

if __name__ == '__main__':
    igor = Programmer('Igor', 1000, '*****@*****.**', 'programmer',
                      ['JS', 'Python', 'Delphi'])

    sasha = Programmer('Sasha', 130, '*****@*****.**', 'programmer',
                       ['Python'])

    curt = Recruiter('Cobain', 180, '*****@*****.**', 'recruiter')

    john = Candidate('John Fitzgerald Kennedy', '*****@*****.**',
                     ["Python", 'JS'], ['Pylon', 'JS'],
                     ['Python -middle', 'JS-junior'])

    java = Vacancy('Java', ['Java game developer'],
                   ['Java - middle', 'Python - senior'])

    full_stack = Vacancy('Full-Stack', ['PHP', 'MySQL', 'JS'],
                         ['PHP - senior', 'MySql - senior', 'JS -middle'])