|
from ragflow import RAGFlow, DataSet
|
|
|
|
from common import API_KEY, HOST_ADDRESS
|
|
from test_sdkbase import TestSdk
|
|
|
|
|
|
class TestDataset(TestSdk):
|
|
def test_create_dataset_with_success(self):
|
|
"""
|
|
Test creating a dataset with success
|
|
"""
|
|
rag = RAGFlow(API_KEY, HOST_ADDRESS)
|
|
ds = rag.create_dataset("God")
|
|
if isinstance(ds, DataSet):
|
|
assert ds.name == "God", "Name does not match."
|
|
else:
|
|
assert False, f"Failed to create dataset, error: {ds}"
|
|
|
|
def test_update_dataset_with_success(self):
|
|
"""
|
|
Test updating a dataset with success.
|
|
"""
|
|
rag = RAGFlow(API_KEY, HOST_ADDRESS)
|
|
ds = rag.create_dataset("ABC")
|
|
if isinstance(ds, DataSet):
|
|
assert ds.name == "ABC", "Name does not match."
|
|
ds.name = 'DEF'
|
|
res = ds.save()
|
|
assert res is True, f"Failed to update dataset, error: {res}"
|
|
else:
|
|
assert False, f"Failed to create dataset, error: {ds}"
|
|
|
|
def test_delete_dataset_with_success(self):
|
|
"""
|
|
Test deleting a dataset with success
|
|
"""
|
|
rag = RAGFlow(API_KEY, HOST_ADDRESS)
|
|
ds = rag.create_dataset("MA")
|
|
if isinstance(ds, DataSet):
|
|
assert ds.name == "MA", "Name does not match."
|
|
res = ds.delete()
|
|
assert res is True, f"Failed to delete dataset, error: {res}"
|
|
else:
|
|
assert False, f"Failed to create dataset, error: {ds}"
|
|
|
|
def test_list_datasets_with_success(self):
|
|
"""
|
|
Test listing datasets with success
|
|
"""
|
|
rag = RAGFlow(API_KEY, HOST_ADDRESS)
|
|
list_datasets = rag.list_datasets()
|
|
assert len(list_datasets) > 0, "Do not exist any dataset"
|
|
for ds in list_datasets:
|
|
assert isinstance(ds, DataSet), "Existence type is not dataset."
|
|
|
|
def test_get_detail_dataset_with_success(self):
|
|
"""
|
|
Test getting a dataset's detail with success
|
|
"""
|
|
rag = RAGFlow(API_KEY, HOST_ADDRESS)
|
|
ds = rag.get_dataset(name="God")
|
|
assert isinstance(ds, DataSet), f"Failed to get dataset, error: {ds}."
|
|
assert ds.name == "God", "Name does not match"
|
|
|