19 lines
625 B
Python
19 lines
625 B
Python
import pytest
|
|
from exchange.invalid_choice_error import InvalidChoiceError
|
|
from exchange.providers import get_provider
|
|
|
|
|
|
def test_get_provider_valid():
|
|
provider_name = "openai"
|
|
provider = get_provider(provider_name)
|
|
assert provider.__name__ == "OpenAiProvider"
|
|
|
|
|
|
def test_get_provider_throw_error_for_unknown_provider():
|
|
with pytest.raises(InvalidChoiceError) as error:
|
|
get_provider("nonexistent")
|
|
assert error.value.attribute_name == "provider"
|
|
assert error.value.attribute_value == "nonexistent"
|
|
assert "openai" in error.value.available_values
|
|
assert "openai" in error.value.message
|