@@ -551,6 +551,26 @@ def test_parse_v0_ome_metadata_bleach_cycle_appends_background() -> None:
551551 assert md ["name" ] == "CD4_background"
552552
553553
554+ def test_parse_v0_ome_metadata_handles_unknown_imagetypes () -> None :
555+ ome = OME (
556+ structured_annotations = StructuredAnnotations (
557+ map_annotations = [
558+ MapAnnotation (
559+ value = {
560+ "MICS cycle type" : "NOT A VALID TYPE" ,
561+ }
562+ )
563+ ]
564+ ),
565+ screens = [Screen (reagents = [Reagent (name = "CD4__RPA-T4" )])],
566+ )
567+
568+ md = _parse_v0_ome_metadata (ome )
569+
570+ # Unknown types should just be passed through
571+ assert md ["imagetype" ] == "NOT A VALID TYPE"
572+
573+
554574def test_parse_v1_ome_metadata_basic_extraction_and_conversions () -> None :
555575 ome = OME (
556576 structured_annotations = StructuredAnnotations (
@@ -605,6 +625,26 @@ def test_parse_v1_ome_metadata_invalid_numerics_become_none() -> None:
605625 assert md ["roi" ] is None
606626
607627
628+ def test_parse_v1_ome_metadata_handles_unknown_imagetypes () -> None :
629+ ome = OME (
630+ structured_annotations = StructuredAnnotations (
631+ map_annotations = [
632+ MapAnnotation (
633+ value = {
634+ "ScanType" : "NOT A VALID TYPE" ,
635+ }
636+ )
637+ ]
638+ ),
639+ screens = [Screen (reagents = [Reagent (name = "CD4__RPA-T4" )])],
640+ )
641+
642+ md = _parse_v1_ome_metadata (ome )
643+
644+ # Unknown types should just be passed through
645+ assert md ["imagetype" ] == "NOT A VALID TYPE"
646+
647+
608648def make_ome_with_version (version_value : str , extra_ma : dict [str , Any ] | None = None ) -> OME :
609649 base = {"SoftwareVersion" : version_value }
610650 if extra_ma :
0 commit comments