Пример #1
0
 def test_constructor_no_default(self):
     stream = odil.iostream(BytesIO())
     reader = odil.Reader(stream, odil.registry.ExplicitVRBigEndian, True)
     self.assertEqual(reader.transfer_syntax.encode(),
                      odil.registry.ExplicitVRBigEndian)
     self.assertEqual(reader.byte_ordering, odil.ByteOrdering.BigEndian)
     self.assertTrue(reader.explicit_vr)
     self.assertTrue(reader.keep_group_length)
Пример #2
0
 def test_constructor(self):
     stream = odil.iostream(BytesIO())
     reader = odil.Reader(stream, odil.registry.ImplicitVRLittleEndian)
     self.assertEqual(reader.transfer_syntax,
                      odil.registry.ImplicitVRLittleEndian)
     self.assertEqual(reader.byte_ordering, odil.ByteOrdering.LittleEndian)
     self.assertFalse(reader.explicit_vr)
     self.assertFalse(reader.keep_group_length)
Пример #3
0
 def test_read_data_set(self):
     string_io = BytesIO(b"\x10\x00\x10\x00PN\x07\x00Foo^Bar"
                         b"\x10\x00\x20\x00CS\x03\x00FOO")
     stream = odil.iostream(string_io)
     reader = odil.Reader(stream, odil.registry.ExplicitVRLittleEndian)
     data_set = reader.read_data_set()
     self.assertEqual(data_set.size(), 2)
     self.assertSequenceEqual(data_set.as_string("PatientName"),
                              ["Foo^Bar"])
     self.assertSequenceEqual(data_set.as_string("PatientID"), ["FOO"])
Пример #4
0
 def test_read_data_set_halt_condition(self):
     string_io = BytesIO(b"\x10\x00\x10\x00"
                         b"PN"
                         b"\x08\x00"
                         b"Foo^Bar "
                         b"\x10\x00\x20\x00"
                         b"LO"
                         b"\x04\x00"
                         b"FOO ")
     stream = odil.iostream(string_io)
     reader = odil.Reader(stream, odil.registry.ExplicitVRLittleEndian)
     data_set = reader.read_data_set(lambda x: x == odil.registry.PatientID)
     self.assertEqual(data_set.size(), 1)
     self.assertSequenceEqual(data_set.as_string("PatientName"),
                              ["Foo^Bar"])
Пример #5
0
 def test_read_element(self):
     string_io = BytesIO(b"PN\x08\x00Foo^Bar ")
     stream = odil.iostream(string_io)
     reader = odil.Reader(stream, odil.registry.ExplicitVRLittleEndian)
     self.assertEqual(reader.read_element(odil.registry.PatientName),
                      odil.Element(["Foo^Bar"], odil.VR.PN))
Пример #6
0
 def test_read_length(self):
     string_io = BytesIO(b"\x34\x12")
     stream = odil.iostream(string_io)
     reader = odil.Reader(stream, odil.registry.ExplicitVRLittleEndian)
     self.assertEqual(reader.read_length(odil.VR.CS), 0x1234)
Пример #7
0
 def test_read_tag(self):
     string_io = BytesIO(b"\x10\x00\x20\x00")
     stream = odil.iostream(string_io)
     reader = odil.Reader(stream, odil.registry.ExplicitVRLittleEndian)
     self.assertEqual(reader.read_tag(), odil.registry.PatientID)