kopia lustrzana https://github.com/gd3kr/BlenderGPT
41 wiersze
1.1 KiB
Python
41 wiersze
1.1 KiB
Python
import pickle
|
|
|
|
import pytest
|
|
|
|
import openai
|
|
|
|
EXCEPTION_TEST_CASES = [
|
|
openai.InvalidRequestError(
|
|
"message",
|
|
"param",
|
|
code=400,
|
|
http_body={"test": "test1"},
|
|
http_status="fail",
|
|
json_body={"text": "iono some text"},
|
|
headers={"request-id": "asasd"},
|
|
),
|
|
openai.error.AuthenticationError(),
|
|
openai.error.PermissionError(),
|
|
openai.error.RateLimitError(),
|
|
openai.error.ServiceUnavailableError(),
|
|
openai.error.SignatureVerificationError("message", "sig_header?"),
|
|
openai.error.APIConnectionError("message!", should_retry=True),
|
|
openai.error.TryAgain(),
|
|
openai.error.Timeout(),
|
|
openai.error.APIError(
|
|
message="message",
|
|
code=400,
|
|
http_body={"test": "test1"},
|
|
http_status="fail",
|
|
json_body={"text": "iono some text"},
|
|
headers={"request-id": "asasd"},
|
|
),
|
|
openai.error.OpenAIError(),
|
|
]
|
|
|
|
|
|
class TestExceptions:
|
|
@pytest.mark.parametrize("error", EXCEPTION_TEST_CASES)
|
|
def test_exceptions_are_pickleable(self, error) -> None:
|
|
assert error.__repr__() == pickle.loads(pickle.dumps(error)).__repr__()
|