public void Get_Values_ObjectArray_Success(DicomElement element, object[] expected)
        {
            DicomDataset ds = new DicomDataset(element);

            object[] objects = ds.GetValues <object>(element.Tag);

            Assert.Equal(expected, objects);
        }
Beispiel #2
0
        public void Get_Values_Throw()
        {
            DicomDataset ds = new DicomDataset();

            var e = Record.Exception(() => ds.GetValues <uint>(ULTestData.Tag));

            Assert.IsType <DicomDataException>(e);
        }
Beispiel #3
0
        public void Get_Values_ObjectArray_Success(DicomElement element, object[] expected)
        {
            DicomDataset ds = new DicomDataset(new[] { element }, false);  // skip validation, since the intention of this test is retrieving various numbers of objects, even if they are violating VR constraints

            object[] objects = ds.GetValues <object>(element.Tag);

            Assert.Equal(expected, objects);
        }
Beispiel #4
0
        public void Add_OtherDoubleElementWithMultipleDoubles_Succeeds()
        {
            var tag     = DicomTag.DoubleFloatPixelData;
            var dataset = new DicomDataset();

            dataset.Add(tag, 3.45, 6.78, 9.01);
            Assert.IsType <DicomOtherDouble>(dataset.First(item => item.Tag.Equals(tag)));
            Assert.Equal(3, dataset.GetValues <double>(tag).Length);
        }
Beispiel #5
0
        public void Get_ArrayWhenTagExistsEmpty_ShouldReturnEmptyArray()
        {
            var tag = DicomTag.GridFrameOffsetVector;
            var ds  = new DicomDataset();

            ds.Add(tag, (string[])null);

            var array = ds.GetValues <string>(tag);

            Assert.Empty(array);
        }
Beispiel #6
0
        public void Add_LongTextElementWithEmptyValues_Succeeds()
        {
            var tag     = DicomTag.SelectorLTValue;
            var dataset = new DicomDataset();

            dataset.Add <string>(tag);
            Assert.IsType <DicomLongText>(dataset.First(item => item.Tag.Equals(tag)));

            var data = dataset.GetValues <string>(tag);

            Assert.Single(data, (item) => item == string.Empty);
        }
Beispiel #7
0
        public void Add_UnsignedShortElementWithEmptyValues_Succeeds()
        {
            var tag     = DicomTag.SamplesPerPixel;
            var dataset = new DicomDataset();

            dataset.Add <ushort>(tag);
            Assert.IsType <DicomUnsignedShort>(dataset.First(item => item.Tag.Equals(tag)));

            var data = dataset.GetValues <ushort>(tag);

            Assert.Empty(data);
        }
Beispiel #8
0
        public void Add_UniversalResourceElementWithEmptyValues_Succeeds()
        {
            var tag     = DicomTag.URNCodeValue;
            var dataset = new DicomDataset();

            dataset.Add <string>(tag);
            Assert.IsType <DicomUniversalResource>(dataset.First(item => item.Tag.Equals(tag)));

            var data = dataset.GetValues <string>(tag);

            Assert.Single(data, (item) => item == string.Empty);
        }
Beispiel #9
0
        public void Add_MultiVMStringTags_YieldsMultipleValues(DicomTag tag, string[] values, Type expectedType)
        {
            var dataset = new DicomDataset();

            dataset.Add(tag, values);

            Assert.IsType(expectedType, dataset.First(item => item.Tag.Equals(tag)));

            var data = dataset.GetValues <string>(tag);

            Assert.Equal(values.Length, data.Length);
            Assert.Equal(values.Last(), data.Last());
        }
Beispiel #10
0
        public void Add_UniversalResourceElementWithMultipleStrings_OnlyFirstValueIsUsed()
        {
            var tag     = DicomTag.URNCodeValue;
            var dataset = new DicomDataset();

            dataset.Add(tag, "a", "b", "c");
            Assert.IsType <DicomUniversalResource>(dataset.First(item => item.Tag.Equals(tag)));

            var data = dataset.GetValues <string>(tag);

            Assert.Single(data);
            Assert.Equal("a", data.First());
        }
Beispiel #11
0
        public void Add_PersonName_MultipleNames_YieldsMultipleValues()
        {
            var tag     = DicomTag.PerformingPhysicianName;
            var dataset = new DicomDataset();

            dataset.Add(
                tag,
                "Gustafsson^Anders^L",
                "Yates^Ian",
                "Desouky^Hesham",
                "Horn^Chris");

            var data = dataset.GetValues <string>(tag);

            Assert.Equal(4, data.Length);
            Assert.Equal("Desouky^Hesham", data[2]);
        }