Skip to content
Snippets Groups Projects
Commit dbd982a2 authored by Alexander Schlemmer's avatar Alexander Schlemmer
Browse files

TST: added failing test for transformer feature

parent 7218f73c
Branches
Tags
2 merge requests!160STY: styling,!126Transformers
#!/usr/bin/env python3
# encoding: utf-8
#
# This file is a part of the CaosDB Project.
#
# Copyright (C) 2023 Research Group Biomedical Physics,
# Max-Planck-Institute for Dynamics and Self-Organization Göttingen
# Alexander Schlemmer <alexander.schlemmer@ds.mpg.de>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
"""
Unit test functions for the transformer feature of the scanner.
Currently, this is under development.
See: https://gitlab.indiscale.com/caosdb/src/caosdb-crawler/-/issues/107
"""
from functools import partial
from pathlib import Path
from tempfile import NamedTemporaryFile
from unittest.mock import MagicMock, Mock, patch
import caosdb as db
import pytest
import yaml
from caoscrawler.scanner import (create_converter_registry, load_definition,
scan_directory, scan_structure_elements)
from caoscrawler.structure_elements import (DictElement, DictListElement,
DictTextElement, File)
from pytest import raises
from utils import dircheckstr as dircheck_base
UNITTESTDIR = Path(__file__).parent
dircheckstr = partial(dircheck_base, UNITTESTDIR / "test_directories" / "examples_article")
def test_simple_transformer():
"""
Test the correct list of returned records by the scanner using the
scifolder example from the article.
"""
records = scan_directory(UNITTESTDIR / "test_directories" / "test_transformers",
UNITTESTDIR / "test_directories" / "test_transformers" /
"cfood.yml")
for r in records:
assert r.get_property("Day") is not None
assert r.get_property("DayShort") is not None
assert r.get_property("Day").value != "$day_long"
assert r.get_property("DayShort").value != "$day_short"
# breakpoint()
assert False
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment