diff options
Diffstat (limited to '')
-rw-r--r-- | etc/unittest/__main__.py | 1 | ||||
-rw-r--r-- | etc/unittest/integration.py | 25 |
2 files changed, 26 insertions, 0 deletions
diff --git a/etc/unittest/__main__.py b/etc/unittest/__main__.py index 06b2dff5..3a459dba 100644 --- a/etc/unittest/__main__.py +++ b/etc/unittest/__main__.py @@ -5,5 +5,6 @@ from .main import * from .model import * from .client import * from .include import * +from .integration import * unittest.main()
\ No newline at end of file diff --git a/etc/unittest/integration.py b/etc/unittest/integration.py new file mode 100644 index 00000000..808a8d1d --- /dev/null +++ b/etc/unittest/integration.py @@ -0,0 +1,25 @@ +import unittest +import json + +from g4f.client import Client, ChatCompletion +from g4f.Provider import Bing, OpenaiChat + +DEFAULT_MESSAGES = [{"role": "system", "content": 'Response in json, Example: {"success: True"}'}, + {"role": "user", "content": "Say success true in json"}] + +class TestProviderIntegration(unittest.TestCase): + + def test_bing(self): + client = Client(provider=Bing) + response = client.chat.completions.create(DEFAULT_MESSAGES, "", response_format={"type": "json_object"}) + self.assertIsInstance(response, ChatCompletion) + self.assertIn("success", json.loads(response.choices[0].message.content)) + + def test_openai(self): + client = Client(provider=OpenaiChat) + response = client.chat.completions.create(DEFAULT_MESSAGES, "", response_format={"type": "json_object"}) + self.assertIsInstance(response, ChatCompletion) + self.assertIn("success", json.loads(response.choices[0].message.content)) + +if __name__ == '__main__': + unittest.main()
\ No newline at end of file |