Test: Add SDK API tests for chat assistant management and improve con… (#8131)

### What problem does this PR solve?

- Implement new SDK API test cases for chat assistant CRUD operations
- Enhance HTTP API concurrent tests to use as_completed for better
reliability

### Type of change

- [x] Add test cases
- [x] Refactoring
This commit is contained in:
Liu An
2025-06-09 13:30:12 +08:00
committed by GitHub
parent 968ffc7ef3
commit 4649accd54
9 changed files with 854 additions and 10 deletions

View File

@ -90,6 +90,14 @@ def clear_datasets(request: FixtureRequest, client: RAGFlow):
request.addfinalizer(cleanup)
@pytest.fixture(scope="function")
def clear_chat_assistants(request: FixtureRequest, client: RAGFlow):
def cleanup():
client.delete_chats(ids=None)
request.addfinalizer(cleanup)
@pytest.fixture(scope="class")
def add_dataset(request: FixtureRequest, client: RAGFlow):
def cleanup():
@ -137,3 +145,22 @@ def add_chunks(request: FixtureRequest, add_document: tuple[DataSet, Document])
request.addfinalizer(cleanup)
return dataset, document, chunks
@pytest.fixture(scope="class")
def add_chat_assistants(request, client, add_document):
def cleanup():
client.delete_chats(ids=None)
request.addfinalizer(cleanup)
dataset, document = add_document
dataset.async_parse_documents([document.id])
condition(dataset)
chat_assistants = []
for i in range(5):
chat_assistant = client.create_chat(name=f"test_chat_assistant_{i}", dataset_ids=[dataset.id])
chat_assistants.append(chat_assistant)
return dataset, document, chat_assistants