Мне нужен кофе, наверное ...
Проблема заключалась в том, что имя моего прибора отличалось от имени параметра, которое я передавал своей тестовой функции, ie set_up_slack_client
vs slack_client
. Кажется, что pytest ищет приборы, названные точно так же, как параметр, а не только для переменных, объектов и т. Д. c в том же пространстве имен.
Работает этот код:
import os
import pytest
from api.slack import Slack #Slack is the custom class
@pytest.fixture(scope='module')
def slack_client(): #THIS IS WHAT CHANGED
print("---Creating default instance of Slack client class---")
BOT_O_AUTH_TOKEN = os.getenv("BOT_O_AUTH_TOKEN")
slack_client = Slack()
yield slack_client
def test_headers(slack_client):
headers_match = {"Authorization": "Bearer " + slack_client.bearer_token,
"content-type": slack_client.content_type}
assert slack_client.headers() == headers_match