Files
instructor/tests/test_patch.py
T
2024-02-14 17:37:31 -05:00

46 lines
1.0 KiB
Python

import functools
from openai import AsyncOpenAI, OpenAI
import instructor
from instructor.patch import OVERRIDE_DOCS, is_async
def test_patch_completes_successfully() -> None:
instructor.patch(OpenAI())
def test_apatch_completes_successfully() -> None:
instructor.apatch(AsyncOpenAI())
def test_is_async_returns_true_if_function_is_async() -> None:
async def async_function() -> None:
pass
assert is_async(async_function) is True
def test_is_async_returns_false_if_function_is_not_async() -> None:
def sync_function() -> None:
pass
assert is_async(sync_function) is False
def test_is_async_returns_true_if_wrapped_function_is_async() -> None:
async def async_function() -> None:
pass
@functools.wraps(async_function)
def wrapped_function() -> None:
pass
assert is_async(wrapped_function) is True
def test_override_docs() -> None:
assert (
"response_model" in OVERRIDE_DOCS
), "response_model should be in OVERRIDE_DOCS"