Почему не работает второй unittest? Python
Изучаю Python. Пытаясь разобраться с unittest.TestCase столкнулся с тем, что на втором тесте выдает ошибку:
ERROR: test_if_work_get_new_raise (main.EmployeeTestCase) Traceback (most recent call last): ... , line 24, in test_if_work_get_new_raise new_raise = get_new_raise() NameError: name 'get_new_raise' is not defined
Не могу понять, что делаю не так.
Первый файл с кодом employee.py:
class Employee:
"""Прописываем функции класса."""
def __init__(self, first, last, salary):
"""Прописываем создание объекта с атрибутами: имя, фамилия и зп.
Также вывожу данные в одно предложение для удобства"""
self.first_name = first.lower()
self.last_name = last.lower()
self.salary = int(salary)
self.full_name = f"{self.first_name.title()} {self.last_name.title()}"
self.full_name += f" имеет {self.salary}."
def get_new_raise(self, grow_raise=5000):
"""Увеличиваем числовой показатель на условное значение."""
self.salary += grow_raise
return self.salary
При чем, если пытаюсь в этом файле создавать объект, функции работают исправно.
Второй файл test_employee.py:
import unittest
from employee import Employee
class EmployeeTestCase(unittest.TestCase):
"""Тесты для класса Employee."""
def test_enter_first_last_salary(self):
"""Тестирую создание объекта в классе."""
first = 'дима'
last = 'маркин'
salary = 25_000
test_sentence = ("Дима Маркин имеет 25000.")
my_employee = Employee(first, last, salary)
self.assertEqual(my_employee.full_name, test_sentence)
def test_if_work_get_new_raise(self):
"""Работает ли функция увеличения числа?"""
self.my_employee = Employee('дима', 'маркин', 25_000)
new_raise = get_new_raise()
self.assertEqual(new_raise, 30000)
if __name__ == '__main__':
unittest.main()
Помогите разобраться.