delitet
во-первых if'ы были прописаны неправильно
во-вторых функция array_search при if == true возвращала тип данных None
надо было None изменить на int
Да не, у тебя функция неправильно написана сама. Надо тебе сначала прочитать какой-нибудь туториал по питону. Потом пописать после этого туториала, а уже потом читать книжку по питону. Потом писать после этой книжки. И потом уже изучать документацию к питону и после неё писать ещё больше.
Зачем ты делаешь эти тесты, если есть pytest? Видимо, ты просто не знаешь, что в питоне уже есть куча инструментов для тестирования. Есть unittest, doctest, pytest. Вот эти три можно задействовать в разных ситуациях. unittest - полноценная система для тестирования. doctest - скоростная система тестирования. pytest - сбалансированная система тестирования.
А! Есть ещё книжки по тестированию! Как правильно делать тесты в любой системе, написано как раз в них. Тесты же должны быть полностью независимы друг от друга, покрывать пространство тестируемой области без дублирования друг друга и при этом покрывать всё пространство, а не его часть.
Видимо, ты всего этого не знаешь и думаешь, что ты гений и сам до всего догадаешься. Но это приведёт только к потере кучи времени. Не думаю, что ты что-то откроешь новое. Ты только пройдёшь по всем граблям, по которым проходят ленивцы, не читающие книг, и закончишь всё равно на книгах, которые уже кто-то написал давным давно.