UnitTest Python. Почему работает по первому способу, но не работает по второму?

Вопрос, почему тест работает нормально в первом случае? Но почему он не работает во втором случае? Отправляю исходный код:

import unittest
from function import get_formatted_name

"""
def get_formatted_name(first, last):
    full_name = first + ' ' + last
    return full_name.title()
"""


class NamesTest(unittest.TestCase):
    def test_result(self):
        self.assertEqual(get_formatted_name('name', 'surname'), "Name Surname")


# 1. Вот так работает:
if __name__ == '__main__':
    unittest.main()

# 2. А вот так нет, почему?
# unittest.main()

Добавляю пояснение к вопросу:
Я создал простейший тест, который проверяет корректность работы метода get_formatted_name, код метода есть в вопросе. Чтобы запустить тест я попробовал две реализации:

  1. if name == 'main': unittest.main()
  2. unittest.main() При реализации 1 способа программа запустилась - и тест тоже, при реализации 2 способа программа также запустилась, но тест не сработал.
    У меня появился закономерный вопрос - почему?

Ответы (0 шт):