/// <string>Replaces the content of a UID with a random one</string> /// <param name="dataset">Reference to the dataset</param> /// <param name="item"></param> private void ReplaceUID(DicomDataset dataset, DicomItem item) { if (!(item is DicomElement)) { return; } string rep; DicomUID uid; var old = ((DicomElement)item).Get <string>(); if (ReplacedUIDs.ContainsKey(old)) { rep = ReplacedUIDs[old]; uid = new DicomUID(rep, "Anonymized UID", DicomUidType.Unknown); } else { uid = DicomUIDGenerator.GenerateDerivedFromUUID(); rep = uid.UID; ReplacedUIDs[old] = rep; } var newItem = new DicomUniqueIdentifier(item.Tag, uid); dataset.AddOrUpdate(newItem); }
public void DicomUniqueIdentifier_UidNotTransferSyntax_Throws(DicomUID uid) { var tag = DicomTag.EncryptedContentTransferSyntaxUID; var ui = new DicomUniqueIdentifier(tag, uid); var exception = Record.Exception(() => ui.Get <DicomTransferSyntax>(0)); Assert.IsType <DicomDataException>(exception); }
public void DicomUniqueIdentifier_GetKnownTransferSyntax_ReturnsFullField(DicomUID uid, DicomTransferSyntax expected) { var tag = DicomTag.ReferencedTransferSyntaxUIDInFile; var ui = new DicomUniqueIdentifier(tag, uid); var actual = ui.Get <DicomTransferSyntax>(0); Assert.Equal(expected.UID, actual.UID); Assert.Equal(expected.Endian, actual.Endian); Assert.Equal(expected.LossyCompressionMethod, actual.LossyCompressionMethod); }
public void DicomUniqueIdentifier_UidTransferSyntax_DoesNotThrow(DicomUID expected) { var tag = DicomTag.EncryptedContentTransferSyntaxUID; var ui = new DicomUniqueIdentifier(tag, expected); DicomUID actual = null; var exception = Record.Exception(() => actual = ui.Get <DicomTransferSyntax>(0).UID); Assert.Null(exception); Assert.Equal(expected, actual); }