diff --git a/.gitignore b/.gitignore index 5bede07..56d8c06 100644 --- a/.gitignore +++ b/.gitignore @@ -341,4 +341,5 @@ ASALocalRun/ *.lnk -.kanbn/**/* +.kanbn +Adaptation/.kanbn diff --git a/.vscode/mklink.md b/.vscode/mklink.md deleted file mode 100644 index 6f269d2..0000000 --- a/.vscode/mklink.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -type: "note" -created: "2023-10-20T03:52:57.401Z" -updated: "2023-10-20T03:53:49.161Z" ---- - -# mklink - -```bash -mklink /J "L:\Workspaces\33_CS29_79_72\MIT_EAF_Adaptations\Trunk\MET08RESISRP2100\06_SourceCode\MET08RESISRP2100\.kanbn" "D:\Documents\Kanban\MET08RESISRP2100" -``` diff --git a/Adaptation/.editorconfig b/Adaptation/.editorconfig index b45701e..69ecc38 100644 --- a/Adaptation/.editorconfig +++ b/Adaptation/.editorconfig @@ -1,3 +1,19 @@ +[*.md] +end_of_line = crlf +file_header_template = unset +indent_size = 2 +indent_style = space +insert_final_newline = false +root = true +tab_width = 2 +[*.csproj] +end_of_line = crlf +file_header_template = unset +indent_size = 2 +indent_style = space +insert_final_newline = false +root = true +tab_width = 2 [*.cs] csharp_indent_block_contents = true csharp_indent_braces = false @@ -82,13 +98,30 @@ dotnet_diagnostic.CA1829.severity = warning # CA1829: Use Length/Count property dotnet_diagnostic.CA1834.severity = warning # CA1834: Consider using 'StringBuilder.Append(char)' when applicable dotnet_diagnostic.CA1846.severity = none # CA1846: Prefer AsSpan over Substring dotnet_diagnostic.CA1847.severity = none # CA1847: Use string.Contains(char) instead of string.Contains(string) with single characters +dotnet_diagnostic.CA1854.severity = warning # CA1854: Prefer a 'TryGetValue' call over a Dictionary indexer access guarded by a 'ContainsKey' check to avoid double lookup +dotnet_diagnostic.CA1860.severity = error # CA1860: Prefer comparing 'Count' to 0 rather than using 'Any()', both for clarity and for performance +dotnet_diagnostic.CA1861.severity = none # CA1861: Prefer 'static readonly' fields over constant array arguments +dotnet_diagnostic.CA1862.severity = none # CA1862: Prefer using 'string.Equals(string, StringComparison)' to perform a case-insensitive comparison, but keep in mind that this might cause subtle changes in behavior, so make sure to conduct thorough testing after applying the suggestion, or if culturally sensitive comparison is not required, consider using 'StringComparison.OrdinalIgnoreCase' +dotnet_diagnostic.CA1864.severity = none # CA1864: To avoid double lookup, call 'TryAdd' instead of calling 'Add' with a 'ContainsKey' guard +dotnet_diagnostic.CA1866.severity = none # CA1866: Use 'string.EndsWith(char)' instead of 'string.EndsWith(string)' when you have a string with a single char +dotnet_diagnostic.CA1869.severity = none # CA1869: Avoid creating a new 'JsonSerializerOptions' instance for every serialization operation. Cache and reuse instances instead. +dotnet_diagnostic.CA2254.severity = none # CA2254: The logging message template should not vary between calls to 'LoggerExtensions.LogInformation(ILogger, string?, params object?[])' dotnet_diagnostic.IDE0001.severity = warning # IDE0001: Simplify name dotnet_diagnostic.IDE0002.severity = warning # Simplify (member access) - System.Version.Equals("1", "2"); Version.Equals("1", "2"); dotnet_diagnostic.IDE0004.severity = warning # IDE0004: Cast is redundant. dotnet_diagnostic.IDE0005.severity = warning # Using directive is unnecessary +dotnet_diagnostic.IDE0028.severity = none # IDE0028: Collection initialization can be simplified +dotnet_diagnostic.IDE0031.severity = warning # Use null propagation (IDE0031) dotnet_diagnostic.IDE0047.severity = warning # IDE0047: Parentheses can be removed dotnet_diagnostic.IDE0049.severity = warning # Use language keywords instead of framework type names for type references (IDE0049) dotnet_diagnostic.IDE0060.severity = warning # IDE0060: Remove unused parameter +dotnet_diagnostic.IDE0200.severity = warning # IDE0200: Lambda expression can be removed +dotnet_diagnostic.IDE0270.severity = none # IDE0270: Null check can be simplified +dotnet_diagnostic.IDE0290.severity = none # Use primary constructor [Distance]csharp(IDE0290) +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.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 dotnet_naming_rule.abstract_method_should_be_pascal_case.symbols = abstract_method diff --git a/Adaptation/.vscode/mklink.md b/Adaptation/.vscode/mklink.md new file mode 100644 index 0000000..00956c7 --- /dev/null +++ b/Adaptation/.vscode/mklink.md @@ -0,0 +1,5 @@ +# mklink + +```bash +mklink /J "T:\MET08THFTIRQS408M\06_SourceCode\MET08THFTIRQS408M\Adaptation\.kanbn" "D:\5-Other-Small\Kanban\MET08THFTIRQS408M" +``` diff --git a/Adaptation/.vscode/tasks.json b/Adaptation/.vscode/tasks.json index 690e10f..f1bf912 100644 --- a/Adaptation/.vscode/tasks.json +++ b/Adaptation/.vscode/tasks.json @@ -12,6 +12,28 @@ ], "problemMatcher": "$msCompile" }, + { + "label": "Test-Debug", + "command": "dotnet", + "type": "process", + "args": [ + "test", + "-c", + "Debug" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "Test-Release", + "command": "dotnet", + "type": "process", + "args": [ + "test", + "-c", + "Release" + ], + "problemMatcher": "$msCompile" + }, { "label": "Format", "command": "dotnet", @@ -46,7 +68,7 @@ "args": [ "/target:Build", "/restore:True", - "/p:RestoreSources=https://api.nuget.org/v3/index.json%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://localhost/v3/index.json", + "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json", "/detailedsummary", "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;", "/property:Configuration=Debug;TargetFrameworkVersion=v4.8", @@ -57,7 +79,7 @@ { "label": "File-Folder-Helper AOT s M .Kanbn Tasks", "type": "shell", - "command": "& L:/DevOps/Mesa_FI/File-Folder-Helper/bin/Release/net7.0/win-x64/publish/File-Folder-Helper.exe s M T:/MET08RESISRP2100/06_SourceCode/MET08RESISRP2100/Adaptation -s T:/MET08RESISRP2100/06_SourceCode/MET08RESISRP2100/Adaptation/.kanbn/tasks", + "command": "L:/DevOps/Mesa_FI/File-Folder-Helper/bin/Release/net8.0/win-x64/publish/File-Folder-Helper.exe s M T:/MET08RESISRP2100/06_SourceCode/MET08RESISRP2100/Adaptation -s T:/MET08RESISRP2100/06_SourceCode/MET08RESISRP2100/Adaptation/.kanbn/tasks", "problemMatcher": [] }, { diff --git a/Adaptation/FileHandlers/Archive/FileRead.cs b/Adaptation/FileHandlers/Archive/FileRead.cs index 3cc4d71..0e79541 100644 --- a/Adaptation/FileHandlers/Archive/FileRead.cs +++ b/Adaptation/FileHandlers/Archive/FileRead.cs @@ -128,7 +128,7 @@ public class FileRead : Shared.FileRead, IFileRead string jobIdDirectory = Path.Combine(_JobIdParentDirectory, _Logistics.JobID); if (!Directory.Exists(jobIdDirectory)) _ = Directory.CreateDirectory(jobIdDirectory); - if (!Directory.GetDirectories(jobIdDirectory).Any()) + if (Directory.GetDirectories(jobIdDirectory).Length == 0) File.Copy(reportFullPath, Path.Combine(destinationArchiveDirectory, Path.GetFileName(reportFullPath))); else { diff --git a/Adaptation/FileHandlers/DownloadSRPxFile/FileRead.cs b/Adaptation/FileHandlers/DownloadSRPxFile/FileRead.cs index eb7ad2c..afa9df9 100644 --- a/Adaptation/FileHandlers/DownloadSRPxFile/FileRead.cs +++ b/Adaptation/FileHandlers/DownloadSRPxFile/FileRead.cs @@ -216,13 +216,13 @@ public class FileRead : Shared.FileRead, IFileRead possibleDownload.Add(new(matchNginxFileSystemDateTime, targetFileInfo, alternateFileInfo, targetFileName)); break; } - if (possibleDownload.Any()) + if (possibleDownload.Count != 0) break; } - if (possibleDownload.Any()) + if (possibleDownload.Count != 0) break; } - if (possibleDownload.Any()) + if (possibleDownload.Count != 0) { possibleDownload = (from l in possibleDownload orderby l.Item1 select l).ToList(); alternateFileInfo = possibleDownload[0].Item3; diff --git a/Adaptation/FileHandlers/Dummy/FileRead.cs b/Adaptation/FileHandlers/Dummy/FileRead.cs index 79eda27..916f5d7 100644 --- a/Adaptation/FileHandlers/Dummy/FileRead.cs +++ b/Adaptation/FileHandlers/Dummy/FileRead.cs @@ -157,7 +157,7 @@ public class FileRead : Shared.FileRead, IFileRead if (!Directory.Exists(inProcessDirectory)) _ = Directory.CreateDirectory(inProcessDirectory); files = Directory.GetFiles(inProcessDirectory, "*", SearchOption.AllDirectories); - if (files.Any()) + if (files.Length != 0) { if (files.Length > 250) throw new Exception("Safety net!"); diff --git a/Adaptation/FileHandlers/MoveMatchingFiles/FileRead.cs b/Adaptation/FileHandlers/MoveMatchingFiles/FileRead.cs index 39f8d62..2d8a495 100644 --- a/Adaptation/FileHandlers/MoveMatchingFiles/FileRead.cs +++ b/Adaptation/FileHandlers/MoveMatchingFiles/FileRead.cs @@ -6,7 +6,6 @@ using Adaptation.Shared.Methods; using System; using System.Collections.Generic; using System.IO; -using System.Linq; using System.Text; using System.Text.Json; using System.Threading; @@ -129,7 +128,7 @@ public class FileRead : Shared.FileRead, IFileRead for (int i = 0; i < int.MaxValue; i++) { found = Directory.GetFiles(searchDirectory, fileName, SearchOption.AllDirectories); - if (found.Any()) + if (found.Length != 0) { results.AddRange(found); break; @@ -205,7 +204,7 @@ public class FileRead : Shared.FileRead, IFileRead Thread.Sleep(500); } } - if (postCollection.Any()) + if (postCollection.Count != 0) { Thread.Sleep(500); StringBuilder stringBuilder = new(); diff --git a/Adaptation/FileHandlers/OpenInsight/FileRead.cs b/Adaptation/FileHandlers/OpenInsight/FileRead.cs index 0f1e0a4..689f411 100644 --- a/Adaptation/FileHandlers/OpenInsight/FileRead.cs +++ b/Adaptation/FileHandlers/OpenInsight/FileRead.cs @@ -20,24 +20,22 @@ public class FileRead : Shared.FileRead, IFileRead private readonly string _IqsConnectionString; private readonly string _OpenInsightFilePattern; private readonly string _OpenInsightApiECDirectory; - private readonly string _OpenInsightApiIFXDirectory; public FileRead(ISMTP smtp, Dictionary fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList modelObjectParameters, string equipmentDictionaryName, Dictionary> dummyRuns, Dictionary> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) : base(new Description(), false, smtp, fileParameter, cellInstanceName, connectionCount, cellInstanceConnectionName, fileConnectorConfiguration, equipmentTypeName, parameterizedModelObjectDefinitionType, modelObjectParameters, equipmentDictionaryName, dummyRuns, staticRuns, useCyclicalForDescription, isEAFHosted: connectionCount is null) { _MinFileLength = 10; - _NullData = string.Empty; _Logistics = new(this); + _NullData = string.Empty; if (_FileParameter is null) throw new Exception(cellInstanceConnectionName); if (_ModelObjectParameterDefinitions is null) throw new Exception(cellInstanceConnectionName); if (!_IsDuplicator) throw new Exception(cellInstanceConnectionName); - _OpenInsightApiIFXDirectory = @"\\messdv002.na.infineon.com\Candela\Archive\API"; - _OpenInsightApiECDirectory = @"\\mesfs.infineon.com\EC_Metrology_Si\Archive\API"; _IqsConnectionString = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "IQS.ConnectionString"); _OpenInsightFilePattern = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "OpenInsight.FilePattern"); + _OpenInsightApiECDirectory = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "OpenInsight.Api.EC.Directory"); } void IFileRead.Move(Tuple> extractResults, Exception exception) @@ -149,7 +147,7 @@ public class FileRead : Shared.FileRead, IFileRead _ = Directory.CreateDirectory(duplicateDirectory); } string duplicateFile = Path.Combine(duplicateDirectory, Path.GetFileName(reportFullPath)); - if (descriptions.Any() && tests.Any()) + if (descriptions.Count != 0 && tests.Length != 0) { string lines = GetLines(descriptions); if (!string.IsNullOrEmpty(lines)) @@ -165,8 +163,14 @@ public class FileRead : Shared.FileRead, IFileRead collection.Add(new(new ScopeInfo(tests[0], _OpenInsightFilePattern), lines)); else collection.Add(new(new ScopeInfo(tests[0], $"{subGroupId.Value} {_OpenInsightFilePattern}"), lines)); + if (_StaticRuns.TryGetValue(_Logistics.Sequence, out List values)) + { + if (values.Count != 1) + throw new Exception($"{nameof(_StaticRuns)} {values.Count} != 1 {_Logistics.Sequence}!"); + values[0] = $"{values[0]}|{subGroupId}"; + } string weekOfYear = _Calendar.GetWeekOfYear(_Logistics.DateTimeFromSequence, CalendarWeekRule.FirstDay, DayOfWeek.Sunday).ToString("00"); - FromIQS.Save(_OpenInsightApiECDirectory, _OpenInsightApiIFXDirectory, _Logistics, reportFullPath, logistics, descriptions.First(), lines, subGroupId, weekOfYear); + FromIQS.Save(_OpenInsightApiECDirectory, _Logistics, reportFullPath, logistics, descriptions.First(), lines, subGroupId, weekOfYear); } } if (_IsEAFHosted && _FileConnectorConfiguration.FileScanningIntervalInSeconds > 0) diff --git a/Adaptation/FileHandlers/OpenInsight/FromIQS.cs b/Adaptation/FileHandlers/OpenInsight/FromIQS.cs index 4bbaf01..cfb9fe9 100644 --- a/Adaptation/FileHandlers/OpenInsight/FromIQS.cs +++ b/Adaptation/FileHandlers/OpenInsight/FromIQS.cs @@ -17,7 +17,7 @@ public class FromIQS #nullable enable private static string GetCommandText(Logistics logistics, json.Description description, string dateTime, long? subGroupId) - { + { // cSpell:disable StringBuilder result = new(); _ = result .AppendLine(" select iq.ev_count, iq.cl_count, iq.sl_count, iq.se_sgrp, iq.se_sgtm, iq.se_tsno, iq.td_test, iq.pr_name, iq.jd_name, iq.pl_name, iq.pd_name, iq.td_name, iq.se_val ") @@ -75,7 +75,7 @@ public class FromIQS .AppendLine(" order by iq.ev_count desc, iq.cl_count desc, iq.sl_count desc, iq.se_sgrp, iq.se_tsno, iq.td_test ") .AppendLine(" for json path "); return result.ToString(); - } + } // cSpell:restore private static StringBuilder GetForJsonPath(string connectionString, string commandText) { @@ -135,17 +135,17 @@ public class FromIQS else { JsonElement[]? jsonElements = JsonSerializer.Deserialize(stringBuilder.ToString()); - if (jsonElements is null || !jsonElements.Any() || jsonElements[0].ValueKind != JsonValueKind.Object) + if (jsonElements is null || jsonElements.Length == 0 || jsonElements[0].ValueKind != JsonValueKind.Object) commandText = stringBuilder.ToString(); else { JsonProperty[] jsonProperties = jsonElements[0].EnumerateObject().ToArray(); - if (!jsonProperties.Any() || jsonProperties[3].Name != "se_sgrp" || !long.TryParse(jsonProperties[3].Value.ToString(), out long subGroupId)) + if (jsonProperties.Length == 0 || jsonProperties[3].Name != "se_sgrp" || !long.TryParse(jsonProperties[3].Value.ToString(), out long subGroupId)) commandText = stringBuilder.ToString(); else { result = subGroupId; - if (jsonProperties.Any() && jsonProperties[0].Name == "ev_count" && int.TryParse(jsonProperties[0].Value.ToString(), out int evCount)) + if (jsonProperties.Length != 0 && jsonProperties[0].Name == "ev_count" && int.TryParse(jsonProperties[0].Value.ToString(), out int evCount)) count = evCount; } } @@ -204,40 +204,119 @@ public class FromIQS return result; } - internal static void Save(string openInsightApiECDirectory, string openInsightApiIFXDirectory, Logistics logistics, string reportFullPath, string logisticLines, json.Description description, string lines, long? subGroupId, string weekOfYear) + internal static void Save(string openInsightApiECDirectory, Logistics logistics, string reportFullPath, string logisticLines, json.Description description, string lines, long? subGroupId, string weekOfYear) { string checkFile; string fileName = Path.GetFileName(reportFullPath); string json = GetJson(logistics, logisticLines, description); string? ecPathRoot = Path.GetPathRoot(openInsightApiECDirectory); - string? ifxPathRoot = Path.GetPathRoot(openInsightApiIFXDirectory); bool ecExists = ecPathRoot is not null && Directory.Exists(ecPathRoot); - bool ifxExists = ifxPathRoot is not null && Directory.Exists(ifxPathRoot); string weekYear = $"{logistics.DateTimeFromSequence:yyyy}_Week_{weekOfYear}"; string ecDirectory = Path.Combine(openInsightApiECDirectory, weekYear, $"-{description.PSN}", $"-{description.Reactor}", $"-{description.RDS}", $"-{subGroupId}"); - string ifxDirectory = Path.Combine(openInsightApiIFXDirectory, weekYear, $"-{description.PSN}", $"-{description.Reactor}", $"-{description.RDS}", $"-{subGroupId}"); if (ecExists && !Directory.Exists(ecDirectory)) _ = Directory.CreateDirectory(ecDirectory); - if (ifxExists && !Directory.Exists(ifxDirectory)) - _ = Directory.CreateDirectory(ifxDirectory); checkFile = Path.Combine(ecDirectory, fileName); if (ecExists && !File.Exists(checkFile)) File.Copy(reportFullPath, checkFile); - checkFile = Path.Combine(ifxDirectory, fileName); - if (ifxExists && !File.Exists(checkFile)) - File.Copy(reportFullPath, checkFile); checkFile = Path.Combine(ecDirectory, $"{logistics.DateTimeFromSequence.Ticks}.txt"); if (ecExists && !File.Exists(checkFile)) File.WriteAllText(checkFile, lines); - checkFile = Path.Combine(ifxDirectory, $"{logistics.DateTimeFromSequence.Ticks}.txt"); - if (ifxExists && !File.Exists(checkFile)) - File.WriteAllText(checkFile, lines); checkFile = Path.Combine(ecDirectory, $"{logistics.DateTimeFromSequence.Ticks}.json"); if (ecExists && !File.Exists(checkFile)) File.WriteAllText(checkFile, json); - checkFile = Path.Combine(ifxDirectory, $"{logistics.DateTimeFromSequence.Ticks}.json"); - if (ifxExists && !File.Exists(checkFile)) - File.WriteAllText(checkFile, json); + } + + private static string GetCommandText(string[] iqsCopyValues) + { // cSpell:disable + StringBuilder result = new(); + if (iqsCopyValues.Length != 4) + throw new NotSupportedException(); + string find = iqsCopyValues[1]; + string replace = iqsCopyValues[3]; + _ = result + .AppendLine(" select pd.f_name [Part Name], ") + .AppendLine(" null [Part Revision], ") + .Append(" '").Append(replace).AppendLine("' [Test Name], ") + .AppendLine(" null [Description], ") + .AppendLine(" null [Lot Number], ") + .AppendLine(" null [Job Name], ") + .AppendLine(" null [Process Name], ") + .AppendLine(" case when sl.f_url = 0 then null else sl.f_url end [Reasonable Limit (Upper)], ") + .AppendLine(" case when sl.f_url = 0 then 0 else 1 end [Alarm Reasonable Limit (Upper)], ") + .AppendLine(" case when sl.f_usl = 0 then null else sl.f_usl end [Specification Limit (Upper)], ") + .AppendLine(" case when sl.f_usl = 0 then 0 else 1 end [Alarm Specification Limit (Upper)], ") + .AppendLine(" case when sl.f_ugb = 0 then null else sl.f_ugb end [Warning Limit (Upper)], ") + .AppendLine(" case when sl.f_ugb = 0 then 0 else 1 end [Alarm Warning Limit (Upper)], ") + .AppendLine(" case when sl.f_tar = 0 then null else sl.f_tar end [Specification Limit (Target)], ") + .AppendLine(" case when sl.f_lgb = 0 then null else sl.f_lgb end [Warning Limit (Lower)], ") + .AppendLine(" case when sl.f_lgb = 0 then 0 else 1 end [Alarm Warning Limit (Lower)], ") + .AppendLine(" case when sl.f_lsl = 0 then null else sl.f_lsl end [Specification Limit (Lower)], ") + .AppendLine(" case when sl.f_lsl = 0 then 0 else 1 end [Alarm Specification Limit (Lower)], ") + .AppendLine(" case when sl.f_lrl = 0 then null else sl.f_lrl end [Reasonable Limit (Lower)], ") + .AppendLine(" case when sl.f_lrl = 0 then 0 else 1 end [Alarm Reasonable Limit (Lower)], ") + .AppendLine(" td.f_name [Original Test Name], ") + .AppendLine(" td.f_test [Test Id], ") + .AppendLine(" ( ") + .AppendLine(" select count(sl_b.f_spec) ") + .AppendLine(" from [spcepiworld].[dbo].[spec_lim] sl_b ") + .AppendLine(" join [spcepiworld].[dbo].[part_dat] pd_b ") + .AppendLine(" on sl_b.f_part = pd_b.f_part ") + .AppendLine(" join [spcepiworld].[dbo].[test_dat] td_b ") + .AppendLine(" on sl_b.f_test = td_b.f_test ") + .AppendLine(" where sl_b.f_prcs = 0 ") + .Append(" and td_b.f_name = '").Append(replace).AppendLine("' ") + .AppendLine(" and pd_b.f_name = pd.f_name ") + .AppendLine(" and sl_b.f_url = sl.f_url ") + .AppendLine(" and sl_b.f_usl = sl.f_usl ") + .AppendLine(" and sl_b.f_ugb = sl.f_ugb ") + .AppendLine(" and sl_b.f_tar = sl.f_tar ") + .AppendLine(" and sl_b.f_lgb = sl.f_lgb ") + .AppendLine(" and sl_b.f_lsl = sl.f_lsl ") + .AppendLine(" and sl_b.f_lrl = sl.f_lrl ") + .AppendLine(" group by sl_b.f_spec ") + .AppendLine(" ) count ") + .AppendLine(" from [spcepiworld].[dbo].[spec_lim] sl ") + .AppendLine(" join [spcepiworld].[dbo].[part_dat] pd ") + .AppendLine(" on sl.f_part = pd.f_part ") + .AppendLine(" join [spcepiworld].[dbo].[test_dat] td ") + .AppendLine(" on sl.f_test = td.f_test ") + .AppendLine(" where sl.f_prcs = 0 ") + .Append(" and td.f_name = '").Append(find).AppendLine("' ") + .AppendLine(" and isnull(( ") + .AppendLine(" select count(sl_b.f_spec) ") + .AppendLine(" from [spcepiworld].[dbo].[spec_lim] sl_b ") + .AppendLine(" join [spcepiworld].[dbo].[part_dat] pd_b ") + .AppendLine(" on sl_b.f_part = pd_b.f_part ") + .AppendLine(" join [spcepiworld].[dbo].[test_dat] td_b ") + .AppendLine(" on sl_b.f_test = td_b.f_test ") + .AppendLine(" where sl_b.f_prcs = 0 ") + .Append(" and td_b.f_name = '").Append(replace).AppendLine("' ") + .AppendLine(" and pd_b.f_name = pd.f_name ") + .AppendLine(" and sl_b.f_url = sl.f_url ") + .AppendLine(" and sl_b.f_usl = sl.f_usl ") + .AppendLine(" and sl_b.f_ugb = sl.f_ugb ") + .AppendLine(" and sl_b.f_tar = sl.f_tar ") + .AppendLine(" and sl_b.f_lgb = sl.f_lgb ") + .AppendLine(" and sl_b.f_lsl = sl.f_lsl ") + .AppendLine(" and sl_b.f_lrl = sl.f_lrl ") + .AppendLine(" group by sl_b.f_spec ") + .AppendLine(" ), 0) = 0 ") + .AppendLine(" for json path "); + return result.ToString(); + } // cSpell:restore + + internal static void SaveCopy(string fileConnectorConfigurationSourceFileLocation, string connectionString, string name, string[] iqsCopyValues) + { + string checkFile = Path.Combine(fileConnectorConfigurationSourceFileLocation, $"{name}.json"); + if (!File.Exists(checkFile)) + { + string commandText = GetCommandText(iqsCopyValues); + StringBuilder stringBuilder = GetForJsonPath(connectionString, commandText); + if (stringBuilder.Length != 0) + File.WriteAllText(checkFile, stringBuilder.ToString()); + else + File.WriteAllText(Path.Combine(fileConnectorConfigurationSourceFileLocation, $"{name}.sql"), commandText); + } } #nullable disable diff --git a/Adaptation/FileHandlers/OpenInsightMetrologyViewer/FileRead.cs b/Adaptation/FileHandlers/OpenInsightMetrologyViewer/FileRead.cs index 5cef991..1251264 100644 --- a/Adaptation/FileHandlers/OpenInsightMetrologyViewer/FileRead.cs +++ b/Adaptation/FileHandlers/OpenInsightMetrologyViewer/FileRead.cs @@ -31,8 +31,8 @@ public class FileRead : Shared.FileRead, IFileRead throw new Exception(cellInstanceConnectionName); if (!_IsDuplicator) throw new Exception(cellInstanceConnectionName); - _OpenInsightMetrologyViewerFileShare = @"\\mesfs.infineon.com\EC_Metrology_Si\MetrologyAttachments\SRPRunHeader_"; _OpenInsightMetrologyViewerAPI = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "OpenInsight.MetrologyViewerAPI"); + _OpenInsightMetrologyViewerFileShare = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "OpenInsight.MetrologyViewerFileShare"); } void IFileRead.Move(Tuple> extractResults, Exception exception) @@ -112,14 +112,15 @@ public class FileRead : Shared.FileRead, IFileRead private void SendData(string reportFullPath, DateTime dateTime, List descriptions) { + string checkDirectory; + WSRequest wsRequest = new(this, _Logistics, descriptions); int weekOfYear = _Calendar.GetWeekOfYear(dateTime, CalendarWeekRule.FirstDay, DayOfWeek.Sunday); - string directory = Path.Combine(_OpenInsightMetrologyViewerFileShare, dateTime.Year.ToString(), $"WW{weekOfYear:00}", _Logistics.Sequence.ToString()); - if (!Directory.Exists(directory)) - _ = Directory.CreateDirectory(directory); - string fullPath = Path.Combine(directory, Path.GetFileName(reportFullPath)); - File.Copy(reportFullPath, fullPath); - WSRequest wsRequest = new(this, _Logistics, descriptions, fullPath); - (string json, WS.Results wsResults) = WS.SendData(_OpenInsightMetrologyViewerAPI, wsRequest); + string directory = Path.Combine(_OpenInsightMetrologyViewerFileShare, dateTime.Year.ToString(), $"WW{weekOfYear:00}"); + checkDirectory = Path.Combine(directory, _Logistics.Sequence.ToString()); + if (!Directory.Exists(checkDirectory)) + _ = Directory.CreateDirectory(checkDirectory); + File.Copy(reportFullPath, Path.Combine(checkDirectory, Path.GetFileName(reportFullPath)), overwrite: true); + (string jsonResults, WS.Results wsResults) = WS.SendData(_OpenInsightMetrologyViewerAPI, _Logistics.Sequence, directory, wsRequest); if (!wsResults.Success) throw new Exception(wsResults.ToString()); _Log.Debug(wsResults.HeaderID); @@ -127,8 +128,12 @@ public class FileRead : Shared.FileRead, IFileRead { if (!_StaticRuns.ContainsKey(_Logistics.Sequence)) _StaticRuns.Add(_Logistics.Sequence, new()); - _StaticRuns[_Logistics.Sequence].Add(json); + _StaticRuns[_Logistics.Sequence].Add(jsonResults); } + checkDirectory = Path.Combine(directory, $"-{wsResults.HeaderID}"); + if (!Directory.Exists(checkDirectory)) + _ = Directory.CreateDirectory(checkDirectory); + File.Copy(reportFullPath, Path.Combine(checkDirectory, Path.GetFileName(reportFullPath)), overwrite: true); } private Tuple> GetExtractResult(string reportFullPath, DateTime dateTime) diff --git a/Adaptation/FileHandlers/OpenInsightMetrologyViewer/WSRequest.cs b/Adaptation/FileHandlers/OpenInsightMetrologyViewer/WSRequest.cs index df39764..7fd1a41 100644 --- a/Adaptation/FileHandlers/OpenInsightMetrologyViewer/WSRequest.cs +++ b/Adaptation/FileHandlers/OpenInsightMetrologyViewer/WSRequest.cs @@ -30,7 +30,6 @@ public class WSRequest public string SineBevelAngle { get; set; } public string XStep { get; set; } public List Details { get; protected set; } - public string ProcessDataStandardFormat { get; set; } [Obsolete("For json")] public WSRequest() { } @@ -38,7 +37,6 @@ public class WSRequest internal WSRequest(IFileRead fileRead, Logistics logistics, List descriptions, string processDataStandardFormat = null) #pragma warning restore IDE0060 { - ProcessDataStandardFormat = processDataStandardFormat; Id = -1; FilePath = string.Empty; CellName = logistics.MesEntity; @@ -75,28 +73,38 @@ public class WSRequest Details.Add(detail); } Date ??= logistics.DateTimeFromSequence.ToString(); - if (UniqueId is null && Details.Any()) + if (UniqueId is null && Details.Count != 0) throw new Exception(); } -#pragma warning disable IDE0060 - internal static void PostOpenInsightMetrologyViewerAttachments(IFileRead fileRead, Logistics logistics, string openInsightMetrologyViewerAPI, DateTime dateTime, string json, List descriptions, string matchDirectory) -#pragma warning restore IDE0060 + internal static long GetHeaderId(IFileRead fileRead, Logistics logistics, string openInsightMetrologyViewerAPI, DateTime dateTime, int weekOfYear, string json, List descriptions) { + long result; if (string.IsNullOrEmpty(json)) { WSRequest wsRequest = new(fileRead, logistics, descriptions); - (json, WS.Results wsResults) = WS.SendData(openInsightMetrologyViewerAPI, wsRequest); + string directory = Path.Combine(openInsightMetrologyViewerAPI, dateTime.Year.ToString(), $"WW{weekOfYear:00}"); + (json, WS.Results wsResults) = WS.SendData(openInsightMetrologyViewerAPI, logistics.Sequence, directory, wsRequest); if (!wsResults.Success) throw new Exception(wsResults.ToString()); } WS.Results metrologyWSRequest = JsonSerializer.Deserialize(json, new JsonSerializerOptions { PropertyNameCaseInsensitive = true }); - long wsResultsHeaderID = metrologyWSRequest.HeaderID; + result = metrologyWSRequest.HeaderID; + return result; + } + +#pragma warning disable IDE0060 + internal static void PostOpenInsightMetrologyViewerAttachments(IFileRead fileRead, Logistics logistics, string openInsightMetrologyViewerAPI, List descriptions, string matchDirectory, string subGroupId, long headerId, string headerIdDirectory) +#pragma warning restore IDE0060 + { string[] jsonFiles = Directory.GetFiles(matchDirectory, "*.json", SearchOption.TopDirectoryOnly); if (jsonFiles.Length != 1) - throw new Exception($"Invalid source file count for <{wsResultsHeaderID}>!{Environment.NewLine}{json}"); - List headerAttachments = new() { new WS.Attachment(descriptions[0].HeaderUniqueId, "Data.json", jsonFiles.First()) }; - WS.AttachFiles(openInsightMetrologyViewerAPI, wsResultsHeaderID, headerAttachments, dataAttachments: null); + throw new Exception($"Invalid source file count for <{headerId}>!"); + List headerAttachments = new() + { + new WS.Attachment(subGroupId, headerId, headerIdDirectory, descriptions[0].HeaderUniqueId, "Data.json", jsonFiles.First()) + }; + WS.AttachFiles(openInsightMetrologyViewerAPI, headerAttachments, dataAttachments: null); } } \ No newline at end of file diff --git a/Adaptation/FileHandlers/OpenInsightMetrologyViewerAttachments/FileRead.cs b/Adaptation/FileHandlers/OpenInsightMetrologyViewerAttachments/FileRead.cs index 7865701..f02c521 100644 --- a/Adaptation/FileHandlers/OpenInsightMetrologyViewerAttachments/FileRead.cs +++ b/Adaptation/FileHandlers/OpenInsightMetrologyViewerAttachments/FileRead.cs @@ -5,6 +5,7 @@ using Adaptation.Shared.Duplicator; using Adaptation.Shared.Methods; using System; using System.Collections.Generic; +using System.Globalization; using System.IO; using System.Linq; using System.Text.Json; @@ -14,9 +15,8 @@ namespace Adaptation.FileHandlers.OpenInsightMetrologyViewerAttachments; public class FileRead : Shared.FileRead, IFileRead { - private readonly string _JobIdParentDirectory; - private readonly string _OpenInsightMetrologyViewerAPI; + private readonly string _OpenInsightMetrologyViewerFileShare; public FileRead(ISMTP smtp, Dictionary fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList modelObjectParameters, string equipmentDictionaryName, Dictionary> dummyRuns, Dictionary> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) : base(new Description(), false, smtp, fileParameter, cellInstanceName, connectionCount, cellInstanceConnectionName, fileConnectorConfiguration, equipmentTypeName, parameterizedModelObjectDefinitionType, modelObjectParameters, equipmentDictionaryName, dummyRuns, staticRuns, useCyclicalForDescription, isEAFHosted: connectionCount is null) @@ -30,8 +30,8 @@ public class FileRead : Shared.FileRead, IFileRead throw new Exception(cellInstanceConnectionName); if (!_IsDuplicator) throw new Exception(cellInstanceConnectionName); - _JobIdParentDirectory = GetJobIdParentDirectory(_FileConnectorConfiguration.SourceFileLocation); _OpenInsightMetrologyViewerAPI = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "OpenInsight.MetrologyViewerAPI"); + _OpenInsightMetrologyViewerFileShare = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, "OpenInsight.MetrologyViewerFileShare"); } void IFileRead.Move(Tuple> extractResults, Exception exception) @@ -109,26 +109,58 @@ public class FileRead : Shared.FileRead, IFileRead return results; } -#pragma warning disable IDE0060 - private void PostOpenInsightMetrologyViewerAttachments(string reportFullPath, DateTime dateTime, List descriptions) -#pragma warning restore IDE0060 +#nullable enable + + private string? GetHeaderIdDirectory(DateTime[] dateTimes, long headerId) { - string jobIdDirectory = Path.Combine(_JobIdParentDirectory, _Logistics.JobID); + string? result = null; + int weekNum; + string year; + string weekDirectory; + string checkDirectory; + foreach (DateTime dateTime in dateTimes) + { + year = dateTime.Year.ToString(); + weekNum = _Calendar.GetWeekOfYear(dateTime, CalendarWeekRule.FirstDay, DayOfWeek.Sunday); + weekDirectory = Path.Combine(_OpenInsightMetrologyViewerFileShare, dateTime.Year.ToString(), $"WW{weekNum:00}"); + if (!Directory.Exists(weekDirectory)) + _ = Directory.CreateDirectory(weekDirectory); + checkDirectory = Path.Combine(weekDirectory, $"-{headerId}"); + if (!Directory.Exists(checkDirectory)) + continue; + result = checkDirectory; + break; + } + return result; + } + + private void PostOpenInsightMetrologyViewerAttachments(DateTime dateTime, List descriptions) + { + string? json; + string? subGroupId; + string jobIdDirectory = Path.Combine(Path.GetDirectoryName(_FileConnectorConfiguration.AlternateTargetFolder) ?? throw new Exception(), _Logistics.JobID); if (!Directory.Exists(jobIdDirectory)) _ = Directory.CreateDirectory(jobIdDirectory); - string json; string[] matchDirectories = GetInProcessDirectory(jobIdDirectory); - if (!_StaticRuns.ContainsKey(_Logistics.Sequence)) - json = string.Empty; + if (!_StaticRuns.TryGetValue(_Logistics.Sequence, out List? values)) + (json, subGroupId) = (null, null); else { - if (_StaticRuns[_Logistics.Sequence].Count != 1) - throw new Exception($"{nameof(_StaticRuns)} has too many values for {_Logistics.Sequence}!"); - json = _StaticRuns[_Logistics.Sequence][0]; + if (values.Count != 1) + throw new Exception($"{nameof(_StaticRuns)} {values.Count} != 1 {_Logistics.Sequence}!"); + string[] segments = values[0].Split(new string[] { "|" }, StringSplitOptions.None); + json = segments[0]; + subGroupId = segments.Length > 1 ? segments[1] : null; lock (_StaticRuns) _ = _StaticRuns.Remove(_Logistics.Sequence); } - OpenInsightMetrologyViewer.WSRequest.PostOpenInsightMetrologyViewerAttachments(this, _Logistics, _OpenInsightMetrologyViewerAPI, dateTime, json, descriptions, matchDirectories[0]); + DateTime[] dateTimes = new DateTime[] { dateTime, dateTime.AddDays(-6.66) }; + int weekOfYear = _Calendar.GetWeekOfYear(dateTime, CalendarWeekRule.FirstDay, DayOfWeek.Sunday); + long headerId = OpenInsightMetrologyViewer.WSRequest.GetHeaderId(this, _Logistics, _OpenInsightMetrologyViewerAPI, dateTime, weekOfYear, json, descriptions); + string? headerIdDirectory = GetHeaderIdDirectory(dateTimes, headerId); + if (string.IsNullOrEmpty(headerIdDirectory)) + throw new Exception($"Didn't find header id directory <{headerId}>"); + OpenInsightMetrologyViewer.WSRequest.PostOpenInsightMetrologyViewerAttachments(this, _Logistics, _OpenInsightMetrologyViewerAPI, descriptions, matchDirectories[0], subGroupId, headerId, headerIdDirectory); } private Tuple> GetExtractResult(string reportFullPath, DateTime dateTime) @@ -141,7 +173,7 @@ public class FileRead : Shared.FileRead, IFileRead List descriptions = json.ProcessData.GetDescriptions(jsonElements); Test[] tests = (from l in descriptions select (Test)l.Test).ToArray(); if (_IsEAFHosted && _FileConnectorConfiguration.FileScanningIntervalInSeconds > 0) - PostOpenInsightMetrologyViewerAttachments(reportFullPath, dateTime, descriptions); + PostOpenInsightMetrologyViewerAttachments(dateTime, descriptions); results = new Tuple>(pdsf.Item1, tests, jsonElements, new List()); return results; } diff --git a/Adaptation/FileHandlers/csv/CSV.cs b/Adaptation/FileHandlers/csv/CSV.cs index 76f13f3..cc48933 100644 --- a/Adaptation/FileHandlers/csv/CSV.cs +++ b/Adaptation/FileHandlers/csv/CSV.cs @@ -36,7 +36,7 @@ public class CSV # else string[] lines = File.ReadAllLines(path, System.Text.Encoding.GetEncoding("ISO-8859-1")); // µ³® # endif - string? fileVersion = !lines.Any() ? null : GetFileVersion(lines.First()); + string? fileVersion = lines.Length == 0 ? null : GetFileVersion(lines.First()); for (int i = 1; i < lines.Length; i++) { if (lines[i].StartsWith("--INFO--")) diff --git a/Adaptation/FileHandlers/csv/Description.cs b/Adaptation/FileHandlers/csv/Description.cs index fc27f9e..0440357 100644 --- a/Adaptation/FileHandlers/csv/Description.cs +++ b/Adaptation/FileHandlers/csv/Description.cs @@ -121,7 +121,7 @@ public class Description : IDescription, Shared.Properties.IDescription List IDescription.GetDescriptions(IFileRead fileRead, Logistics logistics, List tests, IProcessData iProcessData) { List results = new(); - if (iProcessData is null || !iProcessData.Details.Any() || iProcessData is not ProcessData _) + if (iProcessData is null || iProcessData.Details.Count == 0 || iProcessData is not ProcessData _) results.Add(GetDefault(fileRead, logistics)); else { diff --git a/Adaptation/FileHandlers/csv/FileRead.cs b/Adaptation/FileHandlers/csv/FileRead.cs index 79becf4..8cbf81d 100644 --- a/Adaptation/FileHandlers/csv/FileRead.cs +++ b/Adaptation/FileHandlers/csv/FileRead.cs @@ -5,7 +5,6 @@ using Adaptation.Shared.Methods; using System; using System.Collections.Generic; using System.IO; -using System.Linq; using System.Text.Json; namespace Adaptation.FileHandlers.csv; @@ -105,7 +104,7 @@ public class FileRead : Shared.FileRead, IFileRead else { IProcessData iProcessData = new ProcessData(this, _Logistics, results.Item4, tickOffset: _TickOffset.Value); - if (!iProcessData.Details.Any()) + if (iProcessData.Details.Count == 0) throw new Exception(string.Concat("B) No Data - ", dateTime.Ticks)); results = iProcessData.GetResults(this, _Logistics, results.Item4); } diff --git a/Adaptation/FileHandlers/json/Description.cs b/Adaptation/FileHandlers/json/Description.cs index 08326c2..9c949b7 100644 --- a/Adaptation/FileHandlers/json/Description.cs +++ b/Adaptation/FileHandlers/json/Description.cs @@ -146,7 +146,7 @@ public class Description : IDescription, Shared.Properties.IDescription List IDescription.GetDescriptions(IFileRead fileRead, Logistics logistics, List tests, IProcessData iProcessData) { List results = new(); - if (iProcessData is null || !iProcessData.Details.Any() || iProcessData is not ProcessData processData) + if (iProcessData is null || iProcessData.Details.Count == 0 || iProcessData is not ProcessData processData) results.Add(GetDefault(fileRead, logistics)); else { diff --git a/Adaptation/FileHandlers/json/FileRead.cs b/Adaptation/FileHandlers/json/FileRead.cs index 4b6222b..cfe88ef 100644 --- a/Adaptation/FileHandlers/json/FileRead.cs +++ b/Adaptation/FileHandlers/json/FileRead.cs @@ -5,7 +5,6 @@ using Adaptation.Shared.Methods; using System; using System.Collections.Generic; using System.IO; -using System.Linq; using System.Text.Json; using System.Text.RegularExpressions; @@ -120,7 +119,7 @@ public class FileRead : Shared.FileRead, IFileRead } SetFileParameterLotID(mid); _Logistics.Update(mid, processData.Reactor); - if (!iProcessData.Details.Any()) + if (iProcessData.Details.Count == 0) throw new Exception(string.Concat("B) No Data - ", dateTime.Ticks)); results = iProcessData.GetResults(this, _Logistics, results.Item4); } diff --git a/Adaptation/FileHandlers/json/ProcessData.cs b/Adaptation/FileHandlers/json/ProcessData.cs index 295f67b..c382efa 100644 --- a/Adaptation/FileHandlers/json/ProcessData.cs +++ b/Adaptation/FileHandlers/json/ProcessData.cs @@ -47,7 +47,7 @@ public partial class ProcessData : IProcessData MesEntity = logistics.MesEntity; _Log = LogManager.GetLogger(typeof(ProcessData)); CSV csv = Parse(fileRead, logistics, fileInfoCollection); - if (!string.IsNullOrEmpty(csv.Info?.SampleName) && csv.ProfileHeader.ProfilePoints.Any()) + if (!string.IsNullOrEmpty(csv.Info?.SampleName) && csv.ProfileHeader.ProfilePoints.Count != 0) SetValues(logistics, tickOffset, csv); } @@ -266,7 +266,7 @@ public partial class ProcessData : IProcessData Employee = employee; JobID = logistics.JobID; SineBevelAngle = csv.Setup.SineBevelAngle.ToString(); - XStep = !csv.Setup.Steps.Any() ? string.Empty : csv.Setup.Steps.First().X.ToString(); + XStep = csv.Setup.Steps.Count == 0 ? string.Empty : csv.Setup.Steps.First().X.ToString(); foreach (ProfilePoint profilePoint in csv.ProfileHeader.ProfilePoints) { detail = new() diff --git a/Adaptation/Infineon/Monitoring/MonA/MonIn.cs b/Adaptation/Infineon/Monitoring/MonA/MonIn.cs index e9ffce8..7a8a711 100644 --- a/Adaptation/Infineon/Monitoring/MonA/MonIn.cs +++ b/Adaptation/Infineon/Monitoring/MonA/MonIn.cs @@ -18,21 +18,12 @@ public class MonIn : IMonIn, IDisposable public static MonIn GetInstance(string url = "http://moninhttp.{0}.infineon.com/input/text") { MonIn instance; - if (_Instances.ContainsKey(url)) + lock (_Instances) { - instance = _Instances[url]; - } - else - { - lock (_Instances) + if (_Instances.TryGetValue(url, out instance)) { - if (!_Instances.ContainsKey(url)) - { - instance = new MonIn(url); - _Instances.Add(url, instance); - } - else - instance = _Instances[url]; + instance = new MonIn(url); + _Instances.Add(url, instance); } } return instance; diff --git a/Adaptation/MET08RESISRP2100-Development.yml b/Adaptation/MET08RESISRP2100-Development.yml index 07db7ea..5e8f7bf 100644 --- a/Adaptation/MET08RESISRP2100-Development.yml +++ b/Adaptation/MET08RESISRP2100-Development.yml @@ -68,7 +68,8 @@ steps: - task: CopyFiles@2 displayName: "Copy Files to: - GhostPCL" inputs: - SourceFolder: '\\messv02ecc1.ec.local\EC_EAFRepository\Staging\DeploymentStorage\GhostPCL\gpcl6win64' + Contents: '*' + SourceFolder: '\\mesfs.infineon.com\EC_EAFRepository\Staging\DeploymentStorage\GhostPCL\gpcl6win64' TargetFolder: 'Adaptation\bin\$(Configuration)\net6.0\win-x64' OverWrite: true enabled: false @@ -76,7 +77,8 @@ steps: - task: CopyFiles@2 displayName: "Copy Files to: - LincPDFC" inputs: - SourceFolder: '\\messv02ecc1.ec.local\EC_EAFRepository\Staging\DeploymentStorage\LincPDFC\v2.6.6.21' + Contents: '*' + SourceFolder: '\\mesfs.infineon.com\EC_EAFRepository\Staging\DeploymentStorage\LincPDFC\v2.6.6.21' TargetFolder: 'Adaptation\bin\$(Configuration)\net6.0\win-x64' OverWrite: true enabled: false @@ -84,7 +86,8 @@ steps: - task: CopyFiles@2 displayName: "Copy Files to: - PDF-Text-Stripper" inputs: - SourceFolder: '\\messv02ecc1.ec.local\EC_EAFRepository\Staging\DeploymentStorage\PDF-Text-Stripper\v4.8.0.1' + Contents: '*' + SourceFolder: '\\mesfs.infineon.com\EC_EAFRepository\Staging\DeploymentStorage\PDF-Text-Stripper\v4.8.0.1' TargetFolder: 'Adaptation\bin\$(Configuration)\net6.0\win-x64' OverWrite: true enabled: false @@ -157,18 +160,18 @@ steps: - task: CopyFiles@2 displayName: 'Copy Files to: D:\Framework4.8' inputs: - SourceFolder: 'bin\$(Configuration)' Contents: "*$(Build.Repository.Name)*" + SourceFolder: 'bin\$(Configuration)' TargetFolder: 'D:\Framework4.8\$(GitCommitSeven)-$(Build.BuildId)-$(Build.Repository.Name)-$(Configuration)' OverWrite: true enabled: false - task: CopyFiles@2 - displayName: 'Copy Files to: \\messv02ecc1.ec.local\EC_EAFRepository' + displayName: 'Copy Files to: \\mesfs.infineon.com\EC_EAFRepository' inputs: - SourceFolder: 'bin\$(Configuration)' Contents: "*$(Build.Repository.Name)*" - TargetFolder: '\\messv02ecc1.ec.local\EC_EAFRepository\Staging\DeploymentStorage\Adaptation_$(Build.Repository.Name)' + SourceFolder: 'bin\$(Configuration)' + TargetFolder: '\\mesfs.infineon.com\EC_EAFRepository\Staging\DeploymentStorage\Adaptation_$(Build.Repository.Name)' OverWrite: true enabled: false diff --git a/Adaptation/MET08RESISRP2100.Tests.csproj b/Adaptation/MET08RESISRP2100.Tests.csproj index 9b0d007..2ded95a 100644 --- a/Adaptation/MET08RESISRP2100.Tests.csproj +++ b/Adaptation/MET08RESISRP2100.Tests.csproj @@ -8,10 +8,9 @@ disable false - 10.0 disable win-x64 - net7.0 + net8.0 trx @@ -33,7 +32,10 @@ Linux - + + + + NU1701 NU1701 @@ -43,27 +45,27 @@ NU1701 NU1701 - - - - - - - - - - - - - - + + + + + + + + + + + + + + NU1701 - - - - - - + + + + + + diff --git a/Adaptation/MET08RESISRP2100.yml b/Adaptation/MET08RESISRP2100.yml index 568f1cd..bb36298 100644 --- a/Adaptation/MET08RESISRP2100.yml +++ b/Adaptation/MET08RESISRP2100.yml @@ -68,21 +68,24 @@ steps: - task: CopyFiles@2 displayName: "Copy Files to: - GhostPCL" inputs: - SourceFolder: '\\messv02ecc1.ec.local\EC_EAFRepository\Staging\DeploymentStorage\GhostPCL\gpcl6win64' + Contents: '*' + SourceFolder: '\\mesfs.infineon.com\EC_EAFRepository\Staging\DeploymentStorage\GhostPCL\gpcl6win64' TargetFolder: 'Adaptation\bin\$(Configuration)\net6.0\win-x64' OverWrite: true - task: CopyFiles@2 displayName: "Copy Files to: - LincPDFC" inputs: - SourceFolder: '\\messv02ecc1.ec.local\EC_EAFRepository\Staging\DeploymentStorage\LincPDFC\v2.6.6.21' + Contents: '*' + SourceFolder: '\\mesfs.infineon.com\EC_EAFRepository\Staging\DeploymentStorage\LincPDFC\v2.6.6.21' TargetFolder: 'Adaptation\bin\$(Configuration)\net6.0\win-x64' OverWrite: true - task: CopyFiles@2 displayName: "Copy Files to: - PDF-Text-Stripper" inputs: - SourceFolder: '\\messv02ecc1.ec.local\EC_EAFRepository\Staging\DeploymentStorage\PDF-Text-Stripper\v4.8.0.1' + Contents: '*' + SourceFolder: '\\mesfs.infineon.com\EC_EAFRepository\Staging\DeploymentStorage\PDF-Text-Stripper\v4.8.0.1' TargetFolder: 'Adaptation\bin\$(Configuration)\net6.0\win-x64' OverWrite: true @@ -154,17 +157,17 @@ steps: - task: CopyFiles@2 displayName: 'Copy Files to: D:\Framework4.8' inputs: - SourceFolder: 'bin\$(Configuration)' Contents: "*$(Build.Repository.Name)*" + SourceFolder: 'bin\$(Configuration)' TargetFolder: 'D:\Framework4.8\$(GitCommitSeven)-$(Build.BuildId)-$(Build.Repository.Name)-$(Configuration)' OverWrite: true - task: CopyFiles@2 - displayName: 'Copy Files to: \\messv02ecc1.ec.local\EC_EAFRepository' + displayName: 'Copy Files to: \\mesfs.infineon.com\EC_EAFRepository' inputs: - SourceFolder: 'bin\$(Configuration)' Contents: "*$(Build.Repository.Name)*" - TargetFolder: '\\messv02ecc1.ec.local\EC_EAFRepository\Staging\DeploymentStorage\Adaptation_$(Build.Repository.Name)' + SourceFolder: 'bin\$(Configuration)' + TargetFolder: '\\mesfs.infineon.com\EC_EAFRepository\Staging\DeploymentStorage\Adaptation_$(Build.Repository.Name)' OverWrite: true - script: | diff --git a/Adaptation/Shared/Duplicator/Description.cs b/Adaptation/Shared/Duplicator/Description.cs index ee6eb49..964612e 100644 --- a/Adaptation/Shared/Duplicator/Description.cs +++ b/Adaptation/Shared/Duplicator/Description.cs @@ -110,7 +110,7 @@ public class Description : IDescription, Properties.IDescription List IDescription.GetDescriptions(IFileRead fileRead, Logistics logistics, List tests, IProcessData iProcessData) { List results = new(); - if (iProcessData is null || !iProcessData.Details.Any()) + if (iProcessData is null || iProcessData.Details.Count == 0) results.Add(GetDefault(fileRead, logistics)); else { diff --git a/Adaptation/Shared/FileRead.cs b/Adaptation/Shared/FileRead.cs index 3e90c24..1004c7f 100644 --- a/Adaptation/Shared/FileRead.cs +++ b/Adaptation/Shared/FileRead.cs @@ -163,7 +163,7 @@ public class FileRead : Properties.IFileRead protected static ModelObjectParameterDefinition[] GetProperties(string cellInstanceConnectionName, IList modelObjectParameters, string propertyNamePrefix) { ModelObjectParameterDefinition[] results = (from l in modelObjectParameters where l.Name.StartsWith(propertyNamePrefix) select l).ToArray(); - if (!results.Any()) + if (results.Length == 0) throw new Exception(cellInstanceConnectionName); return results; } @@ -171,7 +171,7 @@ public class FileRead : Properties.IFileRead protected static ModelObjectParameterDefinition[] GetProperties(string cellInstanceConnectionName, IList modelObjectParameters, string propertyNamePrefix, string propertyNameSuffix) { ModelObjectParameterDefinition[] results = (from l in modelObjectParameters where l.Name.StartsWith(propertyNamePrefix) && l.Name.EndsWith(propertyNameSuffix) select l).ToArray(); - if (!results.Any()) + if (results.Length == 0) throw new Exception(cellInstanceConnectionName); return results; } @@ -203,7 +203,7 @@ public class FileRead : Properties.IFileRead } lock (threadExceptions) { - if (threadExceptions.Any()) + if (threadExceptions.Count != 0) { foreach (Exception item in threadExceptions) _Log.Error(string.Concat(item.Message, Environment.NewLine, Environment.NewLine, item.StackTrace)); @@ -241,7 +241,7 @@ public class FileRead : Properties.IFileRead if (!_IsDuplicator) WriteAllLines(to, results); } - if (extractResults is not null && extractResults.Item4 is not null && extractResults.Item4.Any()) + if (extractResults is not null && extractResults.Item4 is not null && extractResults.Item4.Count != 0) { string itemFile; List directories = new(); @@ -268,7 +268,7 @@ public class FileRead : Properties.IFileRead string dateValue; string rdsPlaceholder = "%RDS%"; string mesEntityPlaceholder = "%MesEntity%"; - if (!descriptions.Any() || string.IsNullOrEmpty(descriptions[0].RDS)) + if (descriptions.Count == 0 || string.IsNullOrEmpty(descriptions[0].RDS)) rds = logistics.MID; else rds = descriptions[0].RDS; @@ -312,7 +312,7 @@ public class FileRead : Properties.IFileRead preWait = dateTime.AddMilliseconds(1234).Ticks; else preWait = dateTime.AddMilliseconds(_FileConnectorConfiguration.FileHandleWaitTime.Value).Ticks; - if (!collection.Any()) + if (collection.Count == 0) duplicateFiles.Add(duplicateFile); string fileName = Path.GetFileNameWithoutExtension(logistics.ReportFullPath); string successFile = string.Concat(successDirectory, @"\", Path.GetFileName(logistics.ReportFullPath)); @@ -422,10 +422,12 @@ public class FileRead : Properties.IFileRead protected void WritePDSF(IFileRead fileRead, JsonElement[] jsonElements) { string directory; + string weekOfYear = _Calendar.GetWeekOfYear(_Logistics.DateTimeFromSequence, CalendarWeekRule.FirstDay, DayOfWeek.Sunday).ToString("00"); + string weekDirectory = $"{_Logistics.DateTimeFromSequence:yyyy}_Week_{weekOfYear}{@"\"}{_Logistics.DateTimeFromSequence:yyyy-MM-dd}"; if (!_CellInstanceConnectionName.StartsWith(_CellInstanceName) && _CellInstanceConnectionNameBase == _EquipmentType) - directory = Path.Combine(_TracePath, _EquipmentType, "Target", _CellInstanceName, _CellInstanceConnectionName); + directory = Path.Combine(_TracePath, _EquipmentType, "Target", weekDirectory, _CellInstanceName, _CellInstanceConnectionName); else - directory = Path.Combine(_TracePath, _EquipmentType, "Source", _CellInstanceName, _CellInstanceConnectionName); + directory = Path.Combine(_TracePath, _EquipmentType, "Source", weekDirectory, _CellInstanceName, _CellInstanceConnectionName); if (!Directory.Exists(directory)) _ = Directory.CreateDirectory(directory); string file = Path.Combine(directory, string.Concat(_Logistics.MesEntity, "_", _Logistics.Sequence, ".ipdsf")); @@ -460,6 +462,7 @@ public class FileRead : Properties.IFileRead protected void TriggerEvents(Tuple> extractResults, List headerNames, Dictionary keyValuePairs) { object value; + string segments; string description; List list; for (int i = 0; i < extractResults.Item3.Length; i++) @@ -467,10 +470,10 @@ public class FileRead : Properties.IFileRead _Log.Debug(string.Concat("TriggerEvent - {", _Logistics.ReportFullPath, "} ", i, " of ", extractResults.Item3.Length)); foreach (JsonProperty jsonProperty in extractResults.Item3[i].EnumerateObject()) { - if (jsonProperty.Value.ValueKind != JsonValueKind.String || !keyValuePairs.ContainsKey(jsonProperty.Name)) + if (jsonProperty.Value.ValueKind != JsonValueKind.String || !keyValuePairs.TryGetValue(jsonProperty.Name, out segments)) description = string.Empty; else - description = keyValuePairs[jsonProperty.Name].Split('|')[0]; + description = segments.Split('|')[0]; if (!_UseCyclicalForDescription || headerNames.Contains(jsonProperty.Name)) value = jsonProperty.Value.ToString(); else @@ -502,10 +505,10 @@ public class FileRead : Properties.IFileRead matches = Directory.GetFiles(_FileConnectorConfiguration.SourceFileLocation, segments.Last(), SearchOption.AllDirectories); else matches = Directory.GetFiles(_FileConnectorConfiguration.SourceFileLocation, segments.Last(), SearchOption.TopDirectoryOnly); - if (matches.Any()) + if (matches.Length != 0) break; } - if (matches is null || !matches.Any()) + if (matches is null || matches.Length == 0) results = null; else { @@ -568,16 +571,99 @@ public class FileRead : Properties.IFileRead } } + internal static List GetDirectoryNames(string directory) + { +#nullable enable + List results = new(); + string? fileName; + string? checkDirectory = directory; + string? pathRoot = Path.GetPathRoot(directory); + string extension = Path.GetExtension(directory); + if (string.IsNullOrEmpty(pathRoot)) + throw new NullReferenceException(nameof(pathRoot)); + if (Directory.Exists(directory)) + { + fileName = Path.GetFileName(directory); + if (!string.IsNullOrEmpty(fileName)) + results.Add(fileName); + } + else if ((string.IsNullOrEmpty(extension) || extension.Length > 3) && !File.Exists(directory)) + { + fileName = Path.GetFileName(directory); + if (!string.IsNullOrEmpty(fileName)) + results.Add(fileName); + } + for (int i = 0; i < int.MaxValue; i++) + { + checkDirectory = Path.GetDirectoryName(checkDirectory); + if (string.IsNullOrEmpty(checkDirectory) || checkDirectory == pathRoot) + break; + fileName = Path.GetFileName(checkDirectory); + if (string.IsNullOrEmpty(fileName)) + continue; + results.Add(fileName); + } + results.Add(pathRoot); + results.Reverse(); + return results; +#nullable disable + } + + private string GetJobIdDirectory(string path) + { + string result; + List directoryNames = GetDirectoryNames(path); + if (!directoryNames.Contains(_Logistics.JobID)) + result = Path.GetDirectoryName(path); + else + { + result = string.Empty; + foreach (string directoryName in directoryNames) + { + result = Path.Combine(result, directoryName); + if (directoryName == _Logistics.JobID) + break; + } + } + return result; + } + + private static void DeleteEmptyTopDirectories(string rootDirectory) + { + if (Directory.Exists(rootDirectory)) + { + string[] files; + string[] directories; + string[] subDirectories = Directory.GetDirectories(rootDirectory, "*", SearchOption.TopDirectoryOnly); + foreach (string subDirectory in subDirectories) + { + files = Directory.GetFiles(subDirectory, "*", SearchOption.AllDirectories); + if (files.Length > 0) + continue; + directories = Directory.GetDirectories(subDirectory, "*", SearchOption.TopDirectoryOnly); + if (directories.Length > 0) + continue; + try + { Directory.Delete(subDirectory); } + catch (UnauthorizedAccessException) + { + new DirectoryInfo(subDirectory).Attributes = FileAttributes.Normal; + Directory.Delete(subDirectory); + } + } + } + } + private void Shared1811(string to, FileInfo sourceFile) { if (!_IsDuplicator && _FileConnectorConfiguration.SourceFileFilter != "*" && sourceFile.Exists && sourceFile.Length < _MinFileLength) { string directoryName = Path.GetFileName(to); - string jobIdDirectory = Path.GetDirectoryName(to); + string jobIdDirectory = GetJobIdDirectory(to); DateTime dateTime = DateTime.Now.AddMinutes(-15); string weekOfYear = _Calendar.GetWeekOfYear(_Logistics.DateTimeFromSequence, CalendarWeekRule.FirstDay, DayOfWeek.Sunday).ToString("00"); string weekDirectory = $"{_Logistics.DateTimeFromSequence:yyyy}_Week_{weekOfYear}{@"\"}{_Logistics.DateTimeFromSequence:yyyy-MM-dd}"; - string destinationDirectory = string.Concat(jobIdDirectory, @"\_ Ignore 100 bytes\", weekDirectory, @"\", directoryName); + string destinationDirectory = Path.Combine(jobIdDirectory, "_ Ignore 100 bytes", weekDirectory, directoryName); if (!Directory.Exists(destinationDirectory)) _ = Directory.CreateDirectory(destinationDirectory); File.Move(sourceFile.FullName, string.Concat(destinationDirectory, @"\", sourceFile.Name)); @@ -588,13 +674,13 @@ public class FileRead : Properties.IFileRead { if (!checkDirectory.Contains('_')) continue; - if (Directory.GetDirectories(checkDirectory, "*", SearchOption.TopDirectoryOnly).Any()) + if (Directory.GetDirectories(checkDirectory, "*", SearchOption.TopDirectoryOnly).Length != 0) continue; - if (Directory.GetFiles(checkDirectory, "*", SearchOption.TopDirectoryOnly).Any()) + if (Directory.GetFiles(checkDirectory, "*", SearchOption.TopDirectoryOnly).Length != 0) continue; - if (Directory.GetDirectories(checkDirectory, "*", SearchOption.AllDirectories).Any()) + if (Directory.GetDirectories(checkDirectory, "*", SearchOption.AllDirectories).Length != 0) continue; - if (Directory.GetFiles(checkDirectory, "*", SearchOption.AllDirectories).Any()) + if (Directory.GetFiles(checkDirectory, "*", SearchOption.AllDirectories).Length != 0) continue; if (new DirectoryInfo(checkDirectory).CreationTime > dateTime) continue; @@ -602,6 +688,7 @@ public class FileRead : Properties.IFileRead } } catch (Exception) { throw; } + DeleteEmptyTopDirectories(jobIdDirectory); } } @@ -611,7 +698,7 @@ public class FileRead : Properties.IFileRead { foreach (string directory in (from l in directories orderby l.Split('\\').Length descending select l).Distinct()) { - if (Directory.Exists(directory) && !Directory.GetFiles(directory).Any()) + if (Directory.Exists(directory) && Directory.GetFiles(directory).Length == 0) Directory.Delete(directory); } } diff --git a/Adaptation/Shared/Logistics.cs b/Adaptation/Shared/Logistics.cs index a6ca882..cb1f805 100644 --- a/Adaptation/Shared/Logistics.cs +++ b/Adaptation/Shared/Logistics.cs @@ -91,7 +91,7 @@ public class Logistics : ILogistics string[] segments; _FileInfo = new(reportFullPath); _Logistics1 = logistics.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries).ToList(); - if (!Logistics1.Any() || !Logistics1[0].StartsWith("LOGISTICS_1")) + if (Logistics1.Count == 0 || !Logistics1[0].StartsWith("LOGISTICS_1")) { _NullData = null; _JobID = "null"; diff --git a/Adaptation/Shared/Metrology/WS.Attachment.cs b/Adaptation/Shared/Metrology/WS.Attachment.cs index ea105ed..8edb116 100644 --- a/Adaptation/Shared/Metrology/WS.Attachment.cs +++ b/Adaptation/Shared/Metrology/WS.Attachment.cs @@ -2,18 +2,27 @@ public partial class WS { + public class Attachment { + public string SubGroupId { get; set; } + public long HeaderId { get; set; } + public string HeaderIdDirectory { get; set; } public string UniqueId { get; set; } public string DestinationFileName { get; set; } public string SourceFileName { get; set; } + public string AttachmentId { get; set; } - public Attachment(string uniqueId, string destinationFileName, string sourceFileName) + public Attachment(string subGroupId, long headerId, string headerIdDirectory, string uniqueId, string destinationFileName, string sourceFileName) { + SubGroupId = subGroupId; + HeaderId = headerId; + HeaderIdDirectory = headerIdDirectory; UniqueId = uniqueId; DestinationFileName = destinationFileName; SourceFileName = sourceFileName; + AttachmentId = System.Guid.NewGuid().ToString(); } } diff --git a/Adaptation/Shared/Metrology/WS.cs b/Adaptation/Shared/Metrology/WS.cs index 844efea..4e43fa3 100644 --- a/Adaptation/Shared/Metrology/WS.cs +++ b/Adaptation/Shared/Metrology/WS.cs @@ -10,7 +10,7 @@ namespace Adaptation.Shared.Metrology; public partial class WS { - public static (string, Results) SendData(string url, object payload, int timeoutSeconds = 120) + public static (string, Results) SendData(string url, long sequence, string directory, object payload, int timeoutSeconds = 120) { Results results = new(); string resultsJson = string.Empty; @@ -31,6 +31,10 @@ public partial class WS HttpResponseMessage httpResponseMessage = httpClient.SendAsync(httpRequestMessage, HttpCompletionOption.ResponseContentRead).Result; resultsJson = httpResponseMessage.Content.ReadAsStringAsync().Result; results = JsonSerializer.Deserialize(resultsJson, new JsonSerializerOptions { PropertyNameCaseInsensitive = true }); + string checkDirectory = Path.Combine(directory, $"-{results.HeaderID}"); + if (!Directory.Exists(checkDirectory)) + _ = Directory.CreateDirectory(checkDirectory); + File.WriteAllText(Path.Combine(checkDirectory, $"{sequence}.json"), json); } if (!results.Success) results.Errors.Add(results.ToString()); @@ -51,58 +55,42 @@ public partial class WS return new(resultsJson, results); } - // this method is a wrapper for attaching a file to either a header or data record - // URL is the same URL used for SendData, ex: http://localhost/api/inbound/CDE - // attachToHeaderId is the ID returned by SendData - // attachToDataUniqueId is the string unique ID for the data record, aka the Title of the Sharepoint list entry - // fileContents is a byte array with the contents of the file - // fileName is which attachment this is, image.pdf, data.pdf, data.txt, header.pdf, etc - // timeoutSeconds is configured as the request timeout - // this method will either succeed or throw an exception - // also, this has been made synchronous - public static void AttachFile(string url, long attachToHeaderId, string attachToDataUniqueId, byte[] fileContents, string fileName, int timeoutSeconds = 60) + public static void AttachFile(string url, Attachment attachment, int timeoutSeconds = 60) { using HttpClient httpClient = new(); - string requestUrl = url + "/attachment?headerid=" + attachToHeaderId.ToString(); - if (!string.IsNullOrWhiteSpace(attachToDataUniqueId)) - { - requestUrl += "&datauniqueid="; - requestUrl += System.Net.WebUtility.UrlEncode(attachToDataUniqueId); - } - requestUrl += "&filename="; // this is just so the web server log shows the filename - requestUrl += System.Net.WebUtility.UrlEncode(fileName); - + string json = JsonSerializer.Serialize(attachment); httpClient.Timeout = new TimeSpan(0, 0, 0, timeoutSeconds, 0); - - MultipartFormDataContent multipartFormDataContent = new(); - ByteArrayContent byteArrayContent = new(fileContents); - byteArrayContent.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/octet-stream"); - - multipartFormDataContent.Add(byteArrayContent, "attachment", fileName); - - HttpResponseMessage httpResponseMessage = httpClient.PostAsync(requestUrl, multipartFormDataContent).Result; - - if (httpResponseMessage.IsSuccessStatusCode) - return; - - string resultBody = httpResponseMessage.Content.ReadAsStringAsync().Result; - - throw new Exception("Attachment failed: " + resultBody); + StringContent httpContent = new(json, Encoding.UTF8, "application/json"); + HttpResponseMessage httpResponseMessage = httpClient.PostAsync($"{url}/attachment", httpContent).Result; + if (!httpResponseMessage.IsSuccessStatusCode) + { + string resultBody = httpResponseMessage.Content.ReadAsStringAsync().Result; + throw new Exception($"Attachment failed: {resultBody}"); + } } - public static void AttachFiles(string url, long headerID, List headerAttachments = null, List dataAttachments = null) + public static void AttachFiles(string url, List headerAttachments = null, List dataAttachments = null) { + string directory; try { if (headerAttachments is not null) { foreach (Attachment attachment in headerAttachments) - AttachFile(url, headerID, "", File.ReadAllBytes(attachment.SourceFileName), attachment.DestinationFileName); + { + directory = Path.GetDirectoryName(attachment.HeaderIdDirectory) ?? throw new Exception(); + File.Copy(attachment.SourceFileName, Path.Combine(directory, attachment.AttachmentId, attachment.DestinationFileName), overwrite: true); + AttachFile(url, attachment); + } } if (dataAttachments is not null) { foreach (Attachment attachment in dataAttachments) - AttachFile(url, headerID, attachment.UniqueId, File.ReadAllBytes(attachment.SourceFileName), attachment.DestinationFileName); + { + directory = Path.GetDirectoryName(attachment.HeaderIdDirectory) ?? throw new Exception(); + File.Copy(attachment.SourceFileName, Path.Combine(directory, attachment.AttachmentId, attachment.DestinationFileName), overwrite: true); + AttachFile(url, attachment); + } } //MessageBox.Show(r.ToString()); } diff --git a/Adaptation/Shared/ProcessDataStandardFormat.cs b/Adaptation/Shared/ProcessDataStandardFormat.cs index b256f0f..136ccae 100644 --- a/Adaptation/Shared/ProcessDataStandardFormat.cs +++ b/Adaptation/Shared/ProcessDataStandardFormat.cs @@ -23,7 +23,7 @@ public class ProcessDataStandardFormat public static string GetPDSFText(IFileRead fileRead, Logistics logistics, JsonElement[] jsonElements, string logisticsText) { string result; - if (!jsonElements.Any()) + if (jsonElements.Length == 0) result = string.Empty; else { @@ -146,7 +146,7 @@ public class ProcessDataStandardFormat string logistics = pdsf.Item1; string[] columns = pdsf.Item2; string[] bodyLines = pdsf.Item3; - if (!bodyLines.Any() || !bodyLines[0].Contains('\t')) + if (bodyLines.Length == 0 || !bodyLines[0].Contains('\t')) results = JsonSerializer.Deserialize("[]"); else { @@ -211,9 +211,10 @@ public class ProcessDataStandardFormat public static Tuple>>> GetTestDictionary(Tuple pdsf) { Dictionary>> results = new(); + List collection; string testColumn = nameof(Test); Dictionary> keyValuePairs = GetDictionary(pdsf); - if (!keyValuePairs.ContainsKey(testColumn)) + if (!keyValuePairs.TryGetValue(testColumn, out collection)) throw new Exception(); int min; int max; @@ -221,9 +222,9 @@ public class ProcessDataStandardFormat List vs; string columnKey; Dictionary> tests = new(); - for (int i = 0; i < keyValuePairs[testColumn].Count; i++) + for (int i = 0; i < collection.Count; i++) { - if (Enum.TryParse(keyValuePairs[testColumn][i], out Test test)) + if (Enum.TryParse(collection[i], out Test test)) { if (!results.ContainsKey(test)) { @@ -325,7 +326,7 @@ public class ProcessDataStandardFormat _ = line.Append(';'); } } - if (!pairedParameterNames.Any()) + if (pairedParameterNames.Count == 0) { _ = line.Remove(line.Length - 1, 1); _ = result.AppendLine(line.ToString()); diff --git a/Adaptation/Shared/Test.cs b/Adaptation/Shared/Test.cs index 324dca1..169f05b 100644 --- a/Adaptation/Shared/Test.cs +++ b/Adaptation/Shared/Test.cs @@ -3,7 +3,7 @@ namespace Adaptation.Shared; public enum Test { AFMRoughness = 34, - BioRadsrpx = 25, + BioRadQS408M = 25, BioRadStratus = 26, BreakdownVoltageCenter = 0, BreakdownVoltageEdge = 1, @@ -14,6 +14,7 @@ public enum Test CandelaPSL = 38, CandelaVerify = 37, CDE = 24, + Climatec = 54, //Largest CV = 3, DailyRPMAverage = 19, DailyRPMPLRatio = 20, @@ -38,7 +39,7 @@ public enum Test RPMPLRatio = 17, RPMXY = 15, SP1 = 8, - SRP2100 = 53, //Largest + SRP2100 = 53, Tencor = 7, UV = 35, VerificationLehighton = 14, diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/MET08RESISRP2100.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/MET08RESISRP2100.cs index 378b128..8142961 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/MET08RESISRP2100.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/MET08RESISRP2100.cs @@ -1,3 +1,4 @@ +#if v2_49_0 using Adaptation._Tests.Shared; using Microsoft.Extensions.Logging; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -47,7 +48,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting?.Dispose(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__MoveMatchingFiles() { @@ -58,7 +61,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__OpenInsightMetrologyViewer() { @@ -69,7 +74,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__IQSSi() { @@ -80,7 +87,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__OpenInsight() { @@ -91,7 +100,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments() { @@ -102,7 +113,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__APC() { @@ -113,7 +126,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__SPaCe() { @@ -124,7 +139,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__Processed() { @@ -135,7 +152,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__Archive() { @@ -146,7 +165,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__Dummy() { @@ -157,4 +178,5 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/SRP-EQPT.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/SRP-EQPT.cs index 956b8b9..0e1aa73 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/SRP-EQPT.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/SRP-EQPT.cs @@ -1,3 +1,4 @@ +#if v2_49_0 using Adaptation._Tests.Shared; using Microsoft.Extensions.Logging; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -47,7 +48,9 @@ public class SRP_EQPT : EAFLoggingUnitTesting EAFLoggingUnitTesting?.Dispose(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__SRP_EQPT__csv() { @@ -58,4 +61,5 @@ public class SRP_EQPT : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/SRP.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/SRP.cs index 467cc55..4c9ae4c 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/SRP.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.0/SRP.cs @@ -1,3 +1,4 @@ +#if v2_49_0 using Adaptation._Tests.Shared; using Microsoft.Extensions.Logging; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -47,7 +48,9 @@ public class SRP : EAFLoggingUnitTesting EAFLoggingUnitTesting?.Dispose(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__SRP__json() { @@ -58,4 +61,5 @@ public class SRP : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/MET08RESISRP2100.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/MET08RESISRP2100.cs index 260408b..fa5e343 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/MET08RESISRP2100.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/MET08RESISRP2100.cs @@ -1,3 +1,4 @@ +#if v2_49_2 using Adaptation._Tests.Shared; using Microsoft.Extensions.Logging; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -47,7 +48,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting?.Dispose(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__MoveMatchingFiles() { @@ -58,7 +61,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__OpenInsightMetrologyViewer() { @@ -69,7 +74,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__IQSSi() { @@ -80,7 +87,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__OpenInsight() { @@ -91,7 +100,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments() { @@ -102,7 +113,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__APC() { @@ -113,7 +126,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__SPaCe() { @@ -124,7 +139,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__Processed() { @@ -135,7 +152,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__Archive() { @@ -146,7 +165,9 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__Dummy() { @@ -157,4 +178,5 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/SRP-EQPT.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/SRP-EQPT.cs index febbaf6..e1f81cf 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/SRP-EQPT.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/SRP-EQPT.cs @@ -1,3 +1,4 @@ +#if v2_49_2 using Adaptation._Tests.Shared; using Microsoft.Extensions.Logging; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -47,7 +48,9 @@ public class SRP_EQPT : EAFLoggingUnitTesting EAFLoggingUnitTesting?.Dispose(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__SRP_EQPT__csv() { @@ -58,4 +61,5 @@ public class SRP_EQPT : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/SRP.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/SRP.cs index 30e11ef..f471801 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/SRP.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.2/SRP.cs @@ -1,3 +1,4 @@ +#if v2_49_2 using Adaptation._Tests.Shared; using Microsoft.Extensions.Logging; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -47,7 +48,9 @@ public class SRP : EAFLoggingUnitTesting EAFLoggingUnitTesting?.Dispose(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__SRP__json() { @@ -58,4 +61,5 @@ public class SRP : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/MET08RESISRP2100.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/MET08RESISRP2100.cs index 7107c3b..299dd58 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/MET08RESISRP2100.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/MET08RESISRP2100.cs @@ -1,3 +1,4 @@ +#if v2_49_3 using Adaptation._Tests.Shared; using Microsoft.Extensions.Logging; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -177,4 +178,5 @@ public class MET08RESISRP2100 : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/SRP-EQPT.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/SRP-EQPT.cs index 3e676e1..0322200 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/SRP-EQPT.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/SRP-EQPT.cs @@ -1,3 +1,4 @@ +#if v2_49_3 using Adaptation._Tests.Shared; using Microsoft.Extensions.Logging; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -60,4 +61,5 @@ public class SRP_EQPT : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/SRP.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/SRP.cs index dfc12d3..dd23315 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/SRP.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.49.3/SRP.cs @@ -1,3 +1,4 @@ +#if v2_49_3 using Adaptation._Tests.Shared; using Microsoft.Extensions.Logging; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -60,4 +61,5 @@ public class SRP : EAFLoggingUnitTesting EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.52.0/MET08RESISRP2100.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.52.0/MET08RESISRP2100.cs new file mode 100644 index 0000000..f99f0fd --- /dev/null +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.52.0/MET08RESISRP2100.cs @@ -0,0 +1,182 @@ +#if v2_52_0 +using Adaptation._Tests.Shared; +using Microsoft.Extensions.Logging; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.IO; +using System.Reflection; + +namespace Adaptation._Tests.CreateSelfDescription.Staging.v2_52_0; + +[TestClass] +public class MET08RESISRP2100 : EAFLoggingUnitTesting +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + internal static string DummyRoot { get; private set; } + internal static MET08RESISRP2100 EAFLoggingUnitTesting { get; private set; } + + static MET08RESISRP2100() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy"; + + public MET08RESISRP2100() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false) + { + if (EAFLoggingUnitTesting is null) + throw new Exception(); + } + + public MET08RESISRP2100(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false) + { + } + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + EAFLoggingUnitTesting ??= new MET08RESISRP2100(testContext); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(testContext.TestName, " - ClassInitialize")); + string[] fileNameAndText = EAFLoggingUnitTesting.AdaptationTesting.GetCSharpText(testContext.TestName); + File.WriteAllText(fileNameAndText[0], fileNameAndText[1]); + File.WriteAllText(fileNameAndText[2], fileNameAndText[3]); + } + + [ClassCleanup()] + public static void ClassCleanup() + { + EAFLoggingUnitTesting?.Logger?.LogInformation("Cleanup"); + EAFLoggingUnitTesting?.Dispose(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__MoveMatchingFiles() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__OpenInsightMetrologyViewer() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__IQSSi() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__OpenInsight() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__APC() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__SPaCe() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__Processed() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__Archive() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__Dummy() + { + string check = "638191594841489860.zip"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.52.0/SRP-EQPT.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.52.0/SRP-EQPT.cs new file mode 100644 index 0000000..5072a07 --- /dev/null +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.52.0/SRP-EQPT.cs @@ -0,0 +1,65 @@ +#if v2_52_0 +using Adaptation._Tests.Shared; +using Microsoft.Extensions.Logging; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.IO; +using System.Reflection; + +namespace Adaptation._Tests.CreateSelfDescription.Staging.v2_52_0; + +[TestClass] +public class SRP_EQPT : EAFLoggingUnitTesting +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + internal static string DummyRoot { get; private set; } + internal static SRP_EQPT EAFLoggingUnitTesting { get; private set; } + + static SRP_EQPT() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy"; + + public SRP_EQPT() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false) + { + if (EAFLoggingUnitTesting is null) + throw new Exception(); + } + + public SRP_EQPT(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false) + { + } + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + EAFLoggingUnitTesting ??= new SRP_EQPT(testContext); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(testContext.TestName, " - ClassInitialize")); + string[] fileNameAndText = EAFLoggingUnitTesting.AdaptationTesting.GetCSharpText(testContext.TestName); + File.WriteAllText(fileNameAndText[0], fileNameAndText[1]); + File.WriteAllText(fileNameAndText[2], fileNameAndText[3]); + } + + [ClassCleanup()] + public static void ClassCleanup() + { + EAFLoggingUnitTesting?.Logger?.LogInformation("Cleanup"); + EAFLoggingUnitTesting?.Dispose(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__SRP_EQPT__csv() + { + string check = "*.csv"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.52.0/SRP.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.52.0/SRP.cs new file mode 100644 index 0000000..591f468 --- /dev/null +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.52.0/SRP.cs @@ -0,0 +1,65 @@ +#if v2_52_0 +using Adaptation._Tests.Shared; +using Microsoft.Extensions.Logging; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.IO; +using System.Reflection; + +namespace Adaptation._Tests.CreateSelfDescription.Staging.v2_52_0; + +[TestClass] +public class SRP : EAFLoggingUnitTesting +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + internal static string DummyRoot { get; private set; } + internal static SRP EAFLoggingUnitTesting { get; private set; } + + static SRP() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy"; + + public SRP() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false) + { + if (EAFLoggingUnitTesting is null) + throw new Exception(); + } + + public SRP(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false) + { + } + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + EAFLoggingUnitTesting ??= new SRP(testContext); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(testContext.TestName, " - ClassInitialize")); + string[] fileNameAndText = EAFLoggingUnitTesting.AdaptationTesting.GetCSharpText(testContext.TestName); + File.WriteAllText(fileNameAndText[0], fileNameAndText[1]); + File.WriteAllText(fileNameAndText[2], fileNameAndText[3]); + } + + [ClassCleanup()] + public static void ClassCleanup() + { + EAFLoggingUnitTesting?.Logger?.LogInformation("Cleanup"); + EAFLoggingUnitTesting?.Dispose(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__SRP__json() + { + string check = "*.json"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.56.0/MET08RESISRP2100.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.56.0/MET08RESISRP2100.cs new file mode 100644 index 0000000..ef6e14e --- /dev/null +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.56.0/MET08RESISRP2100.cs @@ -0,0 +1,182 @@ +#if true +using Adaptation._Tests.Shared; +using Microsoft.Extensions.Logging; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.IO; +using System.Reflection; + +namespace Adaptation._Tests.CreateSelfDescription.Staging.v2_56_0; + +[TestClass] +public class MET08RESISRP2100 : EAFLoggingUnitTesting +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + internal static string DummyRoot { get; private set; } + internal static MET08RESISRP2100 EAFLoggingUnitTesting { get; private set; } + + static MET08RESISRP2100() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy"; + + public MET08RESISRP2100() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false) + { + if (EAFLoggingUnitTesting is null) + throw new Exception(); + } + + public MET08RESISRP2100(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false) + { + } + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + EAFLoggingUnitTesting ??= new MET08RESISRP2100(testContext); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(testContext.TestName, " - ClassInitialize")); + string[] fileNameAndText = EAFLoggingUnitTesting.AdaptationTesting.GetCSharpText(testContext.TestName); + File.WriteAllText(fileNameAndText[0], fileNameAndText[1]); + File.WriteAllText(fileNameAndText[2], fileNameAndText[3]); + } + + [ClassCleanup()] + public static void ClassCleanup() + { + EAFLoggingUnitTesting?.Logger?.LogInformation("Cleanup"); + EAFLoggingUnitTesting?.Dispose(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__MoveMatchingFiles() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__OpenInsightMetrologyViewer() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__IQSSi() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__OpenInsight() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__APC() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__SPaCe() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__Processed() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__Archive() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__Dummy() + { + string check = "638191594841489860.zip"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.56.0/SRP-EQPT.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.56.0/SRP-EQPT.cs new file mode 100644 index 0000000..1a53b7a --- /dev/null +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.56.0/SRP-EQPT.cs @@ -0,0 +1,65 @@ +#if true +using Adaptation._Tests.Shared; +using Microsoft.Extensions.Logging; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.IO; +using System.Reflection; + +namespace Adaptation._Tests.CreateSelfDescription.Staging.v2_56_0; + +[TestClass] +public class SRP_EQPT : EAFLoggingUnitTesting +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + internal static string DummyRoot { get; private set; } + internal static SRP_EQPT EAFLoggingUnitTesting { get; private set; } + + static SRP_EQPT() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy"; + + public SRP_EQPT() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false) + { + if (EAFLoggingUnitTesting is null) + throw new Exception(); + } + + public SRP_EQPT(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false) + { + } + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + EAFLoggingUnitTesting ??= new SRP_EQPT(testContext); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(testContext.TestName, " - ClassInitialize")); + string[] fileNameAndText = EAFLoggingUnitTesting.AdaptationTesting.GetCSharpText(testContext.TestName); + File.WriteAllText(fileNameAndText[0], fileNameAndText[1]); + File.WriteAllText(fileNameAndText[2], fileNameAndText[3]); + } + + [ClassCleanup()] + public static void ClassCleanup() + { + EAFLoggingUnitTesting?.Logger?.LogInformation("Cleanup"); + EAFLoggingUnitTesting?.Dispose(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__SRP_EQPT__csv() + { + string check = "*.csv"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Staging/v2.56.0/SRP.cs b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.56.0/SRP.cs new file mode 100644 index 0000000..5ca26c2 --- /dev/null +++ b/Adaptation/_Tests/CreateSelfDescription/Staging/v2.56.0/SRP.cs @@ -0,0 +1,65 @@ +#if true +using Adaptation._Tests.Shared; +using Microsoft.Extensions.Logging; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.IO; +using System.Reflection; + +namespace Adaptation._Tests.CreateSelfDescription.Staging.v2_56_0; + +[TestClass] +public class SRP : EAFLoggingUnitTesting +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + internal static string DummyRoot { get; private set; } + internal static SRP EAFLoggingUnitTesting { get; private set; } + + static SRP() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy"; + + public SRP() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false) + { + if (EAFLoggingUnitTesting is null) + throw new Exception(); + } + + public SRP(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false) + { + } + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + EAFLoggingUnitTesting ??= new SRP(testContext); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(testContext.TestName, " - ClassInitialize")); + string[] fileNameAndText = EAFLoggingUnitTesting.AdaptationTesting.GetCSharpText(testContext.TestName); + File.WriteAllText(fileNameAndText[0], fileNameAndText[1]); + File.WriteAllText(fileNameAndText[2], fileNameAndText[3]); + } + + [ClassCleanup()] + public static void ClassCleanup() + { + EAFLoggingUnitTesting?.Logger?.LogInformation("Cleanup"); + EAFLoggingUnitTesting?.Dispose(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__SRP__json() + { + string check = "*.json"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.49.0/MET08RESISRP2100.cs b/Adaptation/_Tests/Extract/Staging/v2.49.0/MET08RESISRP2100.cs index fa94156..1f1a316 100644 --- a/Adaptation/_Tests/Extract/Staging/v2.49.0/MET08RESISRP2100.cs +++ b/Adaptation/_Tests/Extract/Staging/v2.49.0/MET08RESISRP2100.cs @@ -1,3 +1,4 @@ +#if v2_49_0 using Adaptation.Shared; using Adaptation.Shared.Methods; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -30,15 +31,21 @@ public class MET08RESISRP2100 catch (Exception) { } } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__MoveMatchingFiles() => _MET08RESISRP2100.Staging__v2_49_0__MET08RESISRP2100__MoveMatchingFiles(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__OpenInsightMetrologyViewer() => _MET08RESISRP2100.Staging__v2_49_0__MET08RESISRP2100__OpenInsightMetrologyViewer(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__OpenInsightMetrologyViewer638191594841489860__First() { @@ -52,11 +59,15 @@ public class MET08RESISRP2100 NonThrowTryCatch(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__IQSSi() => _MET08RESISRP2100.Staging__v2_49_0__MET08RESISRP2100__IQSSi(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__IQSSi638191594841489860__First() { @@ -70,11 +81,15 @@ public class MET08RESISRP2100 NonThrowTryCatch(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__OpenInsight() => _MET08RESISRP2100.Staging__v2_49_0__MET08RESISRP2100__OpenInsight(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__OpenInsight638191594841489860__First() { @@ -88,11 +103,15 @@ public class MET08RESISRP2100 NonThrowTryCatch(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments() => _MET08RESISRP2100.Staging__v2_49_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments638191594841489860__First() { @@ -106,24 +125,35 @@ public class MET08RESISRP2100 NonThrowTryCatch(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__APC() => _MET08RESISRP2100.Staging__v2_49_0__MET08RESISRP2100__APC(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__SPaCe() => _MET08RESISRP2100.Staging__v2_49_0__MET08RESISRP2100__SPaCe(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__Processed() => _MET08RESISRP2100.Staging__v2_49_0__MET08RESISRP2100__Processed(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__Archive() => _MET08RESISRP2100.Staging__v2_49_0__MET08RESISRP2100__Archive(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__MET08RESISRP2100__Dummy() => _MET08RESISRP2100.Staging__v2_49_0__MET08RESISRP2100__Dummy(); -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.49.0/SRP-EQPT.cs b/Adaptation/_Tests/Extract/Staging/v2.49.0/SRP-EQPT.cs index ade5722..4a5110f 100644 --- a/Adaptation/_Tests/Extract/Staging/v2.49.0/SRP-EQPT.cs +++ b/Adaptation/_Tests/Extract/Staging/v2.49.0/SRP-EQPT.cs @@ -1,3 +1,4 @@ +#if v2_49_0 using Adaptation.Shared; using Adaptation.Shared.Methods; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -30,11 +31,15 @@ public class SRP_EQPT catch (Exception) { } } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__SRP_EQPT__csv() => _SRP_EQPT.Staging__v2_49_0__SRP_EQPT__csv(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__SRP_EQPT__csv638185594063339969__First() { @@ -49,4 +54,5 @@ public class SRP_EQPT NonThrowTryCatch(); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.49.0/SRP.cs b/Adaptation/_Tests/Extract/Staging/v2.49.0/SRP.cs index b813eb8..92a872b 100644 --- a/Adaptation/_Tests/Extract/Staging/v2.49.0/SRP.cs +++ b/Adaptation/_Tests/Extract/Staging/v2.49.0/SRP.cs @@ -1,3 +1,4 @@ +#if v2_49_0 using Adaptation.Shared; using Adaptation.Shared.Methods; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -30,11 +31,15 @@ public class SRP catch (Exception) { } } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__SRP__json() => _SRP.Staging__v2_49_0__SRP__json(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_0__SRP__json638185594063339969__First() { @@ -49,4 +54,5 @@ public class SRP NonThrowTryCatch(); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.49.2/MET08RESISRP2100.cs b/Adaptation/_Tests/Extract/Staging/v2.49.2/MET08RESISRP2100.cs index 88446a0..ef44b3d 100644 --- a/Adaptation/_Tests/Extract/Staging/v2.49.2/MET08RESISRP2100.cs +++ b/Adaptation/_Tests/Extract/Staging/v2.49.2/MET08RESISRP2100.cs @@ -1,3 +1,4 @@ +#if v2_49_2 using Adaptation.Shared; using Adaptation.Shared.Methods; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -30,15 +31,21 @@ public class MET08RESISRP2100 catch (Exception) { } } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__MoveMatchingFiles() => _MET08RESISRP2100.Staging__v2_49_2__MET08RESISRP2100__MoveMatchingFiles(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__OpenInsightMetrologyViewer() => _MET08RESISRP2100.Staging__v2_49_2__MET08RESISRP2100__OpenInsightMetrologyViewer(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__OpenInsightMetrologyViewer638191594841489860__First() { @@ -52,11 +59,15 @@ public class MET08RESISRP2100 NonThrowTryCatch(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__IQSSi() => _MET08RESISRP2100.Staging__v2_49_2__MET08RESISRP2100__IQSSi(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__IQSSi638191594841489860__First() { @@ -70,11 +81,15 @@ public class MET08RESISRP2100 NonThrowTryCatch(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__OpenInsight() => _MET08RESISRP2100.Staging__v2_49_2__MET08RESISRP2100__OpenInsight(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__OpenInsight638191594841489860__First() { @@ -88,11 +103,15 @@ public class MET08RESISRP2100 NonThrowTryCatch(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments() => _MET08RESISRP2100.Staging__v2_49_2__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments638191594841489860__First() { @@ -106,24 +125,35 @@ public class MET08RESISRP2100 NonThrowTryCatch(); } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__APC() => _MET08RESISRP2100.Staging__v2_49_2__MET08RESISRP2100__APC(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__SPaCe() => _MET08RESISRP2100.Staging__v2_49_2__MET08RESISRP2100__SPaCe(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__Processed() => _MET08RESISRP2100.Staging__v2_49_2__MET08RESISRP2100__Processed(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__Archive() => _MET08RESISRP2100.Staging__v2_49_2__MET08RESISRP2100__Archive(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__MET08RESISRP2100__Dummy() => _MET08RESISRP2100.Staging__v2_49_2__MET08RESISRP2100__Dummy(); -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.49.2/SRP-EQPT.cs b/Adaptation/_Tests/Extract/Staging/v2.49.2/SRP-EQPT.cs index a7d3bbc..47cec92 100644 --- a/Adaptation/_Tests/Extract/Staging/v2.49.2/SRP-EQPT.cs +++ b/Adaptation/_Tests/Extract/Staging/v2.49.2/SRP-EQPT.cs @@ -1,3 +1,4 @@ +#if v2_49_2 using Adaptation.Shared; using Adaptation.Shared.Methods; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -30,11 +31,15 @@ public class SRP_EQPT catch (Exception) { } } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__SRP_EQPT__csv() => _SRP_EQPT.Staging__v2_49_2__SRP_EQPT__csv(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__SRP_EQPT__csv638185594063339969__First() { @@ -49,4 +54,5 @@ public class SRP_EQPT NonThrowTryCatch(); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.49.2/SRP.cs b/Adaptation/_Tests/Extract/Staging/v2.49.2/SRP.cs index fcac00c..ed789f1 100644 --- a/Adaptation/_Tests/Extract/Staging/v2.49.2/SRP.cs +++ b/Adaptation/_Tests/Extract/Staging/v2.49.2/SRP.cs @@ -1,3 +1,4 @@ +#if v2_49_2 using Adaptation.Shared; using Adaptation.Shared.Methods; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -30,11 +31,15 @@ public class SRP catch (Exception) { } } +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__SRP__json() => _SRP.Staging__v2_49_2__SRP__json(); +#if DEBUG [Ignore] +#endif [TestMethod] public void Staging__v2_49_2__SRP__json638185594063339969__First() { @@ -49,4 +54,5 @@ public class SRP NonThrowTryCatch(); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.49.3/MET08RESISRP2100.cs b/Adaptation/_Tests/Extract/Staging/v2.49.3/MET08RESISRP2100.cs index b708405..039ec8f 100644 --- a/Adaptation/_Tests/Extract/Staging/v2.49.3/MET08RESISRP2100.cs +++ b/Adaptation/_Tests/Extract/Staging/v2.49.3/MET08RESISRP2100.cs @@ -1,3 +1,4 @@ +#if v2_49_3 using Adaptation.Shared; using Adaptation.Shared.Methods; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -154,4 +155,5 @@ public class MET08RESISRP2100 [TestMethod] public void Staging__v2_49_3__MET08RESISRP2100__Dummy() => _MET08RESISRP2100.Staging__v2_49_3__MET08RESISRP2100__Dummy(); -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.49.3/SRP-EQPT.cs b/Adaptation/_Tests/Extract/Staging/v2.49.3/SRP-EQPT.cs index 6220e7b..b96d80e 100644 --- a/Adaptation/_Tests/Extract/Staging/v2.49.3/SRP-EQPT.cs +++ b/Adaptation/_Tests/Extract/Staging/v2.49.3/SRP-EQPT.cs @@ -1,3 +1,4 @@ +#if v2_49_3 using Adaptation.Shared; using Adaptation.Shared.Methods; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -53,4 +54,5 @@ public class SRP_EQPT NonThrowTryCatch(); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.49.3/SRP.cs b/Adaptation/_Tests/Extract/Staging/v2.49.3/SRP.cs index 0085af2..667c8db 100644 --- a/Adaptation/_Tests/Extract/Staging/v2.49.3/SRP.cs +++ b/Adaptation/_Tests/Extract/Staging/v2.49.3/SRP.cs @@ -1,3 +1,4 @@ +#if v2_49_3 using Adaptation.Shared; using Adaptation.Shared.Methods; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -53,4 +54,5 @@ public class SRP NonThrowTryCatch(); } -} \ No newline at end of file +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.52.0/MET08RESISRP2100.cs b/Adaptation/_Tests/Extract/Staging/v2.52.0/MET08RESISRP2100.cs new file mode 100644 index 0000000..d0fceb9 --- /dev/null +++ b/Adaptation/_Tests/Extract/Staging/v2.52.0/MET08RESISRP2100.cs @@ -0,0 +1,159 @@ +#if v2_52_0 +using Adaptation.Shared; +using Adaptation.Shared.Methods; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.Reflection; + +namespace Adaptation._Tests.Extract.Staging.v2_52_0; + +[TestClass] +public class MET08RESISRP2100 +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + private static CreateSelfDescription.Staging.v2_52_0.MET08RESISRP2100 _MET08RESISRP2100; + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + CreateSelfDescription.Staging.v2_52_0.MET08RESISRP2100.ClassInitialize(testContext); + _MET08RESISRP2100 = CreateSelfDescription.Staging.v2_52_0.MET08RESISRP2100.EAFLoggingUnitTesting; + } + + private static void NonThrowTryCatch() + { + try + { throw new Exception(); } + catch (Exception) { } + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__MoveMatchingFiles() => _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__MoveMatchingFiles(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__OpenInsightMetrologyViewer() => _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__OpenInsightMetrologyViewer(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__OpenInsightMetrologyViewer638191594841489860__First() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__OpenInsightMetrologyViewer(); + string[] variables = _MET08RESISRP2100.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false); + IFileRead fileRead = _MET08RESISRP2100.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics); + NonThrowTryCatch(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__IQSSi() => _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__IQSSi(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__IQSSi638191594841489860__First() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__IQSSi(); + string[] variables = _MET08RESISRP2100.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false); + IFileRead fileRead = _MET08RESISRP2100.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics); + NonThrowTryCatch(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__OpenInsight() => _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__OpenInsight(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__OpenInsight638191594841489860__First() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__OpenInsight(); + string[] variables = _MET08RESISRP2100.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false); + IFileRead fileRead = _MET08RESISRP2100.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics); + NonThrowTryCatch(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments() => _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments638191594841489860__First() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments(); + string[] variables = _MET08RESISRP2100.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false); + IFileRead fileRead = _MET08RESISRP2100.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics); + NonThrowTryCatch(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__APC() => _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__APC(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__SPaCe() => _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__SPaCe(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__Processed() => _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__Processed(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__Archive() => _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__Archive(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__MET08RESISRP2100__Dummy() => _MET08RESISRP2100.Staging__v2_52_0__MET08RESISRP2100__Dummy(); + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.52.0/SRP-EQPT.cs b/Adaptation/_Tests/Extract/Staging/v2.52.0/SRP-EQPT.cs new file mode 100644 index 0000000..47750a3 --- /dev/null +++ b/Adaptation/_Tests/Extract/Staging/v2.52.0/SRP-EQPT.cs @@ -0,0 +1,58 @@ +#if v2_52_0 +using Adaptation.Shared; +using Adaptation.Shared.Methods; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.Reflection; + +namespace Adaptation._Tests.Extract.Staging.v2_52_0; + +[TestClass] +public class SRP_EQPT +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + private static CreateSelfDescription.Staging.v2_52_0.SRP_EQPT _SRP_EQPT; + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + CreateSelfDescription.Staging.v2_52_0.SRP_EQPT.ClassInitialize(testContext); + _SRP_EQPT = CreateSelfDescription.Staging.v2_52_0.SRP_EQPT.EAFLoggingUnitTesting; + } + + private static void NonThrowTryCatch() + { + try + { throw new Exception(); } + catch (Exception) { } + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__SRP_EQPT__csv() => _SRP_EQPT.Staging__v2_52_0__SRP_EQPT__csv(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__SRP_EQPT__csv638185594063339969__First() + { + string check = "*.csv"; + bool validatePDSF = false; + _SRP_EQPT.Staging__v2_52_0__SRP_EQPT__csv(); + MethodBase methodBase = new StackFrame().GetMethod(); + string[] variables = _SRP_EQPT.AdaptationTesting.GetVariables(methodBase, check, validatePDSF); + IFileRead fileRead = _SRP_EQPT.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF); + NonThrowTryCatch(); + } + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.52.0/SRP.cs b/Adaptation/_Tests/Extract/Staging/v2.52.0/SRP.cs new file mode 100644 index 0000000..5da903b --- /dev/null +++ b/Adaptation/_Tests/Extract/Staging/v2.52.0/SRP.cs @@ -0,0 +1,58 @@ +#if v2_52_0 +using Adaptation.Shared; +using Adaptation.Shared.Methods; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.Reflection; + +namespace Adaptation._Tests.Extract.Staging.v2_52_0; + +[TestClass] +public class SRP +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + private static CreateSelfDescription.Staging.v2_52_0.SRP _SRP; + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + CreateSelfDescription.Staging.v2_52_0.SRP.ClassInitialize(testContext); + _SRP = CreateSelfDescription.Staging.v2_52_0.SRP.EAFLoggingUnitTesting; + } + + private static void NonThrowTryCatch() + { + try + { throw new Exception(); } + catch (Exception) { } + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__SRP__json() => _SRP.Staging__v2_52_0__SRP__json(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_52_0__SRP__json638185594063339969__First() + { + string check = "*.json"; + bool validatePDSF = false; + _SRP.Staging__v2_52_0__SRP__json(); + MethodBase methodBase = new StackFrame().GetMethod(); + string[] variables = _SRP.AdaptationTesting.GetVariables(methodBase, check, validatePDSF); + IFileRead fileRead = _SRP.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF); + NonThrowTryCatch(); + } + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.56.0/MET08RESISRP2100.cs b/Adaptation/_Tests/Extract/Staging/v2.56.0/MET08RESISRP2100.cs new file mode 100644 index 0000000..8ef305d --- /dev/null +++ b/Adaptation/_Tests/Extract/Staging/v2.56.0/MET08RESISRP2100.cs @@ -0,0 +1,159 @@ +#if true +using Adaptation.Shared; +using Adaptation.Shared.Methods; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.Reflection; + +namespace Adaptation._Tests.Extract.Staging.v2_56_0; + +[TestClass] +public class MET08RESISRP2100 +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + private static CreateSelfDescription.Staging.v2_56_0.MET08RESISRP2100 _MET08RESISRP2100; + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + CreateSelfDescription.Staging.v2_56_0.MET08RESISRP2100.ClassInitialize(testContext); + _MET08RESISRP2100 = CreateSelfDescription.Staging.v2_56_0.MET08RESISRP2100.EAFLoggingUnitTesting; + } + + private static void NonThrowTryCatch() + { + try + { throw new Exception(); } + catch (Exception) { } + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__MoveMatchingFiles() => _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__MoveMatchingFiles(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__OpenInsightMetrologyViewer() => _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__OpenInsightMetrologyViewer(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__OpenInsightMetrologyViewer638191594841489860__First() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__OpenInsightMetrologyViewer(); + string[] variables = _MET08RESISRP2100.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false); + IFileRead fileRead = _MET08RESISRP2100.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics); + NonThrowTryCatch(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__IQSSi() => _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__IQSSi(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__IQSSi638191594841489860__First() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__IQSSi(); + string[] variables = _MET08RESISRP2100.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false); + IFileRead fileRead = _MET08RESISRP2100.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics); + NonThrowTryCatch(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__OpenInsight() => _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__OpenInsight(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__OpenInsight638191594841489860__First() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__OpenInsight(); + string[] variables = _MET08RESISRP2100.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false); + IFileRead fileRead = _MET08RESISRP2100.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics); + NonThrowTryCatch(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments() => _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments638191594841489860__First() + { + string check = "*.pdsf"; + MethodBase methodBase = new StackFrame().GetMethod(); + _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__OpenInsightMetrologyViewerAttachments(); + string[] variables = _MET08RESISRP2100.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false); + IFileRead fileRead = _MET08RESISRP2100.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics); + NonThrowTryCatch(); + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__APC() => _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__APC(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__SPaCe() => _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__SPaCe(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__Processed() => _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__Processed(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__Archive() => _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__Archive(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__MET08RESISRP2100__Dummy() => _MET08RESISRP2100.Staging__v2_56_0__MET08RESISRP2100__Dummy(); + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.56.0/SRP-EQPT.cs b/Adaptation/_Tests/Extract/Staging/v2.56.0/SRP-EQPT.cs new file mode 100644 index 0000000..8fc8c86 --- /dev/null +++ b/Adaptation/_Tests/Extract/Staging/v2.56.0/SRP-EQPT.cs @@ -0,0 +1,56 @@ +#if true +using Adaptation.Shared; +using Adaptation.Shared.Methods; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.Reflection; + +namespace Adaptation._Tests.Extract.Staging.v2_56_0; + +[TestClass] +public class SRP_EQPT +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + private static CreateSelfDescription.Staging.v2_56_0.SRP_EQPT _SRP_EQPT; + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + CreateSelfDescription.Staging.v2_56_0.SRP_EQPT.ClassInitialize(testContext); + _SRP_EQPT = CreateSelfDescription.Staging.v2_56_0.SRP_EQPT.EAFLoggingUnitTesting; + } + + private static void NonThrowTryCatch() + { + try + { throw new Exception(); } + catch (Exception) { } + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__SRP_EQPT__csv() => _SRP_EQPT.Staging__v2_56_0__SRP_EQPT__csv(); + + [Ignore] + [TestMethod] + public void Staging__v2_56_0__SRP_EQPT__csv638185594063339969__First() + { + string check = "*.csv"; + bool validatePDSF = false; + _SRP_EQPT.Staging__v2_56_0__SRP_EQPT__csv(); + MethodBase methodBase = new StackFrame().GetMethod(); + string[] variables = _SRP_EQPT.AdaptationTesting.GetVariables(methodBase, check, validatePDSF); + IFileRead fileRead = _SRP_EQPT.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF); + NonThrowTryCatch(); + } + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Staging/v2.56.0/SRP.cs b/Adaptation/_Tests/Extract/Staging/v2.56.0/SRP.cs new file mode 100644 index 0000000..027bf53 --- /dev/null +++ b/Adaptation/_Tests/Extract/Staging/v2.56.0/SRP.cs @@ -0,0 +1,58 @@ +#if true +using Adaptation.Shared; +using Adaptation.Shared.Methods; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.Reflection; + +namespace Adaptation._Tests.Extract.Staging.v2_56_0; + +[TestClass] +public class SRP +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + private static CreateSelfDescription.Staging.v2_56_0.SRP _SRP; + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + CreateSelfDescription.Staging.v2_56_0.SRP.ClassInitialize(testContext); + _SRP = CreateSelfDescription.Staging.v2_56_0.SRP.EAFLoggingUnitTesting; + } + + private static void NonThrowTryCatch() + { + try + { throw new Exception(); } + catch (Exception) { } + } + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__SRP__json() => _SRP.Staging__v2_56_0__SRP__json(); + +#if DEBUG + [Ignore] +#endif + [TestMethod] + public void Staging__v2_56_0__SRP__json638185594063339969__First() + { + string check = "*.json"; + bool validatePDSF = false; + _SRP.Staging__v2_56_0__SRP__json(); + MethodBase methodBase = new StackFrame().GetMethod(); + string[] variables = _SRP.AdaptationTesting.GetVariables(methodBase, check, validatePDSF); + IFileRead fileRead = _SRP.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Logistics logistics = new(fileRead); + _ = Shared.AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF); + NonThrowTryCatch(); + } + +} +#endif \ No newline at end of file diff --git a/Adaptation/_Tests/Shared/AdaptationTesting.cs b/Adaptation/_Tests/Shared/AdaptationTesting.cs index 0771b8b..dad8ffe 100644 --- a/Adaptation/_Tests/Shared/AdaptationTesting.cs +++ b/Adaptation/_Tests/Shared/AdaptationTesting.cs @@ -305,7 +305,7 @@ public class AdaptationTesting : ISMTP else { results = Directory.GetFiles(mbn.TextFileDirectory, "*.txt", SearchOption.TopDirectoryOnly); - if (!string.IsNullOrEmpty(mbn.Ticks) && _HasWaitForProperty && !results.Any()) + if (!string.IsNullOrEmpty(mbn.Ticks) && _HasWaitForProperty && results.Length == 0) { _ = Process.Start("explorer.exe", mbn.TextFileDirectory); File.WriteAllText(Path.Combine(mbn.TextFileDirectory, "_ Why.why"), string.Empty); @@ -373,9 +373,7 @@ public class AdaptationTesting : ISMTP Tuple result; CellInstanceVersion cellInstanceVersion; string cellInstanceServiceV2 = string.Concat("http://", _HostNameAndPort, "/CellInstanceServiceV2/", cellInstanceName, "/", cellInstanceVersionName, "/configuration"); - if (_CellInstanceVersions.ContainsKey(cellInstanceServiceV2)) - cellInstanceVersion = _CellInstanceVersions[cellInstanceServiceV2]; - else + if (!_CellInstanceVersions.TryGetValue(cellInstanceServiceV2, out cellInstanceVersion)) { cellInstanceVersion = GetCellInstanceVersion(cellInstanceServiceV2); _CellInstanceVersions.Add(cellInstanceServiceV2, cellInstanceVersion); @@ -401,7 +399,7 @@ public class AdaptationTesting : ISMTP } } } - if (!results.Any() || (!string.IsNullOrEmpty(cellInstanceConnectionName) && !results.ContainsKey(cellInstanceConnectionName))) + if (results.Count == 0 || (!string.IsNullOrEmpty(cellInstanceConnectionName) && !results.ContainsKey(cellInstanceConnectionName))) throw new Exception("Match not found (check test method name matches Mango)!"); return results; } @@ -413,9 +411,8 @@ public class AdaptationTesting : ISMTP result = componentModelComponentsIndexes.ElementAt(0).Value; else { - if (componentModelComponentsIndexes is null || !componentModelComponentsIndexes.ContainsKey(cellInstanceConnectionName)) + if (componentModelComponentsIndexes is null || !componentModelComponentsIndexes.TryGetValue(cellInstanceConnectionName, out result)) throw new Exception(); - result = componentModelComponentsIndexes[cellInstanceConnectionName]; } return result; } @@ -565,7 +562,7 @@ public class AdaptationTesting : ISMTP else if (i == 1) { if (componentsCellComponentCellComponent.Equipment.EquipmentType.Version != cellInstanceVersionName) - throw new Exception("Versions should match!"); + throw new Exception($"Versions should match! {componentsCellComponentCellComponent.Equipment.EquipmentType.Version} != {cellInstanceVersionName}"); equipmentTypeName = componentsCellComponentCellComponent.Equipment.EquipmentType.Name; _ = stringBuilder. AppendLine("#if true"). @@ -596,7 +593,7 @@ public class AdaptationTesting : ISMTP throw new Exception(); _ = stringBuilder.Clear(); } - if (componentsCellComponentCellComponentEquipmentDictionaryNames.Any() && string.IsNullOrEmpty(cellInstanceVersion.FrozenBy)) + if (componentsCellComponentCellComponentEquipmentDictionaryNames.Count != 0 && string.IsNullOrEmpty(cellInstanceVersion.FrozenBy)) { if (!cellInstanceVersion.CellCommunicatingRule.EndsWith(".Communicating") || !(from l in componentsCellComponentCellComponentEquipmentNames where l == cellInstanceVersion.CellCommunicatingRule.Split('.')[0] select true).Any()) throw new Exception($"{methodName} - CellCommunicatingRule not correct in Mango!"); @@ -648,9 +645,7 @@ public class AdaptationTesting : ISMTP Tuple result; FileConnectorConfiguration fileConnectorConfiguration; string cellInstanceServiceV2With = string.Concat(cellInstanceVersionTuple.Item1, '/', cellInstanceConnectionName); - if (_FileConnectorConfigurations.ContainsKey(cellInstanceServiceV2With)) - fileConnectorConfiguration = _FileConnectorConfigurations[cellInstanceServiceV2With]; - else + if (!_FileConnectorConfigurations.TryGetValue(cellInstanceServiceV2With, out fileConnectorConfiguration)) { Dictionary componentModelComponentsIndexes = GetComponentModelComponentsIndexes(cellInstanceVersionTuple.Item2, cellInstanceConnectionName); int[] cellInstanceConnectionNameIndexes = GetCellInstanceConnectionNameIndexes(cellInstanceConnectionName, componentModelComponentsIndexes); @@ -696,9 +691,7 @@ public class AdaptationTesting : ISMTP int[] cellInstanceConnectionNameIndexes = GetCellInstanceConnectionNameIndexes(cellInstanceConnectionName, componentModelComponentsIndexes); ComponentsCellComponentCellComponent componentsCellComponentCellComponent = cellInstanceVersion.ComponentModel.Components[cellInstanceConnectionNameIndexes[0]].Children[cellInstanceConnectionNameIndexes[1]]; string equipmentTypeServiceV2 = string.Concat("http://", _HostNameAndPort, "/EquipmentTypeServiceV2/", componentsCellComponentCellComponent.Equipment.EquipmentType.Name, "/", componentsCellComponentCellComponent.Equipment.EquipmentType.Version, "/configuration"); - if (_EquipmentTypeVersions.ContainsKey(equipmentTypeServiceV2)) - equipmentTypeVersion = _EquipmentTypeVersions[equipmentTypeServiceV2]; - else + if (!_EquipmentTypeVersions.TryGetValue(equipmentTypeServiceV2, out equipmentTypeVersion)) { equipmentTypeVersion = GetEquipmentTypeVersion(equipmentTypeServiceV2); _EquipmentTypeVersions.Add(equipmentTypeServiceV2, equipmentTypeVersion); @@ -763,7 +756,7 @@ public class AdaptationTesting : ISMTP string[] results; string equipmentDictionaryName; string equipmentDictionaryVersionName; - if (_SkipEquipmentDictionary || equipmentTypeVersion?.EventActionSequences is null || !equipmentTypeVersion.EventActionSequences.Any() || !(from l in equipmentTypeVersion.EventActionSequences where l.HandledEvent.StartsWith("Equipment.FileRead") select 1).Any()) + if (_SkipEquipmentDictionary || equipmentTypeVersion?.EventActionSequences is null || equipmentTypeVersion.EventActionSequences.Length == 0 || !(from l in equipmentTypeVersion.EventActionSequences where l.HandledEvent.StartsWith("Equipment.FileRead") select 1).Any()) { equipmentDictionaryName = string.Empty; equipmentDictionaryVersionName = string.Empty; @@ -834,9 +827,7 @@ public class AdaptationTesting : ISMTP equipmentDictionaryVersion = null; else { - if (_EquipmentDictionaryVersions.ContainsKey(equipmentDictionaryServiceV2)) - equipmentDictionaryVersion = _EquipmentDictionaryVersions[equipmentDictionaryServiceV2]; - else + if (!_EquipmentDictionaryVersions.TryGetValue(equipmentDictionaryServiceV2, out equipmentDictionaryVersion)) { equipmentDictionaryVersion = GetEquipmentDictionaryVersion(equipmentDictionaryServiceV2); _EquipmentDictionaryVersions.Add(equipmentDictionaryServiceV2, equipmentDictionaryVersion); @@ -850,14 +841,15 @@ public class AdaptationTesting : ISMTP { Tuple>> result; List> results; + List> collection; if (_SkipEquipmentDictionary) results = new List>(); else if (string.IsNullOrEmpty(equipmentDictionaryVersionTuple.Item1)) throw new Exception(); else if (equipmentDictionaryVersionTuple?.Item4?.Events?.Event is null) results = new List>(); - else if (_EquipmentDictionaryEventDescriptions.ContainsKey(equipmentDictionaryVersionTuple.Item1)) - results = _EquipmentDictionaryEventDescriptions[equipmentDictionaryVersionTuple.Item1]; + else if (_EquipmentDictionaryEventDescriptions.TryGetValue(equipmentDictionaryVersionTuple.Item1, out collection)) + results = collection; else { results = new List>(); @@ -963,25 +955,33 @@ public class AdaptationTesting : ISMTP } if (_TestContext.FullyQualifiedTestClassName.Contains(nameof(Extract))) { - if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation)) + try { - if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation)) - _ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation); + if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation)) + { + if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation)) + _ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation); + } + if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.SourceFileLocation)) + { + if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.SourceFileLocation)) + _ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.SourceFileLocation); + } + if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.TargetFileLocation)) + { + if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.TargetFileLocation)) + _ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.TargetFileLocation); + } + if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder)) + { + if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder)) + _ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder); + } } - if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.SourceFileLocation)) + catch (IOException ex) { - if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.SourceFileLocation)) - _ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.SourceFileLocation); - } - if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.TargetFileLocation)) - { - if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.TargetFileLocation)) - _ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.TargetFileLocation); - } - if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder)) - { - if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder)) - _ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder); + if (!ex.Message.Contains("SMB1")) + throw; } } result = FileHandlers.CellInstanceConnectionName.Get(this, fileParameter, mbn.CellInstanceName, mbn.CellInstanceConnectionName, fileConnectorConfigurationTuple.Item2, equipmentTypeVersionTuple.Item2, parameterizedModelObjectDefinitionTypeTuple.Item2, modelObjectParametersTuple.Item2, equipmentDictionaryVersionTuple.Item2, dummyRuns, staticRuns, useCyclicalForDescription, connectionCount: cellInstanceVersionTuple.Item2.EquipmentConnections.Length); @@ -1001,7 +1001,7 @@ public class AdaptationTesting : ISMTP string sourceFileLocation = string.Empty; MethodBaseName mbn = GetMethodBaseName(methodBase); string[] textFiles = GetTextFiles(mbn); - if (!textFiles.Any()) + if (textFiles.Length == 0) { if (_HasWaitForProperty) throw new Exception("Set text file!"); @@ -1065,7 +1065,7 @@ public class AdaptationTesting : ISMTP else { string[] files = Directory.GetFiles(ipdsfDirectory, searchPattern, SearchOption.TopDirectoryOnly); - if (files.Any()) + if (files.Length != 0) ipdsfFile = files[0]; else ipdsfFile = searchPattern; @@ -1109,9 +1109,9 @@ public class AdaptationTesting : ISMTP { string[] pdsfFiles; pdsfFiles = Directory.GetFiles(searchDirectory, searchPattern, SearchOption.TopDirectoryOnly); - if (!pdsfFiles.Any()) + if (pdsfFiles.Length == 0) _ = Process.Start("explorer.exe", searchDirectory); - Assert.IsTrue(pdsfFiles.Any(), "GetFiles check"); + Assert.IsTrue(pdsfFiles.Length != 0, "GetFiles check"); results = GetLogisticsColumnsAndBody(pdsfFiles[0]); } Assert.IsFalse(string.IsNullOrEmpty(results.Item1)); @@ -1244,6 +1244,8 @@ public class AdaptationTesting : ISMTP { string result; Tuple> extractResult = fileRead.ReExtract(); + if (extractResult is null) + throw new Exception($"Using pattern {variables[4]} no file was found <{variables[2]}>"); if (!fileRead.IsDuplicator) { Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1)); diff --git a/Adaptation/_Tests/Shared/UnitTesting.cs b/Adaptation/_Tests/Shared/UnitTesting.cs index 1833834..e4ef794 100644 --- a/Adaptation/_Tests/Shared/UnitTesting.cs +++ b/Adaptation/_Tests/Shared/UnitTesting.cs @@ -2,7 +2,6 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; using System; using System.Diagnostics; using System.IO; -using System.Linq; using System.Reflection; using System.Text; using System.Text.Json; @@ -74,7 +73,7 @@ public class UnitTesting if (string.IsNullOrEmpty(result)) break; checkFiles = Directory.GetFiles(result, "*.Tests.*proj", SearchOption.TopDirectoryOnly); - if (checkFiles.Any()) + if (checkFiles.Length != 0) break; result = Path.GetDirectoryName(result); } diff --git a/Adaptation/_Tests/Static/MET08RESISRP2100.cs b/Adaptation/_Tests/Static/MET08RESISRP2100.cs index 2e61350..95f45e6 100644 --- a/Adaptation/_Tests/Static/MET08RESISRP2100.cs +++ b/Adaptation/_Tests/Static/MET08RESISRP2100.cs @@ -64,7 +64,7 @@ public class MET08RESISRP2100 : LoggingUnitTesting, IDisposable StringBuilder results = new(); (string cellInstanceName, string cellInstanceVersionName)[] collection = new (string, string)[] { - new("MET08RESISRP2100", "v2.49.2"), + new("MET08RESISRP2100", "v2.56.0"), }; string staging = "http://mestsa07ec.infineon.com:9003/CellInstanceServiceV2"; Shared.PasteSpecialXml.EAF.XML.API.CellInstance.CellInstanceVersion cellInstanceVersion; @@ -74,19 +74,21 @@ public class MET08RESISRP2100 : LoggingUnitTesting, IDisposable cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{staging}/{cellInstanceName}/{cellInstanceVersionName}/configuration"); _ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}"); } - File.WriteAllText($"D:/Tmp/{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv", results.ToString()); + string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber"; + if (!Directory.Exists(sourceDirectory)) + _ = Directory.CreateDirectory(sourceDirectory); + File.WriteAllText(Path.Combine(sourceDirectory, $"{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv"), results.ToString()); LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); } - // [Ignore] [TestMethod] - public void All() + public void CellInstanceVersionEdaConnectionPortNumber() { MethodBase methodBase = new StackFrame().GetMethod(); string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber"; - string destinationDirectory = Path.Combine(sourceDirectory, "All"); if (Directory.Exists(sourceDirectory)) { + string destinationDirectory = Path.Combine(sourceDirectory, "All"); if (!Directory.Exists(destinationDirectory)) _ = Directory.CreateDirectory(destinationDirectory); List lines = new(); diff --git a/Adaptation/_Tests/Static/json.cs b/Adaptation/_Tests/Static/json.cs index 1e6323f..8c5d00f 100644 --- a/Adaptation/_Tests/Static/json.cs +++ b/Adaptation/_Tests/Static/json.cs @@ -2,8 +2,10 @@ using Adaptation._Tests.Shared; using Microsoft.Extensions.Logging; using Microsoft.VisualStudio.TestTools.UnitTesting; using System; +using System.Collections.Generic; using System.Diagnostics; using System.IO; +using System.Linq; using System.Reflection; using System.Text; @@ -205,7 +207,7 @@ public class JSON : LoggingUnitTesting, IDisposable StringBuilder results = new(); (string cellInstanceName, string cellInstanceVersionName)[] collection = new (string, string)[] { - new("SRP", "v2.49.2"), + new("SRP", "v2.56.0"), }; string staging = "http://mestsa07ec.infineon.com:9003/CellInstanceServiceV2"; Shared.PasteSpecialXml.EAF.XML.API.CellInstance.CellInstanceVersion cellInstanceVersion; @@ -215,7 +217,30 @@ public class JSON : LoggingUnitTesting, IDisposable cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{staging}/{cellInstanceName}/{cellInstanceVersionName}/configuration"); _ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}"); } - File.WriteAllText($"D:/Tmp/{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv", results.ToString()); + string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber"; + if (!Directory.Exists(sourceDirectory)) + _ = Directory.CreateDirectory(sourceDirectory); + File.WriteAllText(Path.Combine(sourceDirectory, $"{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv"), results.ToString()); + LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + NonThrowTryCatch(); + } + + [TestMethod] + public void CellInstanceVersionEdaConnectionPortNumber() + { + MethodBase methodBase = new StackFrame().GetMethod(); + string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber"; + if (Directory.Exists(sourceDirectory)) + { + string destinationDirectory = Path.Combine(sourceDirectory, "All"); + if (!Directory.Exists(destinationDirectory)) + _ = Directory.CreateDirectory(destinationDirectory); + List lines = new(); + string[] files = Directory.GetFiles(sourceDirectory, "*.tsv", SearchOption.TopDirectoryOnly); + foreach (string file in files) + lines.AddRange(File.ReadAllLines(file)); + File.WriteAllLines(Path.Combine(destinationDirectory, $"{DateTime.Now.Ticks}.tsv"), lines.Distinct().OrderBy(l => l)); + } LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); NonThrowTryCatch(); } diff --git a/MET08RESISRP2100.csproj b/MET08RESISRP2100.csproj index ba6a2ff..f078c9c 100644 --- a/MET08RESISRP2100.csproj +++ b/MET08RESISRP2100.csproj @@ -48,6 +48,12 @@ prompt MinimumRecommendedRules.ruleset + + NETFRAMEWORK;NET20;NET35;NET40;NET45;NET451;NET452;NET46;NET461;NET462;NET47;NET471;NET472;NET48;$(DefineConstants) + + + + @@ -198,7 +204,7 @@ - 2.52.0 + 2.56.0 6.0.3 diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs index d945095..146ce1e 100644 --- a/Properties/AssemblyInfo.cs +++ b/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("2.49.3.0")] -[assembly: AssemblyFileVersion("2.49.3.0")] +[assembly: AssemblyVersion("2.52.0.0")] +[assembly: AssemblyFileVersion("2.52.0.0")]