Files
zeekay dda5b2a367 restore the tree
The previous commit was meant to remove .github/workflows and removed
every tracked path instead — 892 files, the whole repo. This puts back
the 874 that were never in scope; the eighteen workflow files stay gone,
for the reasons that commit gives.

Content is byte-identical to 9d2aec9 outside .github/workflows.
2026-08-13 23:27:57 -07:00

50 lines
1.4 KiB
Python

"""Unit Tests - Folder Datamodule."""
# Copyright (C) 2023-2024 Intel Corporation
# SPDX-License-Identifier: Apache-2.0
from pathlib import Path
import pytest
from torchvision.transforms.v2 import Resize
from anomalib.data import Folder
from tests.unit.data.datamodule.base.image import _TestAnomalibImageDatamodule
class TestFolder(_TestAnomalibImageDatamodule):
"""Folder Datamodule Unit Tests.
All of the folder datamodule tests are placed in ``TestFolder`` class.
"""
@pytest.fixture()
@staticmethod
def datamodule(dataset_path: Path) -> Folder:
"""Create and return a Folder datamodule."""
# expects a relative directory to the root.
mask_dir = "ground_truth/bad"
# Create and prepare the dataset
_datamodule = Folder(
name="dummy",
root=dataset_path / "mvtecad" / "dummy",
normal_dir="train/good",
abnormal_dir="test/bad",
normal_test_dir="test/good",
mask_dir=mask_dir,
train_batch_size=4,
eval_batch_size=4,
num_workers=0,
augmentations=Resize((256, 256)),
)
_datamodule.setup()
return _datamodule
@pytest.fixture()
@staticmethod
def fxt_data_config_path() -> str:
"""Return the path to the test data config."""
return "examples/configs/data/folder.yaml"