public void Test_TrimEmptyEndingComponentsOption() { Assert.AreEqual(DicomNameUtils.Normalize("Ab C", DicomNameUtils.NormalizeOptions.TrimEmptyEndingComponents), "Ab C"); Assert.AreEqual(DicomNameUtils.Normalize("Ab C^", DicomNameUtils.NormalizeOptions.TrimEmptyEndingComponents), "Ab C"); Assert.AreEqual(DicomNameUtils.Normalize("Ab C^ABC", DicomNameUtils.NormalizeOptions.TrimEmptyEndingComponents), "Ab C^ABC"); Assert.AreEqual(DicomNameUtils.Normalize("Ab C^ABC^^", DicomNameUtils.NormalizeOptions.TrimEmptyEndingComponents), "Ab C^ABC"); Assert.AreEqual(DicomNameUtils.Normalize("Ab C^ABC^ ^ ^ ", DicomNameUtils.NormalizeOptions.TrimEmptyEndingComponents), "Ab C^ABC"); }
public void Test_LookLikeSameNames() { Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva^Siva", "Selva^Siva"), "These are different. Should return false."); // Both names don't have ^ Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva Siva", "Selva Siva"), "Identical"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva Siva", "Selva SIVA"), "letter case"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva SIVA", "Selva Siva"), "letter case"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva Siva", " Selva Siva "), "Trailing/Leading Spaces"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames(" Selva Siva ", "Selva Siva"), "Trailing/Leading Spaces"); // Only one of the names has ^ Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva Siva", "Selva^Siva"), "One has ^"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva^Siva", "Selva Siva"), "One has ^"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva Siva", "Selva^SIVA"), "letter case"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva^SIVA", "Selva Siva"), "letter case"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva Siva", " Selva ^ Siva "), "Trailing/Leading Spaces"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames(" Selva ^ Siva ", "Selva Siva"), "Trailing/Leading Spaces"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva Siva", " Selva ^ Siva ^ ^ ^"), "Trailing Empty Components"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames(" Selva ^ Siva ^ ^ ^", "Selva Siva"), "Trailing Empty Components"); // Both names have ^ Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva^Siva", "Selva^SIVA"), "letter case"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva^SIVA", "Selva^Siva"), "letter case"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva^Siva", " Selva ^ Siva "), "Trailing/Leading Spaces"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames(" Selva ^ Siva ", "Selva^Siva"), "Trailing/Leading Spaces"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames("Selva^Siva", " Selva ^ Siva ^ ^ ^"), "Trailing Empty Components"); Assert.IsTrue(DicomNameUtils.LookLikeSameNames(" Selva ^ Siva ^ ^ ^", "Selva^Siva"), "Trailing Empty Components"); // Spaces in between... names are not the same Assert.IsFalse(DicomNameUtils.LookLikeSameNames("Selva Siva", "Selva Si va")); Assert.IsFalse(DicomNameUtils.LookLikeSameNames("Selva Siv a", "Selva Siva")); Assert.IsFalse(DicomNameUtils.LookLikeSameNames("Selva^Siva", "Selva Si va")); Assert.IsFalse(DicomNameUtils.LookLikeSameNames("Selva Si va", "Selva^Siva")); Assert.IsFalse(DicomNameUtils.LookLikeSameNames("Selva^Siva", "Selva^Si va")); Assert.IsFalse(DicomNameUtils.LookLikeSameNames("Selva^Si va", "Selva^Siva")); Assert.IsFalse(DicomNameUtils.LookLikeSameNames("Selva^Siva", "Selva^^Siva")); Assert.IsFalse(DicomNameUtils.LookLikeSameNames("Selva^Siva", "Selva^Siva^Jr")); }
public void Test_TrimSpacesOption() { Assert.AreEqual(DicomNameUtils.Normalize("Ab C", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C"); Assert.AreEqual(DicomNameUtils.Normalize("Ab C ", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C"); Assert.AreEqual(DicomNameUtils.Normalize("Ab C ", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C"); Assert.AreEqual(DicomNameUtils.Normalize(" Ab C ", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C"); Assert.AreEqual(DicomNameUtils.Normalize(" Ab C ", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C"); Assert.AreEqual(DicomNameUtils.Normalize("Ab C^Ab C", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C^Ab C"); Assert.AreEqual(DicomNameUtils.Normalize("Ab C ^Ab C ", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C^Ab C"); Assert.AreEqual(DicomNameUtils.Normalize("Ab C ^Ab C ", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C^Ab C"); Assert.AreEqual(DicomNameUtils.Normalize(" Ab C ^ Ab C ", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C^Ab C"); Assert.AreEqual(DicomNameUtils.Normalize(" Ab C ^ Ab C ", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C^Ab C"); Assert.AreEqual(DicomNameUtils.Normalize(" Ab C ^ Ab C ", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C^Ab C"); Assert.AreEqual(DicomNameUtils.Normalize("Ab C^Ab C ^ ^ ^ ", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C^Ab C^^^"); Assert.AreEqual(DicomNameUtils.Normalize("Ab C^Ab C ^ ^ ^ ", DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C^Ab C^^^"); }
private bool UpdateNameBasedOnTheStudy(DicomFile file) { bool updated = false; string orginalPatientsNameInFile = file.DataSet[DicomTags.PatientsName].ToString(); if (_theStudy == null) { return(false); } StudyComparer comparer = new StudyComparer(); ServerPartition partition = ServerPartitionMonitor.Instance.FindPartition(_theStudy.ServerPartitionKey); DifferenceCollection list = comparer.Compare(file, _theStudy, partition.GetComparisonOptions()); if (list.Count == 1) { ComparisionDifference different = list[0]; if (different.DicomTag.TagValue == DicomTags.PatientsName) { if (DicomNameUtils.LookLikeSameNames(orginalPatientsNameInFile, _theStudy.PatientsName)) { using (ServerCommandProcessor processor = new ServerCommandProcessor("Update Patient's Name")) { SetTagCommand command = new SetTagCommand(file, DicomTags.PatientsName, orginalPatientsNameInFile, _theStudy.PatientsName); processor.AddCommand(command); if (!processor.Execute()) { throw new ApplicationException(String.Format("AUTO-CORRECTION Failed: Unable to correct the patient's name in the image. Reason: {0}", processor.FailureReason), processor.FailureException); } updated = true; } } } } return(updated); }
/// <summary> /// Returns an acceptable name for the given name. /// </summary> /// <param name="originalName"></param> /// <returns></returns> static public string GetAcceptableName(string originalName) { return(DicomNameUtils.Normalize(originalName, DicomNameUtils.NormalizeOptions.TrimSpaces | DicomNameUtils.NormalizeOptions.TrimEmptyEndingComponents)); }
public void Test_CombinedOptions() { Assert.AreEqual(DicomNameUtils.Normalize(" Ab C ^ ABC ^ ^ ^ ", DicomNameUtils.NormalizeOptions.TrimEmptyEndingComponents | DicomNameUtils.NormalizeOptions.TrimSpaces), "Ab C^ABC"); }