Пример #1
0
 def test_house_cannot_have_more_thant_50_students(self):
     h = House(1, 'Griffindor', 51)
     teaches_dark_arts = 0
     repo = BaseHouseRepository()
     service = HouseService(repo)
     create_house = service.create_house(h.name, h.students,
                                         teaches_dark_arts)
     self.assertFalse(create_house)
Пример #2
0
 def test_can_create_house_with_right_parameters(self):
     h = House(1, 'Griffindor', 50)
     teaches_dark_arts = 0
     repo = BaseHouseRepository()
     service = HouseService(repo)
     create_house = service.create_house(h.name, h.students,
                                         teaches_dark_arts)
     self.assertTrue(create_house)
Пример #3
0
 def test_cannot_create_house_if_teaches_dark_arts(self):
     h = House(1, 'Griffindor', 50)
     teaches_dark_arts = 1
     repo = BaseHouseRepository()
     service = HouseService(repo)
     create_house = service.create_house(h.name, h.students,
                                         teaches_dark_arts)
     self.assertFalse(create_house)
Пример #4
0
def delete_house():
    service = HouseService(HouseRepository())
    houses = service.get_all_houses()

    if request.method == 'POST':
        service.delete_house(request.form['houses_id'])

        return render_template('house/houses.html', houses=houses)

    return render_template('house/delete_house.html', houses=houses)
Пример #5
0
def create_house():
    if request.method == 'POST':
        name = request.form['house_name']
        max_students = request.form['max_students']
        teaches_dark_arts = request.form['teaches_dark_arts']
        service = HouseService(HouseRepository())
        success = service.create_house(name, max_students, teaches_dark_arts)

        if success:
            return render_template('house/house_success.html')
        return render_template('house/house_error.html')

    return render_template('house/new_house.html')
Пример #6
0
def update_house(house_id):
    service = HouseService(HouseRepository())

    if request.method == 'POST':
        can_update_house = service.update_house(
            request.form['house_id'],
            request.form['house_name'],
            request.form['max_students']
        )

        if not can_update_house:
            return render_template('house/house_error.html')

    house = service.get_house_by_id(house_id)

    if house is None:
        return 'Not Found'

    return render_template('house/update_house.html', house=house)
Пример #7
0
def create_wizard():
    h_service = HouseService(HouseRepository())
    houses = h_service.get_all_houses()

    if request.method == 'POST':
        service = WizardService(WizardRepository())
        new_wizard = service.create_wizard(
            request.form['wizard_name'],
            request.form['wizard_age'],
            request.form['has_received_letter'],
            request.form['voldemort_friend'],
            request.form['dark_wizard'],
            request.form['house_options'],
        )

        if new_wizard:
            return render_template('wizard/wizard_success.html')
        return render_template('wizard/wizard_error.html')

    return render_template('wizard/new_wizard.html', houses=houses)
Пример #8
0
def update_wizard(wizard_id):
    w_service = WizardService(WizardRepository())
    h_service = HouseService(HouseRepository())
    houses = h_service.get_all_houses()

    if request.method == 'POST':
        can_update_wizard = w_service.update_wizard(
            request.form['wizard_id'], request.form['wizard_name'],
            request.form['wizard_age'], request.form['wizard_house'])

        if not can_update_wizard:
            return render_template('wizard/wizard_error.html')

    wizard = w_service.get_wizard_by_id(wizard_id)
    current_house = h_service.get_house_by_id(wizard.house_id)

    if wizard is not None:
        return render_template('wizard/update_wizard.html',
                               wizard=wizard,
                               houses=houses,
                               current_house=current_house)
    else:
        return render_template('wizard/wizard_not_found.html')
Пример #9
0
def houses():
    service = HouseService(HouseRepository())
    houses = service.get_all_houses()

    return render_template('house/houses.html', houses=houses)
Пример #10
0
def house_by_id(house_id):
    service = HouseService(HouseRepository())
    house = service.get_house_by_id(house_id)

    return render_template('house/house.html', house=house) if house else render_template('house/house_not_found.html')