Запятые и таплы
Долго искал классическую и глупую ошибку. Обстановка такая:
class TestView(View):
def __init__(self, storage_arg: Storage):
self.storage = storage_arg,
...
def get_item_name(id):
...
return self.storage.name(id)
self.storage внезапно оказывается tuple<Storage>, хотя storage_arg типа Storage.
Легко догадаться, что проблема в лишней запятой после storage_arg. В питоне код 1, создаст тапл из одного элемента.
Установил расширение для flake8, чтобы больше на таком не попадаться.