|
from ragflow import RAGFlow, Chat |
|
|
|
from common import API_KEY, HOST_ADDRESS |
|
from test_sdkbase import TestSdk |
|
|
|
|
|
class TestChat(TestSdk): |
|
def test_create_chat_with_success(self): |
|
""" |
|
Test creating an chat with success |
|
""" |
|
rag = RAGFlow(API_KEY, HOST_ADDRESS) |
|
kb = rag.create_dataset(name="test_create_chat") |
|
chat = rag.create_chat("test_create", knowledgebases=[kb]) |
|
if isinstance(chat, Chat): |
|
assert chat.name == "test_create", "Name does not match." |
|
else: |
|
assert False, f"Failed to create chat, error: {chat}" |
|
|
|
def test_update_chat_with_success(self): |
|
""" |
|
Test updating an chat with success. |
|
""" |
|
rag = RAGFlow(API_KEY, HOST_ADDRESS) |
|
kb = rag.create_dataset(name="test_update_chat") |
|
chat = rag.create_chat("test_update", knowledgebases=[kb]) |
|
if isinstance(chat, Chat): |
|
assert chat.name == "test_update", "Name does not match." |
|
res=chat.update({"name":"new_chat"}) |
|
assert res is None, f"Failed to update chat, error: {res}" |
|
else: |
|
assert False, f"Failed to create chat, error: {chat}" |
|
|
|
def test_delete_chats_with_success(self): |
|
""" |
|
Test deleting an chat with success |
|
""" |
|
rag = RAGFlow(API_KEY, HOST_ADDRESS) |
|
kb = rag.create_dataset(name="test_delete_chat") |
|
chat = rag.create_chat("test_delete", knowledgebases=[kb]) |
|
if isinstance(chat, Chat): |
|
assert chat.name == "test_delete", "Name does not match." |
|
res = rag.delete_chats(ids=[chat.id]) |
|
assert res is None, f"Failed to delete chat, error: {res}" |
|
else: |
|
assert False, f"Failed to create chat, error: {chat}" |
|
|
|
def test_list_chats_with_success(self): |
|
""" |
|
Test listing chats with success |
|
""" |
|
rag = RAGFlow(API_KEY, HOST_ADDRESS) |
|
list_chats = rag.list_chats() |
|
assert len(list_chats) > 0, "Do not exist any chat" |
|
for chat in list_chats: |
|
assert isinstance(chat, Chat), "Existence type is not chat." |
|
|