diff --git a/Adaptation/.editorconfig b/Adaptation/.editorconfig index d6755a0..b22ed15 100644 --- a/Adaptation/.editorconfig +++ b/Adaptation/.editorconfig @@ -122,6 +122,7 @@ dotnet_diagnostic.IDE0290.severity = none # Use primary constructor [Distance]cs dotnet_diagnostic.IDE0300.severity = none # IDE0300: Collection initialization can be simplified dotnet_diagnostic.IDE0301.severity = none #IDE0301: Collection initialization can be simplified dotnet_diagnostic.IDE0305.severity = none # IDE0305: Collection initialization can be simplified +dotnet_diagnostic.MSTEST0037.severity = error # MSTEST0037: Use proper 'Assert' methods dotnet_diagnostic.SYSLIB1045.severity = none # SYSLIB1045: diagnostics for regex source generation dotnet_naming_rule.abstract_method_should_be_pascal_case.severity = warning dotnet_naming_rule.abstract_method_should_be_pascal_case.style = pascal_case diff --git a/Adaptation/FileHandlers/RsM/ProcessData.cs b/Adaptation/FileHandlers/RsM/ProcessData.cs index ce46b52..1eb5c03 100644 --- a/Adaptation/FileHandlers/RsM/ProcessData.cs +++ b/Adaptation/FileHandlers/RsM/ProcessData.cs @@ -80,9 +80,13 @@ public class ProcessData : IProcessData if (description.Test != (int)tests[i]) throw new Exception(); } + FileInfo fileInfo = new($"{logistics.ReportFullPath}.descriptions.json"); List fileReadDescriptions = (from l in descriptions select (Description)l).ToList(); string json = JsonSerializer.Serialize(fileReadDescriptions, fileReadDescriptions.GetType()); - JsonElement[] jsonElements = JsonSerializer.Deserialize(json); + File.WriteAllText(fileInfo.FullName, json); + File.SetLastWriteTime(fileInfo.FullName, logistics.DateTimeFromSequence); + fileInfoCollection.Add(fileInfo); + JsonElement[] jsonElements = JsonSerializer.Deserialize(json) ?? throw new Exception(); results = new Tuple>(logistics.Logistics1[0], tests.ToArray(), jsonElements, fileInfoCollection); return results; } diff --git a/Adaptation/FileHandlers/RsM/Run.cs b/Adaptation/FileHandlers/RsM/Run.cs index 6388b8b..ddaad45 100644 --- a/Adaptation/FileHandlers/RsM/Run.cs +++ b/Adaptation/FileHandlers/RsM/Run.cs @@ -60,9 +60,9 @@ internal class Run return new(results); } - private static void WriteJson(Logistics logistics, List fileInfoCollection, Run? result) + private static void WriteJson(Logistics logistics, List fileInfoCollection, Run result) { - FileInfo fileInfo = new($"{logistics.ReportFullPath}.json"); + FileInfo fileInfo = new($"{logistics.ReportFullPath}.run.json"); string json = JsonSerializer.Serialize(result, RunSourceGenerationContext.Default.Run); File.WriteAllText(fileInfo.FullName, json); File.SetLastWriteTime(fileInfo.FullName, logistics.DateTimeFromSequence); diff --git a/Adaptation/MET08RESIMAPCDE.Tests.csproj b/Adaptation/MET08RESIMAPCDE.Tests.csproj index c0a7fa6..c6da4dc 100644 --- a/Adaptation/MET08RESIMAPCDE.Tests.csproj +++ b/Adaptation/MET08RESIMAPCDE.Tests.csproj @@ -69,7 +69,7 @@ - NU1701 + NU1701 diff --git a/Adaptation/Shared/ProcessDataStandardFormat.cs b/Adaptation/Shared/ProcessDataStandardFormat.cs index 136ccae..b2ca7b6 100644 --- a/Adaptation/Shared/ProcessDataStandardFormat.cs +++ b/Adaptation/Shared/ProcessDataStandardFormat.cs @@ -152,9 +152,11 @@ public class ProcessDataStandardFormat { string value; string[] segments; + List lines = new(); StringBuilder stringBuilder = new(); foreach (string bodyLine in bodyLines) { + _ = stringBuilder.Clear(); _ = stringBuilder.Append('{'); segments = bodyLine.Trim().Split('\t'); if (!lookForNumbers) @@ -179,10 +181,11 @@ public class ProcessDataStandardFormat } } _ = stringBuilder.Remove(stringBuilder.Length - 1, 1); - _ = stringBuilder.AppendLine("},"); + _ = stringBuilder.AppendLine("}"); + lines.Add(stringBuilder.ToString()); } - _ = stringBuilder.Remove(stringBuilder.Length - 3, 3); - results = JsonSerializer.Deserialize(string.Concat("[", stringBuilder, "]")); + string json = $"[{string.Join(",", lines)}]"; + results = JsonSerializer.Deserialize(json); } return results; } diff --git a/Adaptation/_Tests/Extract/Production/v2.59.0/CDE4.cs b/Adaptation/_Tests/Extract/Production/v2.59.0/CDE4.cs index 7afe1e6..c1587fd 100644 --- a/Adaptation/_Tests/Extract/Production/v2.59.0/CDE4.cs +++ b/Adaptation/_Tests/Extract/Production/v2.59.0/CDE4.cs @@ -45,9 +45,9 @@ public class CDE4 Logistics logistics = new(fileRead); _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF: false); dateTime = FileHandlers.RsM.ProcessData.GetDateTime(logistics, string.Empty); - Assert.IsTrue(dateTime == logistics.DateTimeFromSequence); + Assert.AreEqual(logistics.DateTimeFromSequence, dateTime); dateTime = FileHandlers.RsM.ProcessData.GetDateTime(logistics, "00:13 09/27/38"); - Assert.IsTrue(dateTime == logistics.DateTimeFromSequence); + Assert.AreEqual(logistics.DateTimeFromSequence, dateTime); } } diff --git a/Adaptation/_Tests/Extract/Production/v2.59.0/CDE5.cs b/Adaptation/_Tests/Extract/Production/v2.59.0/CDE5.cs index 15b9c35..f00b650 100644 --- a/Adaptation/_Tests/Extract/Production/v2.59.0/CDE5.cs +++ b/Adaptation/_Tests/Extract/Production/v2.59.0/CDE5.cs @@ -54,9 +54,9 @@ public class CDE5 Logistics logistics = new(fileRead); _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF); dateTime = FileHandlers.RsM.ProcessData.GetDateTime(logistics, string.Empty); - Assert.IsTrue(dateTime == logistics.DateTimeFromSequence); + Assert.AreEqual(logistics.DateTimeFromSequence, dateTime); dateTime = FileHandlers.RsM.ProcessData.GetDateTime(logistics, "00:13 09/27/38"); - Assert.IsTrue(dateTime == logistics.DateTimeFromSequence); + Assert.AreEqual(logistics.DateTimeFromSequence, dateTime); NonThrowTryCatch(); } diff --git a/Adaptation/_Tests/Extract/Production/v2.59.0/CDE6.cs b/Adaptation/_Tests/Extract/Production/v2.59.0/CDE6.cs index 813aa67..72a9619 100644 --- a/Adaptation/_Tests/Extract/Production/v2.59.0/CDE6.cs +++ b/Adaptation/_Tests/Extract/Production/v2.59.0/CDE6.cs @@ -47,9 +47,9 @@ public class CDE6 Logistics logistics = new(fileRead); _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF); dateTime = FileHandlers.RsM.ProcessData.GetDateTime(logistics, string.Empty); - Assert.IsTrue(dateTime == logistics.DateTimeFromSequence); + Assert.AreEqual(logistics.DateTimeFromSequence, dateTime); dateTime = FileHandlers.RsM.ProcessData.GetDateTime(logistics, "00:13 09/27/38"); - Assert.IsTrue(dateTime == logistics.DateTimeFromSequence); + Assert.AreEqual(logistics.DateTimeFromSequence, dateTime); } } diff --git a/Adaptation/_Tests/Extract/Production/v2.59.0/MET08RESIMAPCDE.cs b/Adaptation/_Tests/Extract/Production/v2.59.0/MET08RESIMAPCDE.cs index 808b7ea..f0e6a97 100644 --- a/Adaptation/_Tests/Extract/Production/v2.59.0/MET08RESIMAPCDE.cs +++ b/Adaptation/_Tests/Extract/Production/v2.59.0/MET08RESIMAPCDE.cs @@ -55,9 +55,9 @@ public class MET08RESIMAPCDE Logistics logistics = new(fileRead); _ = AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF); dateTime = FileHandlers.RsM.ProcessData.GetDateTime(logistics, string.Empty); - Assert.IsTrue(dateTime == logistics.DateTimeFromSequence); + Assert.AreEqual(logistics.DateTimeFromSequence, dateTime); dateTime = FileHandlers.RsM.ProcessData.GetDateTime(logistics, "00:13 09/27/38"); - Assert.IsTrue(dateTime == logistics.DateTimeFromSequence); + Assert.AreEqual(logistics.DateTimeFromSequence, dateTime); } #if DEBUG diff --git a/Adaptation/_Tests/Shared/AdaptationTesting.cs b/Adaptation/_Tests/Shared/AdaptationTesting.cs index 8a341d4..66cf18e 100644 --- a/Adaptation/_Tests/Shared/AdaptationTesting.cs +++ b/Adaptation/_Tests/Shared/AdaptationTesting.cs @@ -1111,7 +1111,7 @@ public class AdaptationTesting : ISMTP pdsfFiles = Directory.GetFiles(searchDirectory, searchPattern, SearchOption.TopDirectoryOnly); if (pdsfFiles.Length == 0) _ = Process.Start("explorer.exe", searchDirectory); - Assert.IsTrue(pdsfFiles.Length != 0, "GetFiles check"); + Assert.AreNotEqual(0, pdsfFiles.Length, "GetFiles check"); results = GetLogisticsColumnsAndBody(pdsfFiles[0]); } Assert.IsFalse(string.IsNullOrEmpty(results.Item1)); @@ -1259,13 +1259,13 @@ public class AdaptationTesting : ISMTP Tuple pdsf = GetLogisticsColumnsAndBody(variables[2], variables[4]); Tuple pdsfNew = GetLogisticsColumnsAndBody(fileRead, logistics, extractResult, pdsf); CompareSave(variables[5], pdsf, pdsfNew); - Assert.IsTrue(pdsf.Item1 == pdsfNew.Item1, "Item1 check!"); + Assert.AreEqual(pdsfNew.Item1, pdsf.Item1, "Item1 check!"); string[] json = GetItem2(pdsf, pdsfNew); CompareSaveJSON(variables[5], json); - Assert.IsTrue(json[0] == json[1], "Item2 check!"); + Assert.AreEqual(json[1], json[0], "Item2 check!"); string[] join = GetItem3(pdsf, pdsfNew); CompareSaveTSV(variables[5], join); - Assert.IsTrue(join[0] == join[1], "Item3 (Join) check!"); + Assert.AreEqual(join[1], join[0], "Item3 (Join) check!"); } UpdatePassDirectory(variables[2]); } diff --git a/Adaptation/_Tests/Static/MET08RESIMAPCDE.cs b/Adaptation/_Tests/Static/MET08RESIMAPCDE.cs index f71a0b0..35ee483 100644 --- a/Adaptation/_Tests/Static/MET08RESIMAPCDE.cs +++ b/Adaptation/_Tests/Static/MET08RESIMAPCDE.cs @@ -51,7 +51,7 @@ public class MET08RESIMAPCDE : LoggingUnitTesting, IDisposable public void TestDateTime() { DateTime dateTime = DateTime.Now; - Assert.IsTrue(dateTime.ToString("M/d/yyyy h:mm:ss tt") == dateTime.ToString()); + Assert.AreEqual(dateTime.ToString(), dateTime.ToString("M/d/yyyy h:mm:ss tt")); } #if DEBUG diff --git a/Adaptation/_Tests/Static/RsM.cs b/Adaptation/_Tests/Static/RsM.cs index c4e5ed5..d148958 100644 --- a/Adaptation/_Tests/Static/RsM.cs +++ b/Adaptation/_Tests/Static/RsM.cs @@ -52,7 +52,7 @@ public class RsM : LoggingUnitTesting, IDisposable public void TestDateTime() { DateTime dateTime = DateTime.Now; - Assert.IsTrue(dateTime.ToString("M/d/yyyy h:mm:ss tt") == dateTime.ToString()); + Assert.AreEqual(dateTime.ToString(), dateTime.ToString("M/d/yyyy h:mm:ss tt")); } [TestMethod] @@ -69,22 +69,22 @@ public class RsM : LoggingUnitTesting, IDisposable Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("12-123456-1234"); - Assert.IsTrue(descriptor.Reactor is "12"); - Assert.IsTrue(descriptor.RDS is "123456"); - Assert.IsTrue(descriptor.PSN is "1234"); + Assert.AreEqual("12", descriptor.Reactor); + Assert.AreEqual("123456", descriptor.RDS); + Assert.AreEqual("1234", descriptor.PSN); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("123456"); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor)); - Assert.IsTrue(descriptor.RDS is "123456"); + Assert.AreEqual("123456", descriptor.RDS); Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("1T123456"); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor)); - Assert.IsTrue(descriptor.RDS is "123456"); + Assert.AreEqual("123456", descriptor.RDS); Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); @@ -93,92 +93,92 @@ public class RsM : LoggingUnitTesting, IDisposable Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN)); - Assert.IsTrue(descriptor.Employee is "MP"); + Assert.AreEqual("MP", descriptor.Employee); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); descriptor = ProcessData.GetDescriptor("12-123456-1234.2-1"); - Assert.IsTrue(descriptor.Reactor is "12"); - Assert.IsTrue(descriptor.RDS is "123456"); - Assert.IsTrue(descriptor.PSN is "1234"); - Assert.IsTrue(descriptor.Layer is "2"); - Assert.IsTrue(descriptor.Zone is "1"); + Assert.AreEqual("12", descriptor.Reactor); + Assert.AreEqual("123456", descriptor.RDS); + Assert.AreEqual("1234", descriptor.PSN); + Assert.AreEqual("2", descriptor.Layer); + Assert.AreEqual("1", descriptor.Zone); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("12-123456-1234.02-1"); - Assert.IsTrue(descriptor.Reactor is "12"); - Assert.IsTrue(descriptor.RDS is "123456"); - Assert.IsTrue(descriptor.PSN is "1234"); - Assert.IsTrue(descriptor.Layer is "2"); - Assert.IsTrue(descriptor.Zone is "1"); + Assert.AreEqual("12", descriptor.Reactor); + Assert.AreEqual("123456", descriptor.RDS); + Assert.AreEqual("1234", descriptor.PSN); + Assert.AreEqual("2", descriptor.Layer); + Assert.AreEqual("1", descriptor.Zone); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("20"); - Assert.IsTrue(descriptor.Reactor is "20"); + Assert.AreEqual("20", descriptor.Reactor); Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("20.2"); - Assert.IsTrue(descriptor.Reactor is "20"); + Assert.AreEqual("20", descriptor.Reactor); Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN)); - Assert.IsTrue(descriptor.Layer is "2"); + Assert.AreEqual("2", descriptor.Layer); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("20.2.1"); - Assert.IsTrue(descriptor.Layer is "2"); + Assert.AreEqual("2", descriptor.Layer); Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS)); - Assert.IsTrue(descriptor.Reactor is "20"); - Assert.IsTrue(descriptor.Zone is "1"); + Assert.AreEqual("20", descriptor.Reactor); + Assert.AreEqual("1", descriptor.Zone); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("20.1.1"); - Assert.IsTrue(descriptor.Layer is "1"); + Assert.AreEqual("1", descriptor.Layer); Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS)); - Assert.IsTrue(descriptor.Reactor is "20"); - Assert.IsTrue(descriptor.Zone is "1"); + Assert.AreEqual("20", descriptor.Reactor); + Assert.AreEqual("1", descriptor.Zone); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("P2-LOW-RR"); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer)); - Assert.IsTrue(descriptor.PSN is "RR"); + Assert.AreEqual("RR", descriptor.PSN); Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS)); - Assert.IsTrue(descriptor.Reactor is "P2"); + Assert.AreEqual("P2", descriptor.Reactor); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("i171308.1.51"); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN)); - Assert.IsTrue(descriptor.RDS is "i171308.1.51"); + Assert.AreEqual("i171308.1.51", descriptor.RDS); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("o171308.1.51"); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN)); - Assert.IsTrue(descriptor.RDS is "o171308.1.51"); + Assert.AreEqual("o171308.1.51", descriptor.RDS); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("O171308.1.51"); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN)); - Assert.IsTrue(descriptor.RDS is "O171308.1.51"); + Assert.AreEqual("O171308.1.51", descriptor.RDS); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("171308.1.51"); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN)); - Assert.IsTrue(descriptor.RDS is "171308.1.51"); + Assert.AreEqual("171308.1.51", descriptor.RDS); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("75-QP1414-SPLIT4"); - // Assert.IsTrue(!string.IsNullOrEmpty(descriptor.Lot)); + // Assert.IsFalse(string.IsNullOrEmpty(descriptor.Lot)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer)); - Assert.IsTrue(descriptor.PSN is "SPLIT4"); + Assert.AreEqual("SPLIT4", descriptor.PSN); Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS)); - Assert.IsTrue(descriptor.Reactor is "75"); + Assert.AreEqual("75", descriptor.Reactor); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone)); Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee)); descriptor = ProcessData.GetDescriptor("B48");