| 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." | |