summaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorHeiner Lohaus <hlohaus@users.noreply.github.com>2024-04-06 01:05:00 +0200
committerHeiner Lohaus <hlohaus@users.noreply.github.com>2024-04-06 01:05:00 +0200
commitd44b39b31c83c6a4bc636bea931275702c700feb (patch)
tree8967aa34d2e2f9fa7aa1d86131f524ddd3925ad8 /etc
parentAdd authless OpenaiChat (diff)
downloadgpt4free-d44b39b31c83c6a4bc636bea931275702c700feb.tar
gpt4free-d44b39b31c83c6a4bc636bea931275702c700feb.tar.gz
gpt4free-d44b39b31c83c6a4bc636bea931275702c700feb.tar.bz2
gpt4free-d44b39b31c83c6a4bc636bea931275702c700feb.tar.lz
gpt4free-d44b39b31c83c6a4bc636bea931275702c700feb.tar.xz
gpt4free-d44b39b31c83c6a4bc636bea931275702c700feb.tar.zst
gpt4free-d44b39b31c83c6a4bc636bea931275702c700feb.zip
Diffstat (limited to 'etc')
-rw-r--r--etc/unittest/__main__.py1
-rw-r--r--etc/unittest/integration.py25
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