Source code for esrf_ontologies.tests.test_multi_technique_metadata

from ..technique import BLISS_SCANINFO_CATEGORY
from ..technique import get_ontology_version
from ..technique import get_ontology_version_number
from ..technique import get_technique_metadata


[docs] def test_get_dataset_metadata(): metadata = get_technique_metadata("XRF", "XAS") ontology_version = get_ontology_version_number(metadata) dataset_metadata = { "definition": "XAS XRF", "technique_pid": " ".join( [ "https://w3id.org/PaN/ESRFET#XAS", "https://w3id.org/PaN/ESRFET#XRF", ] ), "technique_pid_esrfet_version": ontology_version, } assert metadata.get_dataset_metadata() == dataset_metadata
[docs] def test_fill_dataset_metadata(): metadata = get_technique_metadata("XRF", "XAS") ontology_version = get_ontology_version_number(metadata) dataset_metadata = { "definition": "XAS XRF", "technique_pid": " ".join( [ "https://w3id.org/PaN/ESRFET#XAS", "https://w3id.org/PaN/ESRFET#XRF", ] ), "technique_pid_esrfet_version": ontology_version, } dataset = dict(dataset_metadata) metadata.fill_dataset_metadata(dataset) assert dataset == dataset_metadata dataset = { "definition": "XRF", "technique_pid": "https://w3id.org/PaN/ESRFET#XRF", } metadata.fill_dataset_metadata(dataset) assert dataset == dataset_metadata dataset = {} metadata.fill_dataset_metadata(dataset) assert dataset == dataset_metadata dataset = { "definition": "XRD", "technique_pid": "https://w3id.org/PaN/ESRFET#XRD", "technique_pid_esrfet_version": ontology_version, } dataset_metadata = { "definition": "XAS XRD XRF", "technique_pid": " ".join( [ "https://w3id.org/PaN/ESRFET#XAS", "https://w3id.org/PaN/ESRFET#XRD", "https://w3id.org/PaN/ESRFET#XRF", ] ), "technique_pid_esrfet_version": ontology_version, } metadata.fill_dataset_metadata(dataset) assert dataset == dataset_metadata
[docs] def test_get_scan_info(): metadata = get_technique_metadata("XRF", "XAS") ontology_version = get_ontology_version(metadata) scan_info = { "scan_meta_categories": [BLISS_SCANINFO_CATEGORY], BLISS_SCANINFO_CATEGORY: { "identifier_technique_1": f"https://w3id.org/PaN/ESRFET/{ontology_version}/#XAS", "identifier_technique_1@type": "W3ID", "identifier_technique_2": f"https://w3id.org/PaN/ESRFET/{ontology_version}/#XRF", "identifier_technique_2@type": "W3ID", }, } assert metadata.get_scan_info() == scan_info assert metadata.get_scan_metadata() == scan_info[BLISS_SCANINFO_CATEGORY]
[docs] def test_fill_scan_info(): metadata = get_technique_metadata("XRF", "XAS") ontology_version = get_ontology_version(metadata) scan_info = { "scan_meta_categories": ["technique", BLISS_SCANINFO_CATEGORY], BLISS_SCANINFO_CATEGORY: { "identifier_technique_1": f"https://w3id.org/PaN/ESRFET/{ontology_version}/#XAS", "identifier_technique_1@type": "W3ID", "identifier_technique_2": f"https://w3id.org/PaN/ESRFET/{ontology_version}/#XRF", "identifier_technique_2@type": "W3ID", }, } info = { "scan_meta_categories": ["technique"], BLISS_SCANINFO_CATEGORY: None, } metadata.fill_scan_info(info) assert info == scan_info
[docs] def test_double_technique_metadata(): metadata = get_technique_metadata("XRF", "XAS", "XRF", "XAS") ontology_version = get_ontology_version(metadata) ontology_version_number = get_ontology_version_number(metadata) assert len(metadata.techniques) == 2 dataset_metadata = { "definition": "XAS XRF", "technique_pid": " ".join( [ "https://w3id.org/PaN/ESRFET#XAS", "https://w3id.org/PaN/ESRFET#XRF", ] ), "technique_pid_esrfet_version": ontology_version_number, } assert metadata.get_dataset_metadata() == dataset_metadata scan_info = { "scan_meta_categories": [BLISS_SCANINFO_CATEGORY], BLISS_SCANINFO_CATEGORY: { "identifier_technique_1": f"https://w3id.org/PaN/ESRFET/{ontology_version}/#XAS", "identifier_technique_1@type": "W3ID", "identifier_technique_2": f"https://w3id.org/PaN/ESRFET/{ontology_version}/#XRF", "identifier_technique_2@type": "W3ID", }, } assert metadata.get_scan_info() == scan_info assert metadata.get_scan_metadata() == scan_info[BLISS_SCANINFO_CATEGORY]
[docs] def test_multiple_identifiers_with_iri(): metadata = get_technique_metadata( "XRF", "https://w3id.org/PaN/ESRFET#XAS", ) dataset = metadata.get_dataset_metadata() assert set(dataset["definition"].split()) == {"XAS", "XRF"} assert set(dataset["technique_pid"].split()) == { "https://w3id.org/PaN/ESRFET#XAS", "https://w3id.org/PaN/ESRFET#XRF", }
[docs] def test_multiple_identifiers_with_versioned_iri(): version = get_ontology_version() metadata = get_technique_metadata( "XRF", f"https://w3id.org/PaN/ESRFET/{version}/#XAS", ) dataset = metadata.get_dataset_metadata() assert set(dataset["definition"].split()) == {"XAS", "XRF"} assert set(dataset["technique_pid"].split()) == { "https://w3id.org/PaN/ESRFET#XAS", "https://w3id.org/PaN/ESRFET#XRF", }