Определите тестовый класс pytest «TestingInventoryCreation», который тестирует поведение метода « init » с помощью следующих тестов:
Определите тестовый метод pytest «test_creating_empty_inventory», который создает пустой инвентарь и проверяет, является ли его 'balance_inventory' пустым диктом.
Определите метод тестирования pytest 'test_creating_specified_inventory', который создает экземпляр инвентаря с вводом {'iPhone Модель X': 100, 'Модель Xiaomi Y ': 1000,' Nokia Model Z ': 25}.
Определите метод тестирования pytest' test_creating_inventory_with_list ', который проверяет, вызывает ли метод' init 'ошибку TypeError с сообщением " В качестве входных данных должен использоваться словарь "когда список" ['iPhone Model X', 'Xiaomi Model Y', 'Nokia Model Z'] "передается в качестве входных данных.
Определение метода тестирования pytest ' test_creating_inventory_with_numeric_keys ', который проверяет, вызывает ли метод' init 'ValueError с сообщением "Имя мобильной модели должно быть строкой", когда d ict {1: 'iPhone Model X', 2: 'Xiaomi Model Y', 3: 'Nokia Model Z'} передается в качестве ввода.
Определить метод тестирования pytest 'test_creating_inventory_with_nonnumeric_values', который проверяет если метод ' init ' вызывает ошибку ValueError с сообщением "Нет. мобильных телефонов должно быть положительным целым числом ", когда в качестве входных данных передается dict {'iPhone Model X': '100', 'Xiaomi Model Y': '1000', 'Nokia Model Z': '25'}.
Определить метод тестирования pytest 'test_creating_inventory_with_negative_value', который проверяет, вызывает ли метод ' init ' ValueError с сообщением "No. мобильных телефонов должно быть положительным целым числом ", когда в качестве входных данных передается dict {'iPhone Model X': - 45," Xiaomi Model Y ": 200," Nokia Model Z ": 25}.