ds_provider_mock_py_lib.dataset.mock¶
File: mock.py
Region: ds_provider_mock_py_lib/dataset
Mock read-only dataset for e2e testing with deterministic change batches.
The mock plays the role of a bronze-layer source. A full load emits the initial snapshot; every incremental load emits one change batch whose row-level composition is fully controlled by settings. Gold merge uses primary key plus row hash: insert is a new key, update is an existing key with changed values, and noop is an identical re-delivery.
- Follows
DATASET_CONTRACT.md. Field classification: - exposedid, name, description, version, settings, linked_service,
serializer, deserializer
internal : input, output, operation, checkpoint (base-class runtime fields)
Example
>>> from uuid import uuid4
>>> from ds_provider_mock_py_lib.dataset import MockDataset, MockDatasetSettings
>>> from ds_provider_mock_py_lib.linked_service import MockLinkedService, MockLinkedServiceSettings
>>> linked_service = MockLinkedService(
... id=uuid4(),
... name="mock-ls",
... version="1.0.0",
... settings=MockLinkedServiceSettings(),
... )
>>> dataset = MockDataset(
... id=uuid4(),
... name="mock-ds",
... version="1.0.0",
... linked_service=linked_service,
... settings=MockDatasetSettings(row_count=5),
... )
>>> linked_service.connect()
>>> dataset.read()
>>> len(dataset.output.index)
5
Attributes¶
Classes¶
Read-only tabular dataset that emits deterministic synthetic rows. |
Module Contents¶
- ds_provider_mock_py_lib.dataset.mock.logger¶
- class ds_provider_mock_py_lib.dataset.mock.MockDataset[source]¶
Bases:
ds_resource_plugin_py_lib.common.resource.dataset.TabularDataset[ds_provider_mock_py_lib.linked_service.mock.MockLinkedService,ds_provider_mock_py_lib.dataset.settings.MockDatasetSettings,ds_resource_plugin_py_lib.common.serde.serialize.PandasSerializer,ds_resource_plugin_py_lib.common.serde.deserialize.PandasDeserializer]Read-only tabular dataset that emits deterministic synthetic rows.
- linked_service: ds_provider_mock_py_lib.linked_service.mock.MockLinkedService¶
- serializer: ds_resource_plugin_py_lib.common.serde.serialize.PandasSerializer | None¶
- deserializer: ds_resource_plugin_py_lib.common.serde.deserialize.PandasDeserializer | None¶
- property supports_checkpoint: bool¶
Whether this dataset supports incremental loads via
self.checkpoint.- Returns:
Always
Truefor the mock provider.- Return type:
bool
- property type: ds_provider_mock_py_lib.enums.ResourceType¶
Get the type of the dataset.
- Returns:
ResourceType
- read() None[source]¶
Read the current mock batch into
self.output.An empty checkpoint performs a full load (batch 0). A populated incremental watermark reads the next change batch. A pagination cursor resumes an in-flight batch after failure.
- Raises:
ReadError – If the mock backend fails or settings are invalid for read.
ConnectionError – If dataset-level injection is configured as a connection error.