refactor: use EnumText for dataset and replace string literals 4 (#33606)

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
This commit is contained in:
tmimmanuel
2026-03-18 00:18:08 +00:00
committed by GitHub
parent 0bc6c3a73e
commit 3870b2ad2d
69 changed files with 1027 additions and 849 deletions

View File

@ -30,6 +30,7 @@ from controllers.console.datasets.error import (
InvalidActionError,
InvalidMetadataError,
)
from models.enums import DataSourceType, IndexingStatus
def unwrap(func):
@ -62,8 +63,8 @@ def document():
return MagicMock(
id="doc-1",
tenant_id="tenant-1",
indexing_status="indexing",
data_source_type="upload_file",
indexing_status=IndexingStatus.INDEXING,
data_source_type=DataSourceType.UPLOAD_FILE,
data_source_info_dict={"upload_file_id": "file-1"},
doc_form="text",
archived=False,
@ -407,7 +408,7 @@ class TestDocumentProcessingApi:
api = DocumentProcessingApi()
method = unwrap(api.patch)
doc = MagicMock(indexing_status="error", is_paused=True)
doc = MagicMock(indexing_status=IndexingStatus.ERROR, is_paused=True)
with (
app.test_request_context("/"),
@ -425,7 +426,7 @@ class TestDocumentProcessingApi:
api = DocumentProcessingApi()
method = unwrap(api.patch)
document = MagicMock(indexing_status="paused", is_paused=True)
document = MagicMock(indexing_status=IndexingStatus.PAUSED, is_paused=True)
with (
app.test_request_context("/"),
@ -461,7 +462,7 @@ class TestDocumentProcessingApi:
api = DocumentProcessingApi()
method = unwrap(api.patch)
document = MagicMock(indexing_status="completed")
document = MagicMock(indexing_status=IndexingStatus.COMPLETED)
with app.test_request_context("/"), patch.object(api, "get_document", return_value=document):
with pytest.raises(InvalidActionError):
@ -630,7 +631,7 @@ class TestDocumentRetryApi:
payload = {"document_ids": ["doc-1"]}
document = MagicMock(indexing_status="indexing", archived=False)
document = MagicMock(indexing_status=IndexingStatus.INDEXING, archived=False)
with (
app.test_request_context("/", json=payload),
@ -659,7 +660,7 @@ class TestDocumentRetryApi:
payload = {"document_ids": ["doc-1"]}
document = MagicMock(indexing_status="completed", archived=False)
document = MagicMock(indexing_status=IndexingStatus.COMPLETED, archived=False)
with (
app.test_request_context("/", json=payload),
@ -817,8 +818,8 @@ class TestDocumentIndexingEstimateApi:
method = unwrap(api.get)
document = MagicMock(
indexing_status="indexing",
data_source_type="upload_file",
indexing_status=IndexingStatus.INDEXING,
data_source_type=DataSourceType.UPLOAD_FILE,
data_source_info_dict={"upload_file_id": "file-1"},
tenant_id="tenant-1",
doc_form="text",
@ -844,8 +845,8 @@ class TestDocumentIndexingEstimateApi:
method = unwrap(api.get)
document = MagicMock(
indexing_status="indexing",
data_source_type="upload_file",
indexing_status=IndexingStatus.INDEXING,
data_source_type=DataSourceType.UPLOAD_FILE,
data_source_info_dict={"upload_file_id": "file-1"},
tenant_id="tenant-1",
doc_form="text",
@ -882,7 +883,7 @@ class TestDocumentIndexingEstimateApi:
api = DocumentIndexingEstimateApi()
method = unwrap(api.get)
document = MagicMock(indexing_status="completed")
document = MagicMock(indexing_status=IndexingStatus.COMPLETED)
with app.test_request_context("/"), patch.object(api, "get_document", return_value=document):
with pytest.raises(DocumentAlreadyFinishedError):
@ -963,8 +964,8 @@ class TestDocumentBatchIndexingEstimateApi:
method = unwrap(api.get)
doc = MagicMock(
indexing_status="indexing",
data_source_type="website_crawl",
indexing_status=IndexingStatus.INDEXING,
data_source_type=DataSourceType.WEBSITE_CRAWL,
data_source_info_dict={
"provider": "firecrawl",
"job_id": "j1",
@ -992,8 +993,8 @@ class TestDocumentBatchIndexingEstimateApi:
method = unwrap(api.get)
doc = MagicMock(
indexing_status="indexing",
data_source_type="notion_import",
indexing_status=IndexingStatus.INDEXING,
data_source_type=DataSourceType.NOTION_IMPORT,
data_source_info_dict={
"credential_id": "c1",
"notion_workspace_id": "w1",
@ -1020,7 +1021,7 @@ class TestDocumentBatchIndexingEstimateApi:
method = unwrap(api.get)
document = MagicMock(
indexing_status="indexing",
indexing_status=IndexingStatus.INDEXING,
data_source_type="unknown",
data_source_info_dict={},
doc_form="text",
@ -1130,7 +1131,7 @@ class TestDocumentProcessingApiResume:
api = DocumentProcessingApi()
method = unwrap(api.patch)
document = MagicMock(indexing_status="completed", is_paused=False)
document = MagicMock(indexing_status=IndexingStatus.COMPLETED, is_paused=False)
with app.test_request_context("/"), patch.object(api, "get_document", return_value=document):
with pytest.raises(InvalidActionError):
@ -1348,8 +1349,8 @@ class TestDocumentIndexingEdgeCases:
method = unwrap(api.get)
document = MagicMock(
indexing_status="indexing",
data_source_type="upload_file",
indexing_status=IndexingStatus.INDEXING,
data_source_type=DataSourceType.UPLOAD_FILE,
data_source_info_dict={"upload_file_id": "file-1"},
tenant_id="tenant-1",
doc_form="text",

View File

@ -32,6 +32,7 @@ from controllers.service_api.dataset.segment import (
SegmentListQuery,
)
from models.dataset import ChildChunk, Dataset, Document, DocumentSegment
from models.enums import IndexingStatus
from services.dataset_service import DocumentService, SegmentService
@ -657,12 +658,27 @@ class TestSegmentIndexingRequirements:
dataset.indexing_technique = technique
assert dataset.indexing_technique in ["high_quality", "economy"]
@pytest.mark.parametrize("status", ["waiting", "parsing", "indexing", "completed", "error"])
@pytest.mark.parametrize(
"status",
[
IndexingStatus.WAITING,
IndexingStatus.PARSING,
IndexingStatus.INDEXING,
IndexingStatus.COMPLETED,
IndexingStatus.ERROR,
],
)
def test_valid_indexing_statuses(self, status):
"""Test valid document indexing statuses."""
document = Mock(spec=Document)
document.indexing_status = status
assert document.indexing_status in ["waiting", "parsing", "indexing", "completed", "error"]
assert document.indexing_status in {
IndexingStatus.WAITING,
IndexingStatus.PARSING,
IndexingStatus.INDEXING,
IndexingStatus.COMPLETED,
IndexingStatus.ERROR,
}
def test_completed_status_required_for_segments(self):
"""Test that completed status is required for segment operations."""

View File

@ -35,6 +35,7 @@ from controllers.service_api.dataset.document import (
InvalidMetadataError,
)
from controllers.service_api.dataset.error import ArchivedDocumentImmutableError
from models.enums import IndexingStatus
from services.dataset_service import DocumentService
from services.entities.knowledge_entities.knowledge_entities import ProcessRule, RetrievalModel
@ -244,23 +245,26 @@ class TestDocumentService:
class TestDocumentIndexingStatus:
"""Test document indexing status values."""
_VALID_STATUSES = {
IndexingStatus.WAITING,
IndexingStatus.PARSING,
IndexingStatus.INDEXING,
IndexingStatus.COMPLETED,
IndexingStatus.ERROR,
IndexingStatus.PAUSED,
}
def test_completed_status(self):
"""Test completed status."""
status = "completed"
valid_statuses = ["waiting", "parsing", "indexing", "completed", "error", "paused"]
assert status in valid_statuses
assert IndexingStatus.COMPLETED in self._VALID_STATUSES
def test_indexing_status(self):
"""Test indexing status."""
status = "indexing"
valid_statuses = ["waiting", "parsing", "indexing", "completed", "error", "paused"]
assert status in valid_statuses
assert IndexingStatus.INDEXING in self._VALID_STATUSES
def test_error_status(self):
"""Test error status."""
status = "error"
valid_statuses = ["waiting", "parsing", "indexing", "completed", "error", "paused"]
assert status in valid_statuses
assert IndexingStatus.ERROR in self._VALID_STATUSES
class TestDocumentDocForm: