Compare commits
	
		
			12 Commits
		
	
	
		
			13e5e7cccd
			...
			08-26-a
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| a71c0c3a5a | |||
| 7007207ede | |||
| aa9d43dcea | |||
| 29540199ab | |||
| b954fbb66f | |||
| e365af3f6f | |||
| f1b0f15342 | |||
| d05e56847b | |||
| a144459664 | |||
| b7ff282af3 | |||
| cfdf757a42 | |||
| 9d76773ae5 | 
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@ -342,3 +342,4 @@ ASALocalRun/
 | 
			
		||||
*.lnk
 | 
			
		||||
 | 
			
		||||
.kanbn
 | 
			
		||||
Adaptation/.kanbn
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										11
									
								
								.vscode/mklink.md
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										11
									
								
								.vscode/mklink.md
									
									
									
									
										vendored
									
									
								
							@ -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\METCLIMATEC\06_SourceCode\METCLIMATEC\.kanbn" "D:\5-Other-Small\Kanban\METCLIMATEC"
 | 
			
		||||
```
 | 
			
		||||
@ -100,6 +100,7 @@ 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
 | 
			
		||||
@ -108,7 +109,7 @@ dotnet_diagnostic.CA2254.severity = none # CA2254: The logging message template
 | 
			
		||||
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.IDE0005.severity = none # 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
 | 
			
		||||
@ -120,6 +121,8 @@ dotnet_diagnostic.IDE0290.severity = none # Use primary constructor [Distance]cs
 | 
			
		||||
dotnet_diagnostic.IDE0300.severity = none # IDE0300: Collection initialization can be simplified
 | 
			
		||||
dotnet_diagnostic.IDE0301.severity = none #IDE0301: Collection initialization can be simplified
 | 
			
		||||
dotnet_diagnostic.IDE0305.severity = none # IDE0305: Collection initialization can be simplified
 | 
			
		||||
dotnet_diagnostic.MSTEST0015.severity = none # MSTEST0015: Test method {method} should not be ignored
 | 
			
		||||
dotnet_diagnostic.MSTEST0037.severity = error # MSTEST0037: Use proper 'Assert' methods
 | 
			
		||||
dotnet_diagnostic.SYSLIB1045.severity = none # SYSLIB1045: diagnostics for regex source generation
 | 
			
		||||
dotnet_naming_rule.abstract_method_should_be_pascal_case.severity = warning
 | 
			
		||||
dotnet_naming_rule.abstract_method_should_be_pascal_case.style = pascal_case
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										2
									
								
								Adaptation/.vscode/launch.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								Adaptation/.vscode/launch.json
									
									
									
									
										vendored
									
									
								
							@ -4,7 +4,7 @@
 | 
			
		||||
      "name": ".NET Core Attach",
 | 
			
		||||
      "type": "coreclr",
 | 
			
		||||
      "request": "attach",
 | 
			
		||||
      "processId": 12844
 | 
			
		||||
      "processId": 14996
 | 
			
		||||
    }
 | 
			
		||||
  ]
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										13
									
								
								Adaptation/.vscode/mklink.md
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										13
									
								
								Adaptation/.vscode/mklink.md
									
									
									
									
										vendored
									
									
								
							@ -1,15 +1,4 @@
 | 
			
		||||
---
 | 
			
		||||
type: "note"
 | 
			
		||||
created: "2023-10-20T03:56:21.490Z"
 | 
			
		||||
updated: "2023-10-20T03:57:15.006Z"
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
# mklink
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
mklink /J "T:\METCLIMATEC\06_SourceCode\METCLIMATEC\Adaptation\.kanbn" "D:\5-Other-Small\Kanban\METCLIMATEC"
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
mklink /J "T:\METCLIMATEC\06_SourceCode\METCLIMATEC\Adaptation\.kanbn" "D:\5-Other-Small\Kanban\METCLIMATEC"
 | 
			
		||||
```bash /J \.kanbnh "D:\5-Other-Small\Kanban\"
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										161
									
								
								Adaptation/.vscode/tasks.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										161
									
								
								Adaptation/.vscode/tasks.json
									
									
									
									
										vendored
									
									
								
							@ -1,23 +1,140 @@
 | 
			
		||||
{
 | 
			
		||||
    "version": "2.0.0",
 | 
			
		||||
    "inputs": [
 | 
			
		||||
        {
 | 
			
		||||
            "default": "Development",
 | 
			
		||||
            "description": "Which ASP Net Core Environment?",
 | 
			
		||||
            "id": "ASPNETCORE_ENVIRONMENT",
 | 
			
		||||
            "options": [
 | 
			
		||||
                "Development",
 | 
			
		||||
                "Production"
 | 
			
		||||
            ],
 | 
			
		||||
            "type": "pickString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "{AssemblyTitle}",
 | 
			
		||||
            "description": "What Assembly Title?",
 | 
			
		||||
            "id": "AssemblyTitle",
 | 
			
		||||
            "type": "promptString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "{Build.BuildId}",
 | 
			
		||||
            "description": "Which Build BuildId?",
 | 
			
		||||
            "id": "Build.BuildId",
 | 
			
		||||
            "type": "promptString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "{Build.Reason}",
 | 
			
		||||
            "description": "Which Build Reason?",
 | 
			
		||||
            "id": "Build.Reason",
 | 
			
		||||
            "type": "promptString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "{Build.Repository.Id}",
 | 
			
		||||
            "description": "Which Build Repository Id?",
 | 
			
		||||
            "id": "Build.Repository.Id",
 | 
			
		||||
            "type": "promptString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "{Build.Repository.Name}",
 | 
			
		||||
            "description": "Which Build Repository Name?",
 | 
			
		||||
            "id": "Build.Repository.Name",
 | 
			
		||||
            "type": "promptString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "{Build.SourceVersion}",
 | 
			
		||||
            "description": "Which Build Source Version?",
 | 
			
		||||
            "id": "Build.SourceVersion",
 | 
			
		||||
            "type": "promptString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "Debug",
 | 
			
		||||
            "description": "Which Configuration?",
 | 
			
		||||
            "id": "Configuration",
 | 
			
		||||
            "options": [
 | 
			
		||||
                "Debug",
 | 
			
		||||
                "Release"
 | 
			
		||||
            ],
 | 
			
		||||
            "type": "pickString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "net8.0",
 | 
			
		||||
            "description": "Which Core Version?",
 | 
			
		||||
            "id": "CoreVersion",
 | 
			
		||||
            "options": [
 | 
			
		||||
                "net8.0"
 | 
			
		||||
            ],
 | 
			
		||||
            "type": "pickString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
 | 
			
		||||
            "description": "Which MS Build?",
 | 
			
		||||
            "id": "MSBuild",
 | 
			
		||||
            "type": "promptString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/",
 | 
			
		||||
            "description": "Which Nuget Source?",
 | 
			
		||||
            "id": "NugetSource",
 | 
			
		||||
            "type": "promptString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "win-x64",
 | 
			
		||||
            "description": "Which Runtime?",
 | 
			
		||||
            "id": "Runtime",
 | 
			
		||||
            "options": [
 | 
			
		||||
                "win-x64",
 | 
			
		||||
                "win-x32",
 | 
			
		||||
                "linux-x64",
 | 
			
		||||
                "linux-x32"
 | 
			
		||||
            ],
 | 
			
		||||
            "type": "pickString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "L:/",
 | 
			
		||||
            "description": "Which System DefaultWorkingDirectory?",
 | 
			
		||||
            "id": "System.DefaultWorkingDirectory",
 | 
			
		||||
            "options": [
 | 
			
		||||
                "L:/",
 | 
			
		||||
                "D:/",
 | 
			
		||||
                "C:/"
 | 
			
		||||
            ],
 | 
			
		||||
            "type": "pickString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "v4.8",
 | 
			
		||||
            "description": "Which Core Target Framework Version?",
 | 
			
		||||
            "id": "TargetFrameworkVersion",
 | 
			
		||||
            "options": [
 | 
			
		||||
                "v4.8"
 | 
			
		||||
            ],
 | 
			
		||||
            "type": "pickString"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "default": "{UserSecretsId}",
 | 
			
		||||
            "description": "Which Core User Secrets Id?",
 | 
			
		||||
            "id": "UserSecretsId",
 | 
			
		||||
            "type": "promptString"
 | 
			
		||||
        }
 | 
			
		||||
    ],
 | 
			
		||||
    "tasks": [
 | 
			
		||||
        {
 | 
			
		||||
            "label": "Build",
 | 
			
		||||
            "command": "dotnet",
 | 
			
		||||
            "type": "process",
 | 
			
		||||
            "args": [
 | 
			
		||||
                "build",
 | 
			
		||||
                "/property:GenerateFullPaths=true",
 | 
			
		||||
                "/consoleloggerparameters:NoSummary"
 | 
			
		||||
                "build"
 | 
			
		||||
            ],
 | 
			
		||||
            "problemMatcher": "$msCompile"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "label": "Test",
 | 
			
		||||
            "label": "Test Debug",
 | 
			
		||||
            "command": "dotnet",
 | 
			
		||||
            "type": "process",
 | 
			
		||||
            "args": [
 | 
			
		||||
                "test"
 | 
			
		||||
                "test",
 | 
			
		||||
                "-c",
 | 
			
		||||
                "Debug"
 | 
			
		||||
            ],
 | 
			
		||||
            "problemMatcher": "$msCompile"
 | 
			
		||||
        },
 | 
			
		||||
@ -27,7 +144,7 @@
 | 
			
		||||
            "type": "process",
 | 
			
		||||
            "args": [
 | 
			
		||||
                "test",
 | 
			
		||||
                "-r",
 | 
			
		||||
                "-c",
 | 
			
		||||
                "Release"
 | 
			
		||||
            ],
 | 
			
		||||
            "problemMatcher": "$msCompile"
 | 
			
		||||
@ -66,7 +183,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://tfs.intra.infineon.com/tfs/FactoryIntegration/_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",
 | 
			
		||||
@ -75,9 +192,35 @@
 | 
			
		||||
            "problemMatcher": "$msCompile"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "label": "File-Folder-Helper AOT s M .Kanbn Tasks",
 | 
			
		||||
            "label": "Code Project",
 | 
			
		||||
            "type": "shell",
 | 
			
		||||
            "command": "L:/DevOps/Mesa_FI/File-Folder-Helper/bin/Release/net8.0/win-x64/publish/File-Folder-Helper.exe s M T:/METCLIMATEC/06_SourceCode/METCLIMATEC/Adaptation -s T:/METCLIMATEC/06_SourceCode/METCLIMATEC/Adaptation/.kanbn/tasks",
 | 
			
		||||
            "command": "code ../METCLIMATEC.csproj",
 | 
			
		||||
            "problemMatcher": []
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "label": "Code Read Me",
 | 
			
		||||
            "type": "shell",
 | 
			
		||||
            "command": "code ../README.md",
 | 
			
		||||
            "problemMatcher": []
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "label": "File-Folder-Helper AOT s X Day-Helper-2025-03-20",
 | 
			
		||||
            "type": "shell",
 | 
			
		||||
            "command": "L:/DevOps/Mesa_FI/File-Folder-Helper/bin/Release/net8.0/win-x64/publish/File-Folder-Helper.exe",
 | 
			
		||||
            "args": [
 | 
			
		||||
                "s",
 | 
			
		||||
                "X",
 | 
			
		||||
                "L:/DevOps/EAF-Mesa-Integration/METCLIMATEC",
 | 
			
		||||
                "Day-Helper-2025-03-20",
 | 
			
		||||
                "false",
 | 
			
		||||
                "4"
 | 
			
		||||
            ],
 | 
			
		||||
            "problemMatcher": []
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "label": "Code Git Config",
 | 
			
		||||
            "type": "shell",
 | 
			
		||||
            "command": "code ../.git/config",
 | 
			
		||||
            "problemMatcher": []
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
@ -14,7 +14,7 @@ namespace Adaptation.FileHandlers.APC;
 | 
			
		||||
public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<string>> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) :
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<Shared.Metrology.WS.Results>> 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;
 | 
			
		||||
@ -120,15 +120,15 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
    private Tuple<string, Test[], JsonElement[], List<FileInfo>> GetExtractResult(string reportFullPath, DateTime dateTime)
 | 
			
		||||
    {
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> results;
 | 
			
		||||
        Tuple<string, string[], string[]> pdsf = ProcessDataStandardFormat.GetLogisticsColumnsAndBody(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, pdsf.Item1);
 | 
			
		||||
        ProcessDataStandardFormat processDataStandardFormat = ProcessDataStandardFormat.GetProcessDataStandardFormat(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, processDataStandardFormat);
 | 
			
		||||
        SetFileParameterLotIDToLogisticsMID();
 | 
			
		||||
        JsonElement[] jsonElements = ProcessDataStandardFormat.GetArray(pdsf);
 | 
			
		||||
        JsonElement[] jsonElements = ProcessDataStandardFormat.GetArray(processDataStandardFormat);
 | 
			
		||||
        List<Shared.Properties.IDescription> descriptions = GetDuplicatorDescriptions(jsonElements);
 | 
			
		||||
        Test[] tests = (from l in descriptions select (Test)l.Test).ToArray();
 | 
			
		||||
        if (_IsEAFHosted && _FileConnectorConfiguration.FileScanningIntervalInSeconds > 0)
 | 
			
		||||
            FileCopy(reportFullPath, dateTime, descriptions);
 | 
			
		||||
        results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(pdsf.Item1, tests, jsonElements, new List<FileInfo>());
 | 
			
		||||
        results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(string.Join(Environment.NewLine, processDataStandardFormat.Logistics), tests, jsonElements, new List<FileInfo>());
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -18,7 +18,7 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
    private readonly string _JobIdParentDirectory;
 | 
			
		||||
    private readonly string _JobIdArchiveParentDirectory;
 | 
			
		||||
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<string>> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) :
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<Shared.Metrology.WS.Results>> 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;
 | 
			
		||||
@ -144,15 +144,15 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
    private Tuple<string, Test[], JsonElement[], List<FileInfo>> GetExtractResult(string reportFullPath, DateTime dateTime)
 | 
			
		||||
    {
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> results;
 | 
			
		||||
        Tuple<string, string[], string[]> pdsf = ProcessDataStandardFormat.GetLogisticsColumnsAndBody(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, pdsf.Item1);
 | 
			
		||||
        ProcessDataStandardFormat processDataStandardFormat = ProcessDataStandardFormat.GetProcessDataStandardFormat(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, processDataStandardFormat);
 | 
			
		||||
        SetFileParameterLotIDToLogisticsMID();
 | 
			
		||||
        JsonElement[] jsonElements = ProcessDataStandardFormat.GetArray(pdsf);
 | 
			
		||||
        JsonElement[] jsonElements = ProcessDataStandardFormat.GetArray(processDataStandardFormat);
 | 
			
		||||
        List<Shared.Properties.IDescription> descriptions = GetDuplicatorDescriptions(jsonElements);
 | 
			
		||||
        Test[] tests = (from l in descriptions select (Test)l.Test).ToArray();
 | 
			
		||||
        if (_IsEAFHosted && _FileConnectorConfiguration.FileScanningIntervalInSeconds > 0)
 | 
			
		||||
            MoveArchive(reportFullPath, dateTime);
 | 
			
		||||
        results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(pdsf.Item1, tests, jsonElements, new List<FileInfo>());
 | 
			
		||||
        results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(string.Join(Environment.NewLine, processDataStandardFormat.Logistics), tests, jsonElements, new List<FileInfo>());
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -9,7 +9,7 @@ namespace Adaptation.FileHandlers;
 | 
			
		||||
public class CellInstanceConnectionName
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    internal static IFileRead Get(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<string>> staticRuns, bool useCyclicalForDescription, int? connectionCount)
 | 
			
		||||
    internal static IFileRead Get(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<Shared.Metrology.WS.Results>> staticRuns, bool useCyclicalForDescription, int? connectionCount)
 | 
			
		||||
    {
 | 
			
		||||
        IFileRead result = cellInstanceConnectionName switch
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
@ -23,7 +23,7 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
    private int _LastDummyRunIndex;
 | 
			
		||||
    private readonly string[] _CellNames;
 | 
			
		||||
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<string>> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) :
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<Shared.Metrology.WS.Results>> 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;
 | 
			
		||||
 | 
			
		||||
@ -14,7 +14,7 @@ namespace Adaptation.FileHandlers.IQSSi;
 | 
			
		||||
public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<string>> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) :
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<Shared.Metrology.WS.Results>> 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;
 | 
			
		||||
@ -103,7 +103,7 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private void FileCopy<T>(string reportFullPath, DateTime dateTime, List<T> descriptions) where T : Shared.Properties.IDescription
 | 
			
		||||
    private void WriteFile<T>(string reportFullPath, DateTime dateTime, ProcessDataStandardFormat processDataStandardFormat, List<T> descriptions) where T : Shared.Properties.IDescription
 | 
			
		||||
    {
 | 
			
		||||
        bool isDummyRun = false;
 | 
			
		||||
        string successDirectory = string.Empty;
 | 
			
		||||
@ -111,23 +111,24 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
        string duplicateDirectory = Path.Combine(_FileConnectorConfiguration.SourceFileLocation, _CellInstanceName);
 | 
			
		||||
        if (!Directory.Exists(duplicateDirectory))
 | 
			
		||||
            _ = Directory.CreateDirectory(duplicateDirectory);
 | 
			
		||||
        string duplicateFile = Path.Combine(duplicateDirectory, Path.GetFileName(reportFullPath));
 | 
			
		||||
        File.Copy(reportFullPath, duplicateFile, overwrite: true);
 | 
			
		||||
        string duplicateFile = Path.Combine(duplicateDirectory, $"{Path.GetFileName(reportFullPath)}.xml");
 | 
			
		||||
        string xml = ProcessDataStandardFormat.GetXml(processDataStandardFormat);
 | 
			
		||||
        File.WriteAllText(duplicateFile, xml);
 | 
			
		||||
        WaitForFileConsumption(dateTime, descriptions, isDummyRun, successDirectory, duplicateDirectory, collection, duplicateFile);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private Tuple<string, Test[], JsonElement[], List<FileInfo>> GetExtractResult(string reportFullPath, DateTime dateTime)
 | 
			
		||||
    {
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> results;
 | 
			
		||||
        Tuple<string, string[], string[]> pdsf = ProcessDataStandardFormat.GetLogisticsColumnsAndBody(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, pdsf.Item1);
 | 
			
		||||
        ProcessDataStandardFormat processDataStandardFormat = ProcessDataStandardFormat.GetProcessDataStandardFormat(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, processDataStandardFormat);
 | 
			
		||||
        SetFileParameterLotIDToLogisticsMID();
 | 
			
		||||
        JsonElement[] jsonElements = ProcessDataStandardFormat.GetArray(pdsf);
 | 
			
		||||
        JsonElement[] jsonElements = ProcessDataStandardFormat.GetArray(processDataStandardFormat);
 | 
			
		||||
        List<Shared.Properties.IDescription> descriptions = GetDuplicatorDescriptions(jsonElements);
 | 
			
		||||
        Test[] tests = (from l in descriptions select (Test)l.Test).ToArray();
 | 
			
		||||
        if (_IsEAFHosted && _FileConnectorConfiguration.FileScanningIntervalInSeconds > 0)
 | 
			
		||||
            FileCopy(reportFullPath, dateTime, descriptions);
 | 
			
		||||
        results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(pdsf.Item1, tests, jsonElements, new List<FileInfo>());
 | 
			
		||||
            WriteFile(reportFullPath, dateTime, processDataStandardFormat, descriptions);
 | 
			
		||||
        results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(string.Join(Environment.NewLine, processDataStandardFormat.Logistics), tests, jsonElements, new List<FileInfo>());
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -5,17 +5,73 @@ using Adaptation.Shared.Duplicator;
 | 
			
		||||
using Adaptation.Shared.Methods;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Collections.ObjectModel;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Text.Json;
 | 
			
		||||
using System.Threading;
 | 
			
		||||
 | 
			
		||||
namespace Adaptation.FileHandlers.MoveMatchingFiles;
 | 
			
		||||
 | 
			
		||||
#nullable enable
 | 
			
		||||
 | 
			
		||||
public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<string>> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) :
 | 
			
		||||
    internal class PreWith
 | 
			
		||||
    {
 | 
			
		||||
 | 
			
		||||
        internal string ErrFile { get; private set; }
 | 
			
		||||
        internal string CheckFile { get; private set; }
 | 
			
		||||
        internal string MatchingFile { get; private set; }
 | 
			
		||||
        internal string CheckDirectory { get; private set; }
 | 
			
		||||
        internal string NoWaitDirectory { get; private set; }
 | 
			
		||||
 | 
			
		||||
        internal PreWith(string checkDirectory,
 | 
			
		||||
                         string checkFile,
 | 
			
		||||
                         string errFile,
 | 
			
		||||
                         string matchingFile,
 | 
			
		||||
                         string noWaitDirectory)
 | 
			
		||||
        {
 | 
			
		||||
            ErrFile = errFile;
 | 
			
		||||
            CheckFile = checkFile;
 | 
			
		||||
            MatchingFile = matchingFile;
 | 
			
		||||
            CheckDirectory = checkDirectory;
 | 
			
		||||
            NoWaitDirectory = noWaitDirectory;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    internal class Pre
 | 
			
		||||
    {
 | 
			
		||||
 | 
			
		||||
        internal string MatchingFile { get; private set; }
 | 
			
		||||
        internal string CheckFile { get; private set; }
 | 
			
		||||
 | 
			
		||||
        internal Pre(string matchingFile, string checkFile)
 | 
			
		||||
        {
 | 
			
		||||
            MatchingFile = matchingFile;
 | 
			
		||||
            CheckFile = checkFile;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    internal class Post
 | 
			
		||||
    {
 | 
			
		||||
 | 
			
		||||
        internal string ErrFile { get; private set; }
 | 
			
		||||
        internal string CheckFile { get; private set; }
 | 
			
		||||
 | 
			
		||||
        internal Post(string checkFile, string errFile)
 | 
			
		||||
        {
 | 
			
		||||
            ErrFile = errFile;
 | 
			
		||||
            CheckFile = checkFile;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<Shared.Metrology.WS.Results>> 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;
 | 
			
		||||
@ -41,7 +97,8 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
        Move(extractResults);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void IFileRead.WaitForThread() => WaitForThread(thread: null, threadExceptions: null);
 | 
			
		||||
    void IFileRead.WaitForThread() =>
 | 
			
		||||
        WaitForThread(thread: null, threadExceptions: null);
 | 
			
		||||
 | 
			
		||||
    string IFileRead.GetEventDescription()
 | 
			
		||||
    {
 | 
			
		||||
@ -88,7 +145,7 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
        DateTime dateTime = DateTime.Now;
 | 
			
		||||
        results = GetExtractResult(reportFullPath, dateTime);
 | 
			
		||||
        if (results.Item3 is null)
 | 
			
		||||
            results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(results.Item1, Array.Empty<Test>(), JsonSerializer.Deserialize<JsonElement[]>("[]"), results.Item4);
 | 
			
		||||
            results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(results.Item1, Array.Empty<Test>(), JsonSerializer.Deserialize<JsonElement[]>("[]") ?? throw new Exception(), results.Item4);
 | 
			
		||||
        if (results.Item3.Length > 0 && _IsEAFHosted)
 | 
			
		||||
            WritePDSF(this, results.Item3);
 | 
			
		||||
        UpdateLastTicksDuration(DateTime.Now.Ticks - dateTime.Ticks);
 | 
			
		||||
@ -104,7 +161,33 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static List<string> GetSearchDirectories(int numberLength, string parentDirectory)
 | 
			
		||||
    private static ReadOnlyCollection<PreWith> GetPreWithCollection(ReadOnlyCollection<Pre> preCollection)
 | 
			
		||||
    {
 | 
			
		||||
        List<PreWith> results = new();
 | 
			
		||||
        string errFile;
 | 
			
		||||
        PreWith preWith;
 | 
			
		||||
        string? checkDirectory;
 | 
			
		||||
        string noWaitDirectory;
 | 
			
		||||
        foreach (Pre pre in preCollection)
 | 
			
		||||
        {
 | 
			
		||||
            errFile = string.Concat(pre.CheckFile, ".err");
 | 
			
		||||
            checkDirectory = Path.GetDirectoryName(pre.CheckFile);
 | 
			
		||||
            if (string.IsNullOrEmpty(checkDirectory))
 | 
			
		||||
                continue;
 | 
			
		||||
            if (!Directory.Exists(checkDirectory))
 | 
			
		||||
                _ = Directory.CreateDirectory(checkDirectory);
 | 
			
		||||
            noWaitDirectory = Path.Combine(checkDirectory, "NoWaitDirectory");
 | 
			
		||||
            preWith = new(checkDirectory: checkDirectory,
 | 
			
		||||
                          checkFile: pre.CheckFile,
 | 
			
		||||
                          errFile: errFile,
 | 
			
		||||
                          matchingFile: pre.MatchingFile,
 | 
			
		||||
                          noWaitDirectory: noWaitDirectory);
 | 
			
		||||
            results.Add(preWith);
 | 
			
		||||
        }
 | 
			
		||||
        return results.AsReadOnly();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static ReadOnlyCollection<string> GetSearchDirectories(int numberLength, string parentDirectory)
 | 
			
		||||
    {
 | 
			
		||||
        List<string> results = new();
 | 
			
		||||
        string[] directories = Directory.GetDirectories(parentDirectory, "*", SearchOption.TopDirectoryOnly);
 | 
			
		||||
@ -115,10 +198,138 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
            results.Add(directory);
 | 
			
		||||
        }
 | 
			
		||||
        results.Sort();
 | 
			
		||||
        return results.AsReadOnly();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void CreatePointerFile(int numberLength, string parentDirectory, ReadOnlyCollection<string> matchingFiles)
 | 
			
		||||
    {
 | 
			
		||||
        string checkFile;
 | 
			
		||||
        string writeFile;
 | 
			
		||||
        string? directoryName;
 | 
			
		||||
        int parentDirectoryLength = parentDirectory.Length;
 | 
			
		||||
        foreach (string matchingFile in matchingFiles)
 | 
			
		||||
        {
 | 
			
		||||
            directoryName = Path.GetDirectoryName(matchingFile);
 | 
			
		||||
            if (directoryName is null)
 | 
			
		||||
                continue;
 | 
			
		||||
            checkFile = $"{matchingFile[0]}{directoryName.Substring(parentDirectoryLength + numberLength + 1)}";
 | 
			
		||||
            writeFile = Path.Combine(parentDirectory, $"{directoryName.Substring(parentDirectory.Length + 1, numberLength)}.txt");
 | 
			
		||||
            if (File.Exists(writeFile))
 | 
			
		||||
                continue;
 | 
			
		||||
            File.AppendAllLines(writeFile, new string[] { parentDirectory, matchingFile, directoryName, checkFile });
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static ReadOnlyCollection<Pre> GetPreCollection(int numberLength, string parentDirectory, ReadOnlyCollection<string> matchingFiles)
 | 
			
		||||
    {
 | 
			
		||||
        List<Pre> results = new();
 | 
			
		||||
        Pre pre;
 | 
			
		||||
        string checkFile;
 | 
			
		||||
        int parentDirectoryLength = parentDirectory.Length;
 | 
			
		||||
        foreach (string matchingFile in matchingFiles)
 | 
			
		||||
        {
 | 
			
		||||
            checkFile = $"{matchingFile[0]}{matchingFile.Substring(parentDirectoryLength + numberLength + 1)}";
 | 
			
		||||
            pre = new(matchingFile, checkFile);
 | 
			
		||||
            results.Add(pre);
 | 
			
		||||
        }
 | 
			
		||||
        return results.AsReadOnly();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private void MoveCollection(DateTime dateTime, ProcessDataStandardFormat processDataStandardFormat, ReadOnlyCollection<PreWith> preWithCollection)
 | 
			
		||||
    {
 | 
			
		||||
        ReadOnlyCollection<Post> postCollection = GetPostCollection(dateTime, processDataStandardFormat, preWithCollection);
 | 
			
		||||
        if (postCollection.Count != 0)
 | 
			
		||||
        {
 | 
			
		||||
            Thread.Sleep(500);
 | 
			
		||||
            StringBuilder stringBuilder = new();
 | 
			
		||||
            foreach (Post post in postCollection)
 | 
			
		||||
            {
 | 
			
		||||
                if (File.Exists(post.ErrFile))
 | 
			
		||||
                    _ = stringBuilder.AppendLine(File.ReadAllText(post.ErrFile));
 | 
			
		||||
                if (File.Exists(post.CheckFile))
 | 
			
		||||
                    _ = stringBuilder.AppendLine($"<{post.CheckFile}> was not consumed by the end!");
 | 
			
		||||
            }
 | 
			
		||||
            if (stringBuilder.Length > 0)
 | 
			
		||||
                throw new Exception(stringBuilder.ToString());
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private ReadOnlyCollection<Post> GetPostCollection(DateTime dateTime, ProcessDataStandardFormat processDataStandardFormat, ReadOnlyCollection<PreWith> preWithCollection)
 | 
			
		||||
    {
 | 
			
		||||
        List<Post> results = new();
 | 
			
		||||
        Post post;
 | 
			
		||||
        long preWait;
 | 
			
		||||
        foreach (PreWith preWith in preWithCollection)
 | 
			
		||||
        {
 | 
			
		||||
            if (!_IsEAFHosted)
 | 
			
		||||
                continue;
 | 
			
		||||
            if (!_StaticRuns.TryGetValue(_Logistics.Sequence, out List<Shared.Metrology.WS.Results>? wsResults))
 | 
			
		||||
                wsResults = null;
 | 
			
		||||
            if (processDataStandardFormat.InputPDSF is null)
 | 
			
		||||
                File.Move(preWith.MatchingFile, preWith.CheckFile);
 | 
			
		||||
            else
 | 
			
		||||
            {
 | 
			
		||||
                ProcessDataStandardFormat.Write(preWith.CheckFile, processDataStandardFormat, wsResults);
 | 
			
		||||
                File.Delete(preWith.MatchingFile);
 | 
			
		||||
            }
 | 
			
		||||
            if (Directory.Exists(preWith.NoWaitDirectory))
 | 
			
		||||
            {
 | 
			
		||||
                post = new(preWith.CheckFile, preWith.ErrFile);
 | 
			
		||||
                results.Add(post);
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
            if (_FileConnectorConfiguration?.FileHandleWaitTime is null)
 | 
			
		||||
                preWait = DateTime.Now.AddMilliseconds(1234).Ticks;
 | 
			
		||||
            else
 | 
			
		||||
                preWait = DateTime.Now.AddMilliseconds(_FileConnectorConfiguration.FileHandleWaitTime.Value).Ticks;
 | 
			
		||||
            for (short i = 0; i < short.MaxValue; i++)
 | 
			
		||||
            {
 | 
			
		||||
                if (DateTime.Now.Ticks > preWait)
 | 
			
		||||
                    break;
 | 
			
		||||
                Thread.Sleep(500);
 | 
			
		||||
            }
 | 
			
		||||
            for (int i = 0; i < int.MaxValue; i++)
 | 
			
		||||
            {
 | 
			
		||||
                if (File.Exists(preWith.ErrFile))
 | 
			
		||||
                    throw new Exception(File.ReadAllText(preWith.ErrFile));
 | 
			
		||||
                if (!File.Exists(preWith.CheckFile))
 | 
			
		||||
                    break;
 | 
			
		||||
                if (new TimeSpan(DateTime.Now.Ticks - dateTime.Ticks).TotalSeconds > _BreakAfterSeconds)
 | 
			
		||||
                    throw new Exception($"Not all files were consumed after {_BreakAfterSeconds} second(s)!");
 | 
			
		||||
                Thread.Sleep(500);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return results.AsReadOnly();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private Tuple<string, Test[], JsonElement[], List<FileInfo>> GetExtractResult(string reportFullPath, DateTime dateTime)
 | 
			
		||||
    {
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> results = new(string.Empty, Array.Empty<Test>(), Array.Empty<JsonElement>(), new List<FileInfo>());
 | 
			
		||||
        ProcessDataStandardFormat processDataStandardFormat = ProcessDataStandardFormat.GetProcessDataStandardFormat(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, processDataStandardFormat);
 | 
			
		||||
        if (!_IsEAFHosted)
 | 
			
		||||
            ProcessDataStandardFormat.Write("../../.pdsf", processDataStandardFormat, wsResults: null);
 | 
			
		||||
        SetFileParameterLotIDToLogisticsMID();
 | 
			
		||||
        int numberLength = 2;
 | 
			
		||||
        long ticks = dateTime.Ticks;
 | 
			
		||||
        string parentParentDirectory = GetParentParent(reportFullPath);
 | 
			
		||||
        ReadOnlyCollection<string> searchDirectories = GetSearchDirectories(numberLength, parentParentDirectory);
 | 
			
		||||
        ReadOnlyCollection<string> matchingFiles = GetMatchingFiles(ticks, reportFullPath, searchDirectories);
 | 
			
		||||
        if (matchingFiles.Count != searchDirectories.Count)
 | 
			
		||||
            throw new Exception($"Didn't find all files after {_BreakAfterSeconds} second(s)!");
 | 
			
		||||
        if (_IsEAFHosted)
 | 
			
		||||
        {
 | 
			
		||||
            try
 | 
			
		||||
            { CreatePointerFile(numberLength, parentParentDirectory, matchingFiles); }
 | 
			
		||||
            catch (Exception) { }
 | 
			
		||||
        }
 | 
			
		||||
        ReadOnlyCollection<Pre> preCollection = GetPreCollection(numberLength, parentParentDirectory, matchingFiles);
 | 
			
		||||
        ReadOnlyCollection<PreWith> preWithCollection = GetPreWithCollection(preCollection);
 | 
			
		||||
        MoveCollection(dateTime, processDataStandardFormat, preWithCollection);
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private List<string> GetMatchingFiles(long ticks, string reportFullPath, List<string> searchDirectories)
 | 
			
		||||
    private ReadOnlyCollection<string> GetMatchingFiles(long ticks, string reportFullPath, ReadOnlyCollection<string> searchDirectories)
 | 
			
		||||
    {
 | 
			
		||||
        List<string> results = new();
 | 
			
		||||
        string[] found;
 | 
			
		||||
@ -137,131 +348,7 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
                    break;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static List<(string matchingFile, string checkFile)> GetCollection(int numberLength, string parentDirectory, List<string> matchingFiles)
 | 
			
		||||
    {
 | 
			
		||||
        List<(string matchingFile, string checkFile)> results = new();
 | 
			
		||||
        string checkFile;
 | 
			
		||||
        int parentDirectoryLength = parentDirectory.Length;
 | 
			
		||||
        foreach (string matchingFile in matchingFiles)
 | 
			
		||||
        {
 | 
			
		||||
            checkFile = $"{matchingFile[0]}{matchingFile.Substring(parentDirectoryLength + numberLength + 1)}";
 | 
			
		||||
            results.Add(new(matchingFile, checkFile));
 | 
			
		||||
        }
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static List<(string, string, string, string, string)> GetCollection(List<(string matchingFile, string checkFile)> collection)
 | 
			
		||||
    {
 | 
			
		||||
        List<(string, string, string, string, string)> results = new();
 | 
			
		||||
        string errFile;
 | 
			
		||||
        string checkDirectory;
 | 
			
		||||
        string noWaitDirectory;
 | 
			
		||||
        foreach ((string matchingFile, string checkFile) in collection)
 | 
			
		||||
        {
 | 
			
		||||
            errFile = string.Concat(checkFile, ".err");
 | 
			
		||||
            checkDirectory = Path.GetDirectoryName(checkFile);
 | 
			
		||||
            if (!Directory.Exists(checkDirectory))
 | 
			
		||||
                _ = Directory.CreateDirectory(checkDirectory);
 | 
			
		||||
            noWaitDirectory = Path.Combine(checkDirectory, "NoWaitDirectory");
 | 
			
		||||
            results.Add(new(matchingFile, checkFile, errFile, checkDirectory, noWaitDirectory));
 | 
			
		||||
        }
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private void MoveCollection(DateTime dateTime, List<(string matchingFile, string checkFile)> collection)
 | 
			
		||||
    {
 | 
			
		||||
        long preWait;
 | 
			
		||||
        List<(string checkFile, string errFile)> postCollection = new();
 | 
			
		||||
        foreach ((string matchingFile, string checkFile, string errFile, string checkDirectory, string noWaitDirectory) in GetCollection(collection))
 | 
			
		||||
        {
 | 
			
		||||
            File.Move(matchingFile, checkFile);
 | 
			
		||||
            if (Directory.Exists(noWaitDirectory))
 | 
			
		||||
            {
 | 
			
		||||
                postCollection.Add(new(checkFile, errFile));
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
            if (_FileConnectorConfiguration?.FileHandleWaitTime is null)
 | 
			
		||||
                preWait = DateTime.Now.AddMilliseconds(1234).Ticks;
 | 
			
		||||
            else
 | 
			
		||||
                preWait = DateTime.Now.AddMilliseconds(_FileConnectorConfiguration.FileHandleWaitTime.Value).Ticks;
 | 
			
		||||
            for (short i = 0; i < short.MaxValue; i++)
 | 
			
		||||
            {
 | 
			
		||||
                if (DateTime.Now.Ticks > preWait)
 | 
			
		||||
                    break;
 | 
			
		||||
                Thread.Sleep(500);
 | 
			
		||||
            }
 | 
			
		||||
            for (int i = 0; i < int.MaxValue; i++)
 | 
			
		||||
            {
 | 
			
		||||
                if (File.Exists(errFile))
 | 
			
		||||
                    throw new Exception(File.ReadAllText(errFile));
 | 
			
		||||
                if (!File.Exists(checkFile))
 | 
			
		||||
                    break;
 | 
			
		||||
                if (new TimeSpan(DateTime.Now.Ticks - dateTime.Ticks).TotalSeconds > _BreakAfterSeconds)
 | 
			
		||||
                    throw new Exception($"Not all files were consumed after {_BreakAfterSeconds} second(s)!");
 | 
			
		||||
                Thread.Sleep(500);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        if (postCollection.Count != 0)
 | 
			
		||||
        {
 | 
			
		||||
            Thread.Sleep(500);
 | 
			
		||||
            StringBuilder stringBuilder = new();
 | 
			
		||||
            foreach ((string checkFile, string errFile) in postCollection)
 | 
			
		||||
            {
 | 
			
		||||
                if (File.Exists(errFile))
 | 
			
		||||
                    _ = stringBuilder.AppendLine(File.ReadAllText(errFile));
 | 
			
		||||
                if (File.Exists(checkFile))
 | 
			
		||||
                    _ = stringBuilder.AppendLine($"<{checkFile}> was not consumed by the end!");
 | 
			
		||||
            }
 | 
			
		||||
            if (stringBuilder.Length > 0)
 | 
			
		||||
                throw new Exception(stringBuilder.ToString());
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void CreatePointerFile(int numberLength, string parentDirectory, List<string> matchingFiles)
 | 
			
		||||
    {
 | 
			
		||||
#nullable enable
 | 
			
		||||
        string checkFile;
 | 
			
		||||
        string writeFile;
 | 
			
		||||
        string? directoryName;
 | 
			
		||||
        int parentDirectoryLength = parentDirectory.Length;
 | 
			
		||||
        foreach (string matchingFile in matchingFiles)
 | 
			
		||||
        {
 | 
			
		||||
            directoryName = Path.GetDirectoryName(matchingFile);
 | 
			
		||||
            if (directoryName is null)
 | 
			
		||||
                continue;
 | 
			
		||||
            checkFile = $"{matchingFile[0]}{directoryName.Substring(parentDirectoryLength + numberLength + 1)}";
 | 
			
		||||
            writeFile = Path.Combine(parentDirectory, $"{directoryName.Substring(parentDirectory.Length + 1, numberLength)}.txt");
 | 
			
		||||
            if (File.Exists(writeFile))
 | 
			
		||||
                continue;
 | 
			
		||||
            File.AppendAllLines(writeFile, new string[] { parentDirectory, matchingFile, directoryName, checkFile });
 | 
			
		||||
        }
 | 
			
		||||
#nullable disable
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private Tuple<string, Test[], JsonElement[], List<FileInfo>> GetExtractResult(string reportFullPath, DateTime dateTime)
 | 
			
		||||
    {
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> results = new(string.Empty, null, null, new List<FileInfo>());
 | 
			
		||||
        Tuple<string, string[], string[]> pdsf = ProcessDataStandardFormat.GetLogisticsColumnsAndBody(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, pdsf.Item1);
 | 
			
		||||
        SetFileParameterLotIDToLogisticsMID();
 | 
			
		||||
        if (string.IsNullOrEmpty(_Logistics.JobID) || _Logistics.JobID == "null")
 | 
			
		||||
            throw new NotSupportedException("JobId is null! Please update Logistics.");
 | 
			
		||||
        int numberLength = 2;
 | 
			
		||||
        long ticks = dateTime.Ticks;
 | 
			
		||||
        string parentParentDirectory = GetParentParent(reportFullPath);
 | 
			
		||||
        List<string> searchDirectories = GetSearchDirectories(numberLength, parentParentDirectory);
 | 
			
		||||
        List<string> matchingFiles = GetMatchingFiles(ticks, reportFullPath, searchDirectories);
 | 
			
		||||
        if (matchingFiles.Count != searchDirectories.Count)
 | 
			
		||||
            throw new Exception($"Didn't find all files after {_BreakAfterSeconds} second(s)!");
 | 
			
		||||
        try
 | 
			
		||||
        { CreatePointerFile(numberLength, parentParentDirectory, matchingFiles); }
 | 
			
		||||
        catch (Exception) { }
 | 
			
		||||
        List<(string matchingFile, string checkFile)> collection = GetCollection(numberLength, parentParentDirectory, matchingFiles);
 | 
			
		||||
        MoveCollection(dateTime, collection);
 | 
			
		||||
        return results;
 | 
			
		||||
        return results.AsReadOnly();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@ -17,7 +17,7 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
    private readonly string _JobIdParentDirectory;
 | 
			
		||||
    private readonly string _JobIdProcessParentDirectory;
 | 
			
		||||
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<string>> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) :
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<Shared.Metrology.WS.Results>> 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;
 | 
			
		||||
@ -129,6 +129,7 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
        string destinationJobIdDirectory = Path.Combine(_JobIdProcessParentDirectory, _Logistics.JobID, directoryName);
 | 
			
		||||
        string sequenceDirectory = Path.Combine(destinationJobIdDirectory, logisticsSequence);
 | 
			
		||||
        // string jsonFileName = Path.Combine(sequenceDirectory, $"{Path.GetFileNameWithoutExtension(reportFullPath)}.json");
 | 
			
		||||
        MoveMatchingFile(jobIdDirectory, matchDirectories[0]);
 | 
			
		||||
        Directory.Move(matchDirectories[0], destinationJobIdDirectory);
 | 
			
		||||
        if (!Directory.Exists(sequenceDirectory))
 | 
			
		||||
            _ = Directory.CreateDirectory(sequenceDirectory);
 | 
			
		||||
@ -136,16 +137,40 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
        // File.WriteAllText(jsonFileName, json);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void MoveMatchingFile(string jobIdDirectory, string matchDirectory)
 | 
			
		||||
    {
 | 
			
		||||
        string checkFile;
 | 
			
		||||
        string jobIdDirectoryFileName;
 | 
			
		||||
        string matchDirectoryFileName;
 | 
			
		||||
        string[] jobIdDirectoryFiles = Directory.GetFiles(jobIdDirectory, "*", SearchOption.TopDirectoryOnly);
 | 
			
		||||
        string[] matchDirectoryFiles = Directory.GetFiles(matchDirectory, "*", SearchOption.TopDirectoryOnly);
 | 
			
		||||
        foreach (string jobIdDirectoryFile in jobIdDirectoryFiles)
 | 
			
		||||
        {
 | 
			
		||||
            jobIdDirectoryFileName = Path.GetFileName(jobIdDirectoryFile);
 | 
			
		||||
            foreach (string matchDirectoryFile in matchDirectoryFiles)
 | 
			
		||||
            {
 | 
			
		||||
                matchDirectoryFileName = Path.GetFileName(matchDirectoryFile);
 | 
			
		||||
                if (jobIdDirectoryFileName.StartsWith(matchDirectoryFileName))
 | 
			
		||||
                {
 | 
			
		||||
                    checkFile = Path.Combine(matchDirectory, jobIdDirectoryFileName);
 | 
			
		||||
                    if (File.Exists(checkFile))
 | 
			
		||||
                        continue;
 | 
			
		||||
                    File.Move(jobIdDirectoryFile, checkFile);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private Tuple<string, Test[], JsonElement[], List<FileInfo>> GetExtractResult(string reportFullPath, DateTime dateTime)
 | 
			
		||||
    {
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> results;
 | 
			
		||||
        Tuple<string, string[], string[]> pdsf = ProcessDataStandardFormat.GetLogisticsColumnsAndBody(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, pdsf.Item1);
 | 
			
		||||
        ProcessDataStandardFormat processDataStandardFormat = ProcessDataStandardFormat.GetProcessDataStandardFormat(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, processDataStandardFormat);
 | 
			
		||||
        SetFileParameterLotIDToLogisticsMID();
 | 
			
		||||
        JsonElement[] jsonElements = ProcessDataStandardFormat.GetArray(pdsf);
 | 
			
		||||
        JsonElement[] jsonElements = ProcessDataStandardFormat.GetArray(processDataStandardFormat);
 | 
			
		||||
        List<csv.Description> descriptions = csv.ProcessData.GetDescriptions(jsonElements);
 | 
			
		||||
        Test[] tests = (from l in descriptions select (Test)l.Test).ToArray();
 | 
			
		||||
        results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(pdsf.Item1, tests, jsonElements, new List<FileInfo>());
 | 
			
		||||
        results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(string.Join(Environment.NewLine, processDataStandardFormat.Logistics), tests, jsonElements, new List<FileInfo>());
 | 
			
		||||
        if (_IsEAFHosted && _FileConnectorConfiguration.FileScanningIntervalInSeconds > 0)
 | 
			
		||||
            DirectoryMove(reportFullPath, dateTime, descriptions);
 | 
			
		||||
        else if (!_IsEAFHosted)
 | 
			
		||||
 | 
			
		||||
@ -14,7 +14,7 @@ namespace Adaptation.FileHandlers.SPaCe;
 | 
			
		||||
public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<string>> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) :
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<Shared.Metrology.WS.Results>> 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;
 | 
			
		||||
@ -117,15 +117,15 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
    private Tuple<string, Test[], JsonElement[], List<FileInfo>> GetExtractResult(string reportFullPath, DateTime dateTime)
 | 
			
		||||
    {
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> results;
 | 
			
		||||
        Tuple<string, string[], string[]> pdsf = ProcessDataStandardFormat.GetLogisticsColumnsAndBody(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, pdsf.Item1);
 | 
			
		||||
        ProcessDataStandardFormat processDataStandardFormat = ProcessDataStandardFormat.GetProcessDataStandardFormat(reportFullPath);
 | 
			
		||||
        _Logistics = new Logistics(reportFullPath, processDataStandardFormat);
 | 
			
		||||
        SetFileParameterLotIDToLogisticsMID();
 | 
			
		||||
        JsonElement[] jsonElements = ProcessDataStandardFormat.GetArray(pdsf);
 | 
			
		||||
        JsonElement[] jsonElements = ProcessDataStandardFormat.GetArray(processDataStandardFormat);
 | 
			
		||||
        List<Shared.Properties.IDescription> descriptions = GetDuplicatorDescriptions(jsonElements);
 | 
			
		||||
        Test[] tests = (from l in descriptions select (Test)l.Test).ToArray();
 | 
			
		||||
        if (_IsEAFHosted && _FileConnectorConfiguration.FileScanningIntervalInSeconds > 0)
 | 
			
		||||
            FileCopy(reportFullPath, dateTime, descriptions);
 | 
			
		||||
        results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(pdsf.Item1, tests, jsonElements, new List<FileInfo>());
 | 
			
		||||
        results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(string.Join(Environment.NewLine, processDataStandardFormat.Logistics), tests, jsonElements, new List<FileInfo>());
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -24,7 +24,7 @@ public class Description : IDescription, Shared.Properties.IDescription
 | 
			
		||||
    public string MID { get; set; }
 | 
			
		||||
    //
 | 
			
		||||
    public string Date { get; set; }
 | 
			
		||||
    public string Lot { get; set; }
 | 
			
		||||
    public string RDS { get; set; }
 | 
			
		||||
    public string Part { get; set; }
 | 
			
		||||
    public string Process { get; set; }
 | 
			
		||||
    public string Recipe { get; set; }
 | 
			
		||||
@ -65,7 +65,7 @@ public class Description : IDescription, Shared.Properties.IDescription
 | 
			
		||||
        List<string> results = new()
 | 
			
		||||
        {
 | 
			
		||||
            nameof(Date),
 | 
			
		||||
            nameof(Lot),
 | 
			
		||||
            nameof(RDS),
 | 
			
		||||
            nameof(Part),
 | 
			
		||||
            nameof(Process),
 | 
			
		||||
            nameof(Recipe)
 | 
			
		||||
@ -165,9 +165,9 @@ public class Description : IDescription, Shared.Properties.IDescription
 | 
			
		||||
                    MID = logistics.MID,
 | 
			
		||||
                    //
 | 
			
		||||
                    Date = detail.Date,
 | 
			
		||||
                    Lot = processData.MetaData.Date,
 | 
			
		||||
                    Part = $"{processData.MetaData.DeviceType}-{processData.MetaData.DeviceNumber}",
 | 
			
		||||
                    Process = $"{processData.MetaData.DeviceId}",
 | 
			
		||||
                    RDS = processData.MetaData.Date,
 | 
			
		||||
                    Part = $"{processData.MetaData.DeviceId}-{processData.MetaData.DeviceType}-{processData.MetaData.DeviceNumber}",
 | 
			
		||||
                    Process = $"{processData.MetaData.DescriptionName}",
 | 
			
		||||
                    Recipe = processData.MetaData.Frequency,
 | 
			
		||||
                    //
 | 
			
		||||
                    Name = detail.Test,
 | 
			
		||||
@ -204,7 +204,7 @@ public class Description : IDescription, Shared.Properties.IDescription
 | 
			
		||||
            MID = logistics.MID,
 | 
			
		||||
            //
 | 
			
		||||
            Date = nameof(Date),
 | 
			
		||||
            Lot = nameof(Lot),
 | 
			
		||||
            RDS = nameof(RDS),
 | 
			
		||||
            Part = nameof(Part),
 | 
			
		||||
            Process = nameof(Process),
 | 
			
		||||
            Recipe = nameof(Recipe),
 | 
			
		||||
 | 
			
		||||
@ -15,10 +15,10 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
    private long? _TickOffset;
 | 
			
		||||
    private readonly CommaSeparatedValuesConfiguration _CommaSeparatedValuesConfiguration;
 | 
			
		||||
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<string>> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) :
 | 
			
		||||
    public FileRead(ISMTP smtp, Dictionary<string, string> fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList<ModelObjectParameterDefinition> modelObjectParameters, string equipmentDictionaryName, Dictionary<string, List<long>> dummyRuns, Dictionary<long, List<Shared.Metrology.WS.Results>> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) :
 | 
			
		||||
        base(new Description(), true, smtp, fileParameter, cellInstanceName, connectionCount, cellInstanceConnectionName, fileConnectorConfiguration, equipmentTypeName, parameterizedModelObjectDefinitionType, modelObjectParameters, equipmentDictionaryName, dummyRuns, staticRuns, useCyclicalForDescription, isEAFHosted: connectionCount is null)
 | 
			
		||||
    {
 | 
			
		||||
        _MinFileLength = 0;
 | 
			
		||||
        _MinFileLength = 1000;
 | 
			
		||||
        _Logistics = new(this);
 | 
			
		||||
        _NullData = string.Empty;
 | 
			
		||||
        if (_FileParameter is null)
 | 
			
		||||
@ -109,16 +109,15 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
    private Tuple<string, Test[], JsonElement[], List<FileInfo>> GetExtractResult(string reportFullPath, DateTime dateTime)
 | 
			
		||||
    {
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> results = new(string.Empty, null, null, new List<FileInfo>());
 | 
			
		||||
        _TickOffset ??= 0; // new FileInfo(reportFullPath).LastWriteTime.Ticks - dateTime.Ticks;
 | 
			
		||||
        string csvFile = Path.Combine(Path.GetDirectoryName(reportFullPath), Path.GetFileNameWithoutExtension(reportFullPath));
 | 
			
		||||
        if (!File.Exists(csvFile))
 | 
			
		||||
            throw new Exception($"<{csvFile}> doesn't exist!");
 | 
			
		||||
        FileInfo fileInfo = new(csvFile);
 | 
			
		||||
        File.SetCreationTime(reportFullPath, fileInfo.LastWriteTime);
 | 
			
		||||
        File.SetLastWriteTime(reportFullPath, fileInfo.LastWriteTime);
 | 
			
		||||
        _TickOffset ??= new FileInfo(reportFullPath).LastWriteTime.Ticks - dateTime.Ticks;
 | 
			
		||||
        _Logistics = new Logistics(this, _TickOffset.Value, reportFullPath, useSplitForMID: true);
 | 
			
		||||
        _Logistics = new Logistics(this, _TickOffset.Value, csvFile, useSplitForMID: true);
 | 
			
		||||
        if (!_Logistics.FileInfo.Exists)
 | 
			
		||||
            throw new Exception($"<{_Logistics.FileInfo.FullName}> doesn't exist!");
 | 
			
		||||
        File.SetCreationTime(reportFullPath, _Logistics.FileInfo.LastWriteTime);
 | 
			
		||||
        File.SetLastWriteTime(reportFullPath, _Logistics.FileInfo.LastWriteTime);
 | 
			
		||||
        SetFileParameterLotIDToLogisticsMID();
 | 
			
		||||
        string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(csvFile);
 | 
			
		||||
        string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(_Logistics.FileInfo.FullName);
 | 
			
		||||
#nullable enable
 | 
			
		||||
        MetaData? metaData = ProcessData.GetMetaData(_CommaSeparatedValuesConfiguration, fileNameWithoutExtension);
 | 
			
		||||
        if (metaData is null)
 | 
			
		||||
@ -127,7 +126,7 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
            results.Item4.Add(_Logistics.FileInfo);
 | 
			
		||||
        else
 | 
			
		||||
        {
 | 
			
		||||
            IProcessData iProcessData = new ProcessData(this, _Logistics, results.Item4, _CommaSeparatedValuesConfiguration, csvFile, metaData);
 | 
			
		||||
            IProcessData iProcessData = new ProcessData(this, _Logistics, results.Item4, _CommaSeparatedValuesConfiguration, metaData);
 | 
			
		||||
            if (iProcessData is not ProcessData processData)
 | 
			
		||||
                throw new Exception(string.Concat("A) No Data - ", dateTime.Ticks));
 | 
			
		||||
            if (processData.MetaData is null)
 | 
			
		||||
@ -138,8 +137,9 @@ public class FileRead : Shared.FileRead, IFileRead
 | 
			
		||||
            if (iProcessData.Details.Count == 0)
 | 
			
		||||
                throw new Exception(string.Concat("C) No Data - ", dateTime.Ticks));
 | 
			
		||||
            results = iProcessData.GetResults(this, _Logistics, results.Item4);
 | 
			
		||||
            File.Delete(reportFullPath);
 | 
			
		||||
        }
 | 
			
		||||
        if (_IsEAFHosted)
 | 
			
		||||
            File.Delete(reportFullPath);
 | 
			
		||||
#nullable disable
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@ -6,7 +6,8 @@ public class MetaData
 | 
			
		||||
    public int DeviceId { get; set; }
 | 
			
		||||
    public string DeviceType { get; set; }
 | 
			
		||||
    public int DeviceNumber { get; set; }
 | 
			
		||||
    public string Description { get; set; }
 | 
			
		||||
    public string DescriptionName { get; set; }
 | 
			
		||||
    public string DescriptionTest { get; set; }
 | 
			
		||||
    public string Frequency { get; set; }
 | 
			
		||||
    public string Date { get; set; }
 | 
			
		||||
    public string System { get; set; }
 | 
			
		||||
 | 
			
		||||
@ -22,13 +22,12 @@ public class ProcessData : IProcessData
 | 
			
		||||
 | 
			
		||||
    List<object> Shared.Properties.IProcessData.Details => _Details;
 | 
			
		||||
 | 
			
		||||
    public ProcessData(IFileRead fileRead, Logistics logistics, List<FileInfo> fileInfoCollection, CommaSeparatedValuesConfiguration commaSeparatedValuesConfiguration, string csvFile, MetaData metaData)
 | 
			
		||||
    public ProcessData(IFileRead fileRead, Logistics logistics, List<FileInfo> fileInfoCollection, CommaSeparatedValuesConfiguration commaSeparatedValuesConfiguration, MetaData metaData)
 | 
			
		||||
    {
 | 
			
		||||
        JobID = logistics.JobID;
 | 
			
		||||
        fileInfoCollection.Clear();
 | 
			
		||||
        _Details = new List<object>();
 | 
			
		||||
        MesEntity = logistics.MesEntity;
 | 
			
		||||
        Parse(fileRead, logistics, fileInfoCollection, commaSeparatedValuesConfiguration, csvFile, metaData);
 | 
			
		||||
        Parse(fileRead, logistics, fileInfoCollection, commaSeparatedValuesConfiguration, metaData);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    string IProcessData.GetCurrentReactor(IFileRead fileRead, Logistics logistics, Dictionary<string, string> reactors) => throw new Exception(string.Concat("See ", nameof(Parse)));
 | 
			
		||||
@ -49,9 +48,13 @@ public class ProcessData : IProcessData
 | 
			
		||||
            if (description.Test != (int)tests[i])
 | 
			
		||||
                throw new Exception();
 | 
			
		||||
        }
 | 
			
		||||
        FileInfo fileInfo = new($"{logistics.ReportFullPath}.descriptions.json");
 | 
			
		||||
        List<Description> fileReadDescriptions = (from l in descriptions select (Description)l).ToList();
 | 
			
		||||
        string json = JsonSerializer.Serialize(fileReadDescriptions, fileReadDescriptions.GetType());
 | 
			
		||||
        JsonElement[] jsonElements = JsonSerializer.Deserialize<JsonElement[]>(json);
 | 
			
		||||
        File.WriteAllText(fileInfo.FullName, json);
 | 
			
		||||
        File.SetLastWriteTime(fileInfo.FullName, logistics.DateTimeFromSequence);
 | 
			
		||||
        fileInfoCollection.Add(fileInfo);
 | 
			
		||||
        JsonElement[] jsonElements = JsonSerializer.Deserialize<JsonElement[]>(json) ?? throw new Exception();
 | 
			
		||||
        results = new Tuple<string, Test[], JsonElement[], List<FileInfo>>(logistics.Logistics1[0], tests.ToArray(), jsonElements, fileInfoCollection);
 | 
			
		||||
        return results;
 | 
			
		||||
    }
 | 
			
		||||
@ -73,7 +76,8 @@ public class ProcessData : IProcessData
 | 
			
		||||
                DeviceId = deviceId,
 | 
			
		||||
                DeviceType = match.Groups["DeviceType"].Value,
 | 
			
		||||
                DeviceNumber = deviceNumber,
 | 
			
		||||
                Description = match.Groups["Description"].Value,
 | 
			
		||||
                DescriptionName = match.Groups["DescriptionName"].Value,
 | 
			
		||||
                DescriptionTest = match.Groups["DescriptionTest"].Value,
 | 
			
		||||
                Frequency = match.Groups["Frequency"].Value,
 | 
			
		||||
                Date = match.Groups["Date"].Value
 | 
			
		||||
            };
 | 
			
		||||
@ -82,17 +86,17 @@ public class ProcessData : IProcessData
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
    private void Parse(IFileRead fileRead, Logistics logistics, List<FileInfo> fileInfoCollection, CommaSeparatedValuesConfiguration commaSeparatedValuesConfiguration, string csvFile, MetaData metaData)
 | 
			
		||||
    private void Parse(IFileRead fileRead, Logistics logistics, List<FileInfo> fileInfoCollection, CommaSeparatedValuesConfiguration commaSeparatedValuesConfiguration, MetaData metaData)
 | 
			
		||||
#pragma warning restore IDE0060
 | 
			
		||||
    {
 | 
			
		||||
        string[] lines = File.ReadAllLines(csvFile);
 | 
			
		||||
        string[] lines = File.ReadAllLines(logistics.FileInfo.FullName);
 | 
			
		||||
        string line = lines[0];
 | 
			
		||||
        string[] columns = line.Split('"');
 | 
			
		||||
        fileInfoCollection.Add(new FileInfo(csvFile));
 | 
			
		||||
        fileInfoCollection.Add(logistics.FileInfo);
 | 
			
		||||
        if (columns.Length == commaSeparatedValuesConfiguration.Columns)
 | 
			
		||||
        {
 | 
			
		||||
            string test = columns[commaSeparatedValuesConfiguration.TestIndex].Trim().Trim('"');
 | 
			
		||||
            if (test == metaData.Description)
 | 
			
		||||
            if (test.IndexOf(metaData.DescriptionTest, 0, StringComparison.CurrentCultureIgnoreCase) > -1 && test.IndexOf(metaData.DescriptionName, 0, StringComparison.CurrentCultureIgnoreCase) > -1)
 | 
			
		||||
            {
 | 
			
		||||
                for (int i = 1; i < lines.Length; i++)
 | 
			
		||||
                {
 | 
			
		||||
@ -102,12 +106,11 @@ public class ProcessData : IProcessData
 | 
			
		||||
                    columns = line.Split(',').Select(l => l.Trim().Trim('"')).ToArray();
 | 
			
		||||
                    if (columns.Length != commaSeparatedValuesConfiguration.Columns)
 | 
			
		||||
                        continue;
 | 
			
		||||
                    _Details.Add(new Record() { Test = test, Date = columns[0], Value = columns[1], Event = columns[2] });
 | 
			
		||||
                    _Details.Add(new Record() { Test = metaData.DescriptionTest, Date = columns[0], Value = columns[1], Event = columns[2] });
 | 
			
		||||
                }
 | 
			
		||||
                MetaData = metaData;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    internal static List<Description> GetDescriptions(JsonElement[] jsonElements)
 | 
			
		||||
 | 
			
		||||
@ -26,7 +26,7 @@ steps:
 | 
			
		||||
    displayName: Configuration
 | 
			
		||||
 | 
			
		||||
  - script: |
 | 
			
		||||
      set nugetSource=https://eaf-dev-reporting.mes.infineon.com/v3/index.json
 | 
			
		||||
      set nugetSource=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/index.json;D:/vsts-agent-win-x64-2.210.1-eaf/nuget
 | 
			
		||||
      echo %nugetSource%
 | 
			
		||||
      echo ##vso[task.setvariable variable=NugetSource;]%nugetSource%
 | 
			
		||||
      echo $(NugetSource)
 | 
			
		||||
@ -121,7 +121,7 @@ steps:
 | 
			
		||||
    displayName: "Core Publish"
 | 
			
		||||
    enabled: false
 | 
			
		||||
 | 
			
		||||
  - script: '"C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe" /target:Restore /detailedsummary /consoleloggerparameters:PerformanceSummary;ErrorsOnly; /property:Configuration=$(Configuration);TargetFrameworkVersion=v4.8 /p:RestoreSources=$(NugetSource)'
 | 
			
		||||
  - script: '"C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe" /target:Restore /detailedsummary /consoleloggerparameters:PerformanceSummary;ErrorsOnly; /property:Configuration=$(Configuration);TargetFrameworkVersion=v4.8 /p:RestoreSources="$(NugetSource)"'
 | 
			
		||||
    displayName: "MSBuild Restore"
 | 
			
		||||
 | 
			
		||||
  - script: '"C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe" /target:Build /detailedsummary /consoleloggerparameters:PerformanceSummary;ErrorsOnly; /property:Configuration=$(Configuration);TargetFrameworkVersion=v4.8'
 | 
			
		||||
@ -140,11 +140,11 @@ steps:
 | 
			
		||||
    enabled: false
 | 
			
		||||
 | 
			
		||||
  - task: CopyFiles@2
 | 
			
		||||
    displayName: 'Copy Files to: \\mesfs.infineon.com\EC_EAFRepository'
 | 
			
		||||
    displayName: 'Copy Files to: Local D EAF Deployment Storage'
 | 
			
		||||
    inputs:
 | 
			
		||||
      Contents: "*$(Build.Repository.Name)*"
 | 
			
		||||
      SourceFolder: 'bin\$(Configuration)'
 | 
			
		||||
      TargetFolder: '\\mesfs.infineon.com\EC_EAFRepository\Staging\DeploymentStorage\Adaptation_$(Build.Repository.Name)'
 | 
			
		||||
      TargetFolder: 'D:\EAF\EAF Deployment Storage\Adaptation_$(Build.Repository.Name)'
 | 
			
		||||
      OverWrite: true
 | 
			
		||||
    enabled: false
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -32,7 +32,10 @@
 | 
			
		||||
        <DefineConstants>Linux</DefineConstants>
 | 
			
		||||
    </PropertyGroup>
 | 
			
		||||
    <ItemGroup>
 | 
			
		||||
        <PackageReference Include="coverlet.collector" Version="6.0.0" />
 | 
			
		||||
        <RuntimeHostConfigurationOption Include="AssemblyName" Value="METCLIMATEC" />
 | 
			
		||||
    </ItemGroup>
 | 
			
		||||
    <ItemGroup>
 | 
			
		||||
        <PackageReference Include="coverlet.collector" Version="6.0.3" />
 | 
			
		||||
        <PackageReference Include="FFMpegCore" Version="5.1.0" />
 | 
			
		||||
        <PackageReference Include="IKVM.AWT.WinForms" Version="7.2.4630.5"><NoWarn>NU1701</NoWarn></PackageReference>
 | 
			
		||||
        <PackageReference Include="IKVM.OpenJDK.Core" Version="7.2.4630.5"><NoWarn>NU1701</NoWarn></PackageReference>
 | 
			
		||||
@ -41,45 +44,39 @@
 | 
			
		||||
        <PackageReference Include="IKVM.OpenJDK.Util" Version="7.2.4630.5"><NoWarn>NU1701</NoWarn></PackageReference>
 | 
			
		||||
        <PackageReference Include="IKVM.OpenJDK.XML.API" Version="7.2.4630.5"><NoWarn>NU1701</NoWarn></PackageReference>
 | 
			
		||||
        <PackageReference Include="IKVM.Runtime" Version="7.2.4630.5"><NoWarn>NU1701</NoWarn></PackageReference>
 | 
			
		||||
        <PackageReference Include="Instances" Version="3.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration.CommandLine" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration.json" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Logging.Console" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Logging" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Win32.SystemEvents" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="MSTest.TestAdapter" Version="3.1.1" />
 | 
			
		||||
        <PackageReference Include="MSTest.TestFramework" Version="3.1.1" />
 | 
			
		||||
        <PackageReference Include="Instances" Version="3.0.1" />
 | 
			
		||||
        <PackageReference Include="log4net" Version="3.0.3"></PackageReference>
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration.CommandLine" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration.json" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Configuration" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Logging.Console" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Extensions.Logging" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
 | 
			
		||||
        <PackageReference Include="Microsoft.Win32.SystemEvents" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="MSTest.TestAdapter" Version="3.7.0" />
 | 
			
		||||
        <PackageReference Include="MSTest.TestFramework" Version="3.7.0" />
 | 
			
		||||
        <PackageReference Include="Pdfbox" Version="1.1.1"><NoWarn>NU1701</NoWarn></PackageReference>
 | 
			
		||||
        <PackageReference Include="RoboSharp" Version="1.3.5" />
 | 
			
		||||
        <PackageReference Include="System.Configuration.ConfigurationManager" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="System.Data.OleDb" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="System.Data.SqlClient" Version="4.8.5" />
 | 
			
		||||
        <PackageReference Include="System.Drawing.Common" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="System.Text.Json" Version="8.0.0" />
 | 
			
		||||
        <PackageReference Include="Tesseract" Version="5.2.0" />
 | 
			
		||||
        <PackageReference Include="RoboSharp" Version="1.6.0" />
 | 
			
		||||
        <PackageReference Include="System.Configuration.ConfigurationManager" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="System.Data.OleDb" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="System.Data.SqlClient" Version="4.8.6" />
 | 
			
		||||
        <PackageReference Include="System.Drawing.Common" Version="9.0.0" />
 | 
			
		||||
        <PackageReference Include="System.Text.Json" Version="9.0.0" />
 | 
			
		||||
    </ItemGroup>
 | 
			
		||||
    <ItemGroup>
 | 
			
		||||
        <PackageReference Include="Microsoft.AspNet.WebApi.SelfHost" Version="5.2.9" />
 | 
			
		||||
        <PackageReference Include="Infineon.Mesa.PDF.Text.Stripper" Version="4.8.0.2"><NoWarn>NU1701</NoWarn></PackageReference>
 | 
			
		||||
    </ItemGroup>
 | 
			
		||||
    <ItemGroup>
 | 
			
		||||
        <PackageReference Include="Microsoft.TeamFoundationServer.Client" Version="16.205.1" />
 | 
			
		||||
        <PackageReference Include="Infineon.Yoda.DotNetCore" Version="5.4.3" />
 | 
			
		||||
        <PackageReference Include="Tibco.Rendezvous.DotNetCore" Version="8.5.0" />
 | 
			
		||||
        <PackageReference Include="Infineon.Yoda.DotNetCore" Version="5.4.1" />
 | 
			
		||||
    </ItemGroup>
 | 
			
		||||
    <ItemGroup>
 | 
			
		||||
        <PackageReference Include="Infineon.Mesa.PDF.Text.Stripper" Version="4.8.0.1"><NoWarn>NU1701</NoWarn></PackageReference>
 | 
			
		||||
    </ItemGroup>
 | 
			
		||||
    <ItemGroup>
 | 
			
		||||
        <PackageReference Include="External.Common.Logging.Core" Version="3.3.1"><NoWarn>NU1701</NoWarn></PackageReference>
 | 
			
		||||
        <PackageReference Include="External.Common.Logging" Version="3.3.1"><NoWarn>NU1701</NoWarn></PackageReference>
 | 
			
		||||
        <PackageReference Include="External.log4net" Version="2.0.8"><NoWarn>NU1701</NoWarn></PackageReference>
 | 
			
		||||
        <PackageReference Include="Tesseract" Version="5.2.0" />
 | 
			
		||||
    </ItemGroup>
 | 
			
		||||
    <ItemGroup>
 | 
			
		||||
        <None Include="appsettings.json">
 | 
			
		||||
 | 
			
		||||
@ -26,8 +26,8 @@ steps:
 | 
			
		||||
    displayName: Configuration
 | 
			
		||||
 | 
			
		||||
  - script: |
 | 
			
		||||
      REM set nugetSource=https://eaf-prod.mes.infineon.com/v3/index.json
 | 
			
		||||
      set nugetSource=https://eaf-dev-reporting.mes.infineon.com/v3/index.json
 | 
			
		||||
      REM set nugetSource=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/
 | 
			
		||||
      set nugetSource=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/index.json;D:/vsts-agent-win-x64-2.210.1-eaf/nuget
 | 
			
		||||
      echo %nugetSource%
 | 
			
		||||
      echo ##vso[task.setvariable variable=NugetSource;]%nugetSource%
 | 
			
		||||
      echo $(NugetSource)
 | 
			
		||||
@ -122,7 +122,7 @@ steps:
 | 
			
		||||
    displayName: "Core Publish"
 | 
			
		||||
    enabled: false
 | 
			
		||||
 | 
			
		||||
  - script: '"C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe" /target:Restore /detailedsummary /consoleloggerparameters:PerformanceSummary;ErrorsOnly; /property:Configuration=$(Configuration);TargetFrameworkVersion=v4.8 /p:RestoreSources=$(NugetSource)'
 | 
			
		||||
  - script: '"C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe" /target:Restore /detailedsummary /consoleloggerparameters:PerformanceSummary;ErrorsOnly; /property:Configuration=$(Configuration);TargetFrameworkVersion=v4.8 /p:RestoreSources="$(NugetSource)"'
 | 
			
		||||
    displayName: "MSBuild Restore"
 | 
			
		||||
 | 
			
		||||
  - script: '"C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe" /target:Build /detailedsummary /consoleloggerparameters:PerformanceSummary;ErrorsOnly; /property:Configuration=$(Configuration);TargetFrameworkVersion=v4.8'
 | 
			
		||||
@ -140,7 +140,7 @@ steps:
 | 
			
		||||
      OverWrite: true
 | 
			
		||||
 | 
			
		||||
  - task: CopyFiles@2
 | 
			
		||||
    displayName: 'Copy Files to: \\mesfs.infineon.com\EC_EAFRepository'
 | 
			
		||||
    displayName: 'Copy Files to: Local D EAF Deployment Storage'
 | 
			
		||||
    inputs:
 | 
			
		||||
      Contents: "*$(Build.Repository.Name)*"
 | 
			
		||||
      SourceFolder: 'bin\$(Configuration)'
 | 
			
		||||
 | 
			
		||||
@ -12,7 +12,7 @@ public class Description : IDescription, Properties.IDescription
 | 
			
		||||
    public int Test { get; set; }
 | 
			
		||||
    public int Count { get; set; }
 | 
			
		||||
    public int Index { get; set; }
 | 
			
		||||
    public string Lot { get; set; }
 | 
			
		||||
    public string RDS { get; set; }
 | 
			
		||||
    //
 | 
			
		||||
    public string EventName { get; set; }
 | 
			
		||||
    public string NullData { get; set; }
 | 
			
		||||
@ -141,7 +141,7 @@ public class Description : IDescription, Properties.IDescription
 | 
			
		||||
                    MID = logistics.MID,
 | 
			
		||||
                    //
 | 
			
		||||
                    Date = DateTime.Now.ToString(GetDateFormat()),
 | 
			
		||||
                    Lot = string.Empty,
 | 
			
		||||
                    RDS = string.Empty,
 | 
			
		||||
                };
 | 
			
		||||
                results.Add(description);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@ -35,6 +35,9 @@ public class Logistics : ILogistics
 | 
			
		||||
    public long Sequence => _Sequence;
 | 
			
		||||
    public double TotalSecondsSinceLastWriteTimeFromSequence => _TotalSecondsSinceLastWriteTimeFromSequence;
 | 
			
		||||
 | 
			
		||||
    private static string DefaultMesEntity(DateTime dateTime) =>
 | 
			
		||||
        string.Concat(dateTime.Ticks, "_MES_ENTITY");
 | 
			
		||||
 | 
			
		||||
    public Logistics(IFileRead fileRead)
 | 
			
		||||
    {
 | 
			
		||||
        DateTime dateTime = DateTime.Now;
 | 
			
		||||
@ -84,13 +87,13 @@ public class Logistics : ILogistics
 | 
			
		||||
        _Logistics2 = new List<Logistics2>();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Logistics(string reportFullPath, string logistics)
 | 
			
		||||
    internal Logistics(string reportFullPath, ProcessDataStandardFormat processDataStandardFormat)
 | 
			
		||||
    {
 | 
			
		||||
        string key;
 | 
			
		||||
        DateTime dateTime;
 | 
			
		||||
        string[] segments;
 | 
			
		||||
        _FileInfo = new(reportFullPath);
 | 
			
		||||
        _Logistics1 = logistics.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries).ToList();
 | 
			
		||||
        _Logistics1 = processDataStandardFormat.Logistics.ToList();
 | 
			
		||||
        if (Logistics1.Count == 0 || !Logistics1[0].StartsWith("LOGISTICS_1"))
 | 
			
		||||
        {
 | 
			
		||||
            _NullData = null;
 | 
			
		||||
@ -190,8 +193,6 @@ public class Logistics : ILogistics
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static string DefaultMesEntity(DateTime dateTime) => string.Concat(dateTime.Ticks, "_MES_ENTITY");
 | 
			
		||||
 | 
			
		||||
    internal void Update(string mid, string processJobID)
 | 
			
		||||
    {
 | 
			
		||||
        _MID = mid;
 | 
			
		||||
 | 
			
		||||
@ -2,18 +2,29 @@
 | 
			
		||||
 | 
			
		||||
public partial class WS
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public class Attachment
 | 
			
		||||
    {
 | 
			
		||||
 | 
			
		||||
        public string UniqueId { get; set; }
 | 
			
		||||
        public string DestinationFileName { get; set; }
 | 
			
		||||
        public string SourceFileName { get; set; }
 | 
			
		||||
#nullable enable
 | 
			
		||||
 | 
			
		||||
        public Attachment(string uniqueId, string destinationFileName, string sourceFileName)
 | 
			
		||||
        public long HeaderId { get; set; }
 | 
			
		||||
        public string UniqueId { get; set; }
 | 
			
		||||
        public string SubGroupId { get; set; }
 | 
			
		||||
        public string AttachmentId { get; set; }
 | 
			
		||||
        public string SourceFileName { get; set; }
 | 
			
		||||
        public string HeaderIdDirectory { get; set; }
 | 
			
		||||
        public string DestinationFileName { get; set; }
 | 
			
		||||
 | 
			
		||||
        public Attachment(Results? results, string headerIdDirectory, string uniqueId, string destinationFileName, string sourceFileName)
 | 
			
		||||
        {
 | 
			
		||||
            UniqueId = uniqueId;
 | 
			
		||||
            DestinationFileName = destinationFileName;
 | 
			
		||||
            SourceFileName = sourceFileName;
 | 
			
		||||
            HeaderIdDirectory = headerIdDirectory;
 | 
			
		||||
            DestinationFileName = destinationFileName;
 | 
			
		||||
            AttachmentId = System.Guid.NewGuid().ToString();
 | 
			
		||||
            HeaderId = results?.HeaderId is null ? -1 : results.HeaderId.Value;
 | 
			
		||||
            SubGroupId = results?.SubgroupId is null ? string.Empty : results.SubgroupId.Value.ToString();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@ -1,27 +1,75 @@
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Text.Json;
 | 
			
		||||
using System.Text.Json.Serialization;
 | 
			
		||||
 | 
			
		||||
namespace Adaptation.Shared.Metrology;
 | 
			
		||||
 | 
			
		||||
public partial class WS
 | 
			
		||||
{
 | 
			
		||||
    // this class represents the response from the Inbound API endpoint
 | 
			
		||||
 | 
			
		||||
    public class Results
 | 
			
		||||
    {
 | 
			
		||||
        // true or false if data was written to the database
 | 
			
		||||
        public bool Success { get; set; }
 | 
			
		||||
 | 
			
		||||
        // if true, contains ID of the Header record in the database
 | 
			
		||||
        public long HeaderID { get; set; }
 | 
			
		||||
#nullable enable
 | 
			
		||||
 | 
			
		||||
        // if false, this collection will contain a list of errors
 | 
			
		||||
        public List<string> Errors { get; set; }
 | 
			
		||||
        [JsonConstructor]
 | 
			
		||||
        public Results(List<string>? errors,
 | 
			
		||||
                       long? headerId,
 | 
			
		||||
                       long? subgroupId,
 | 
			
		||||
                       bool? success,
 | 
			
		||||
                       List<string>? warnings)
 | 
			
		||||
        {
 | 
			
		||||
            Errors = errors;
 | 
			
		||||
            Success = success;
 | 
			
		||||
            HeaderId = headerId;
 | 
			
		||||
            Warnings = warnings;
 | 
			
		||||
            SubgroupId = subgroupId;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // this collection will contain a list of warnings, they will not prevent data from being saved
 | 
			
		||||
        public List<string> Warnings { get; set; }
 | 
			
		||||
        [JsonPropertyName("errors")] public List<string>? Errors { get; set; }
 | 
			
		||||
        [JsonPropertyName("headerID")] public long? HeaderId { get; set; }
 | 
			
		||||
        [JsonPropertyName("subgroupId")] public long? SubgroupId { get; set; }
 | 
			
		||||
        [JsonPropertyName("success")] public bool? Success { get; set; }
 | 
			
		||||
        [JsonPropertyName("warnings")] public List<string>? Warnings { get; set; }
 | 
			
		||||
 | 
			
		||||
        public override string ToString()
 | 
			
		||||
        {
 | 
			
		||||
            string result = JsonSerializer.Serialize(this, ResultsSourceGenerationContext.Default.Results);
 | 
			
		||||
            return result;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        internal static Results Get(Results results, long? subgroupId) =>
 | 
			
		||||
            new(results.Errors, results.HeaderId, subgroupId, results.Success, results.Warnings);
 | 
			
		||||
 | 
			
		||||
        internal static Results Get(string resultsJson, Exception e)
 | 
			
		||||
        {
 | 
			
		||||
            Results results;
 | 
			
		||||
            Exception? exception = e;
 | 
			
		||||
            List<string> errors = new();
 | 
			
		||||
            StringBuilder stringBuilder = new();
 | 
			
		||||
            while (exception is not null)
 | 
			
		||||
            {
 | 
			
		||||
                _ = stringBuilder.AppendLine(exception.Message);
 | 
			
		||||
                exception = exception.InnerException;
 | 
			
		||||
            }
 | 
			
		||||
            errors.Add(resultsJson);
 | 
			
		||||
            errors.Add(stringBuilder.ToString());
 | 
			
		||||
            results = new(errors: errors,
 | 
			
		||||
                          headerId: null,
 | 
			
		||||
                          subgroupId: null,
 | 
			
		||||
                          success: false,
 | 
			
		||||
                          warnings: new());
 | 
			
		||||
            return results;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // this is just a helper function to make displaying the results easier
 | 
			
		||||
        public override string ToString() => JsonSerializer.Serialize(this, GetType());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[JsonSourceGenerationOptions(WriteIndented = true)]
 | 
			
		||||
[JsonSerializable(typeof(WS.Results))]
 | 
			
		||||
internal partial class ResultsSourceGenerationContext : JsonSerializerContext
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
@ -10,9 +10,11 @@ namespace Adaptation.Shared.Metrology;
 | 
			
		||||
public partial class WS
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public static (string, Results) SendData(string url, object payload, int timeoutSeconds = 120)
 | 
			
		||||
#nullable enable
 | 
			
		||||
 | 
			
		||||
    public static (string, Results) SendData(string url, long sequence, string directory, object payload, int timeoutSeconds = 120)
 | 
			
		||||
    {
 | 
			
		||||
        Results results = new();
 | 
			
		||||
        Results? wsResults = null;
 | 
			
		||||
        string resultsJson = string.Empty;
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
@ -30,85 +32,83 @@ public partial class WS
 | 
			
		||||
                };
 | 
			
		||||
                HttpResponseMessage httpResponseMessage = httpClient.SendAsync(httpRequestMessage, HttpCompletionOption.ResponseContentRead).Result;
 | 
			
		||||
                resultsJson = httpResponseMessage.Content.ReadAsStringAsync().Result;
 | 
			
		||||
                results = JsonSerializer.Deserialize<Results>(resultsJson, new JsonSerializerOptions { PropertyNameCaseInsensitive = true });
 | 
			
		||||
                wsResults = JsonSerializer.Deserialize(resultsJson, ResultsSourceGenerationContext.Default.Results);
 | 
			
		||||
                if (wsResults is null)
 | 
			
		||||
                    throw new NullReferenceException(nameof(wsResults));
 | 
			
		||||
                string checkDirectory = Path.Combine(directory, $"-{wsResults.HeaderId}");
 | 
			
		||||
                if (!Directory.Exists(checkDirectory))
 | 
			
		||||
                    _ = Directory.CreateDirectory(checkDirectory);
 | 
			
		||||
                File.WriteAllText(Path.Combine(checkDirectory, $"{sequence}.json"), json);
 | 
			
		||||
            }
 | 
			
		||||
            if (!results.Success)
 | 
			
		||||
                results.Errors.Add(results.ToString());
 | 
			
		||||
            if (wsResults.Success is null || !wsResults.Success.Value)
 | 
			
		||||
                wsResults.Errors?.Add(wsResults.ToString());
 | 
			
		||||
        }
 | 
			
		||||
        catch (Exception e)
 | 
			
		||||
        {
 | 
			
		||||
            Exception exception = e;
 | 
			
		||||
            StringBuilder stringBuilder = new();
 | 
			
		||||
            while (exception is not null)
 | 
			
		||||
            {
 | 
			
		||||
                _ = stringBuilder.AppendLine(exception.Message);
 | 
			
		||||
                exception = exception.InnerException;
 | 
			
		||||
            }
 | 
			
		||||
            results.Errors ??= new List<string>();
 | 
			
		||||
            results.Errors.Add(resultsJson);
 | 
			
		||||
            results.Errors.Add(stringBuilder.ToString());
 | 
			
		||||
        }
 | 
			
		||||
        return new(resultsJson, results);
 | 
			
		||||
        { wsResults ??= Results.Get(resultsJson, e); }
 | 
			
		||||
        return new(resultsJson, wsResults);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // 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<Attachment> headerAttachments = null, List<Attachment> dataAttachments = null)
 | 
			
		||||
    public static void AttachFiles(string url, List<Attachment>? headerAttachments = null, List<Attachment>? dataAttachments = null)
 | 
			
		||||
    {
 | 
			
		||||
        string directory;
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
            string? directoryName;
 | 
			
		||||
            if (headerAttachments is not null)
 | 
			
		||||
            {
 | 
			
		||||
                foreach (Attachment attachment in headerAttachments)
 | 
			
		||||
                    AttachFile(url, headerID, "", File.ReadAllBytes(attachment.SourceFileName), attachment.DestinationFileName);
 | 
			
		||||
                {
 | 
			
		||||
                    directoryName = Path.GetDirectoryName(attachment.HeaderIdDirectory);
 | 
			
		||||
                    if (string.IsNullOrEmpty(directoryName))
 | 
			
		||||
                        continue;
 | 
			
		||||
                    directory = Path.Combine(directoryName, attachment.AttachmentId) ?? throw new Exception();
 | 
			
		||||
                    if (!Directory.Exists(directory))
 | 
			
		||||
                        _ = Directory.CreateDirectory(directory);
 | 
			
		||||
                    File.Copy(attachment.SourceFileName, Path.Combine(directory, attachment.DestinationFileName), overwrite: true);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
            if (dataAttachments is not null)
 | 
			
		||||
            {
 | 
			
		||||
                foreach (Attachment attachment in dataAttachments)
 | 
			
		||||
                    AttachFile(url, headerID, attachment.UniqueId, File.ReadAllBytes(attachment.SourceFileName), attachment.DestinationFileName);
 | 
			
		||||
                {
 | 
			
		||||
                    directoryName = Path.GetDirectoryName(attachment.HeaderIdDirectory.Replace("Header", "Data"));
 | 
			
		||||
                    if (string.IsNullOrEmpty(directoryName))
 | 
			
		||||
                        continue;
 | 
			
		||||
                    directory = Path.Combine(directoryName, attachment.AttachmentId) ?? throw new Exception();
 | 
			
		||||
                    if (!Directory.Exists(directory))
 | 
			
		||||
                        _ = Directory.CreateDirectory(directory);
 | 
			
		||||
                    File.Copy(attachment.SourceFileName, Path.Combine(directory, attachment.DestinationFileName), overwrite: true);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
            if (headerAttachments is not null)
 | 
			
		||||
            {
 | 
			
		||||
                foreach (Attachment attachment in headerAttachments)
 | 
			
		||||
                    AttachFile(url, attachment);
 | 
			
		||||
            }
 | 
			
		||||
            if (dataAttachments is not null)
 | 
			
		||||
            {
 | 
			
		||||
                foreach (Attachment attachment in dataAttachments)
 | 
			
		||||
                    AttachFile(url, attachment);
 | 
			
		||||
            }
 | 
			
		||||
            //MessageBox.Show(r.ToString());
 | 
			
		||||
        }
 | 
			
		||||
        catch (Exception e)
 | 
			
		||||
        {
 | 
			
		||||
            Exception exception = e;
 | 
			
		||||
            Exception? exception = e;
 | 
			
		||||
            StringBuilder stringBuilder = new();
 | 
			
		||||
            while (exception is not null)
 | 
			
		||||
            {
 | 
			
		||||
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										33
									
								
								Adaptation/Shared/ProcessDataStandardFormatMapping.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								Adaptation/Shared/ProcessDataStandardFormatMapping.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,33 @@
 | 
			
		||||
using System.Collections.ObjectModel;
 | 
			
		||||
 | 
			
		||||
namespace Adaptation.Shared;
 | 
			
		||||
 | 
			
		||||
public class ProcessDataStandardFormatMapping
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    public ReadOnlyCollection<string> BackfillColumns { get; private set; }
 | 
			
		||||
    public ReadOnlyCollection<int> ColumnIndices { get; private set; }
 | 
			
		||||
    public ReadOnlyCollection<string> IgnoreColumns { get; private set; }
 | 
			
		||||
    public ReadOnlyCollection<string> IndexOnlyColumns { get; private set; }
 | 
			
		||||
    public ReadOnlyDictionary<string, string> KeyValuePairs { get; private set; }
 | 
			
		||||
    public ReadOnlyCollection<string> NewColumnNames { get; private set; }
 | 
			
		||||
    public ReadOnlyCollection<string> OldColumnNames { get; private set; }
 | 
			
		||||
 | 
			
		||||
    public ProcessDataStandardFormatMapping(ReadOnlyCollection<string> backfillColumns,
 | 
			
		||||
                                            ReadOnlyCollection<int> columnIndices,
 | 
			
		||||
                                            ReadOnlyCollection<string> ignoreColumns,
 | 
			
		||||
                                            ReadOnlyCollection<string> indexOnlyColumns,
 | 
			
		||||
                                            ReadOnlyDictionary<string, string> keyValuePairs,
 | 
			
		||||
                                            ReadOnlyCollection<string> newColumnNames,
 | 
			
		||||
                                            ReadOnlyCollection<string> oldColumnNames)
 | 
			
		||||
    {
 | 
			
		||||
        BackfillColumns = backfillColumns;
 | 
			
		||||
        ColumnIndices = columnIndices;
 | 
			
		||||
        IgnoreColumns = ignoreColumns;
 | 
			
		||||
        IndexOnlyColumns = indexOnlyColumns;
 | 
			
		||||
        KeyValuePairs = keyValuePairs;
 | 
			
		||||
        NewColumnNames = newColumnNames;
 | 
			
		||||
        OldColumnNames = oldColumnNames;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@ -6,6 +6,6 @@ public interface IDescription
 | 
			
		||||
    int Test { get; }
 | 
			
		||||
    int Count { get; }
 | 
			
		||||
    int Index { get; }
 | 
			
		||||
    string Lot { get; }
 | 
			
		||||
    string RDS { get; }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,117 @@
 | 
			
		||||
#if v2_59_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.Production.v2_59_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class METCLIMATEC : EAFLoggingUnitTesting
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    internal static string DummyRoot { get; private set; }
 | 
			
		||||
    internal static METCLIMATEC EAFLoggingUnitTesting { get; private set; }
 | 
			
		||||
 | 
			
		||||
    static METCLIMATEC() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy";
 | 
			
		||||
 | 
			
		||||
    public METCLIMATEC() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
        if (EAFLoggingUnitTesting is null)
 | 
			
		||||
            throw new Exception();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public METCLIMATEC(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        EAFLoggingUnitTesting ??= new METCLIMATEC(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 Production__v2_59_0__METCLIMATEC__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 Production__v2_59_0__METCLIMATEC__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 Production__v2_59_0__METCLIMATEC__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 Production__v2_59_0__METCLIMATEC__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 Production__v2_59_0__METCLIMATEC__Dummy()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "637953064190000000.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
 | 
			
		||||
@ -0,0 +1,66 @@
 | 
			
		||||
#if v2_59_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.Production.v2_59_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class TRENDLOG : EAFLoggingUnitTesting
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    internal static string DummyRoot { get; private set; }
 | 
			
		||||
    internal static TRENDLOG EAFLoggingUnitTesting { get; private set; }
 | 
			
		||||
 | 
			
		||||
    static TRENDLOG() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy";
 | 
			
		||||
 | 
			
		||||
    public TRENDLOG() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
        if (EAFLoggingUnitTesting is null)
 | 
			
		||||
            throw new Exception();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public TRENDLOG(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        EAFLoggingUnitTesting ??= new TRENDLOG(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 Production__v2_59_0__TRENDLOG__csv()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration"));
 | 
			
		||||
        _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting);
 | 
			
		||||
        EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
@ -0,0 +1,117 @@
 | 
			
		||||
#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.Production.v2_60_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class METCLIMATEC : EAFLoggingUnitTesting
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    internal static string DummyRoot { get; private set; }
 | 
			
		||||
    internal static METCLIMATEC EAFLoggingUnitTesting { get; private set; }
 | 
			
		||||
 | 
			
		||||
    static METCLIMATEC() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy";
 | 
			
		||||
 | 
			
		||||
    public METCLIMATEC() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
        if (EAFLoggingUnitTesting is null)
 | 
			
		||||
            throw new Exception();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public METCLIMATEC(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        EAFLoggingUnitTesting ??= new METCLIMATEC(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 Production__v2_60_0__METCLIMATEC__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 Production__v2_60_0__METCLIMATEC__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 Production__v2_60_0__METCLIMATEC__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 Production__v2_60_0__METCLIMATEC__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 Production__v2_60_0__METCLIMATEC__Dummy()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "637953064190000000.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
 | 
			
		||||
@ -0,0 +1,66 @@
 | 
			
		||||
#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.Production.v2_60_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class TRENDLOG : EAFLoggingUnitTesting
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    internal static string DummyRoot { get; private set; }
 | 
			
		||||
    internal static TRENDLOG EAFLoggingUnitTesting { get; private set; }
 | 
			
		||||
 | 
			
		||||
    static TRENDLOG() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy";
 | 
			
		||||
 | 
			
		||||
    public TRENDLOG() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
        if (EAFLoggingUnitTesting is null)
 | 
			
		||||
            throw new Exception();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public TRENDLOG(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        EAFLoggingUnitTesting ??= new TRENDLOG(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 Production__v2_60_0__TRENDLOG__csv()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration"));
 | 
			
		||||
        _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting);
 | 
			
		||||
        EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
@ -0,0 +1,117 @@
 | 
			
		||||
#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 METCLIMATEC : EAFLoggingUnitTesting
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    internal static string DummyRoot { get; private set; }
 | 
			
		||||
    internal static METCLIMATEC EAFLoggingUnitTesting { get; private set; }
 | 
			
		||||
 | 
			
		||||
    static METCLIMATEC() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy";
 | 
			
		||||
 | 
			
		||||
    public METCLIMATEC() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
        if (EAFLoggingUnitTesting is null)
 | 
			
		||||
            throw new Exception();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public METCLIMATEC(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        EAFLoggingUnitTesting ??= new METCLIMATEC(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__METCLIMATEC__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__METCLIMATEC__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__METCLIMATEC__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__METCLIMATEC__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__METCLIMATEC__Dummy()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "637400762709163000.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
 | 
			
		||||
@ -1,3 +1,4 @@
 | 
			
		||||
#if v2_52_0
 | 
			
		||||
using Adaptation._Tests.Shared;
 | 
			
		||||
using Microsoft.Extensions.Logging;
 | 
			
		||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
 | 
			
		||||
@ -47,7 +48,9 @@ public class TRENDLOG : EAFLoggingUnitTesting
 | 
			
		||||
        EAFLoggingUnitTesting?.Dispose();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__TRENDLOG__csv()
 | 
			
		||||
    {
 | 
			
		||||
@ -59,65 +62,5 @@ public class TRENDLOG : EAFLoggingUnitTesting
 | 
			
		||||
        EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__TRENDLOG__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"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__TRENDLOG__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__TRENDLOG__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__TRENDLOG__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__TRENDLOG__Dummy()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "637400762709163000.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
 | 
			
		||||
@ -0,0 +1,107 @@
 | 
			
		||||
#if v2_56_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_56_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class METCLIMATEC : EAFLoggingUnitTesting
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    internal static string DummyRoot { get; private set; }
 | 
			
		||||
    internal static METCLIMATEC EAFLoggingUnitTesting { get; private set; }
 | 
			
		||||
 | 
			
		||||
    static METCLIMATEC() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy";
 | 
			
		||||
 | 
			
		||||
    public METCLIMATEC() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
        if (EAFLoggingUnitTesting is null)
 | 
			
		||||
            throw new Exception();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public METCLIMATEC(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        EAFLoggingUnitTesting ??= new METCLIMATEC(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();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__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"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__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"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__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"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__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"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__Dummy()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "637953064190000000.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
 | 
			
		||||
@ -0,0 +1,64 @@
 | 
			
		||||
#if v2_56_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_56_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class TRENDLOG : EAFLoggingUnitTesting
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    internal static string DummyRoot { get; private set; }
 | 
			
		||||
    internal static TRENDLOG EAFLoggingUnitTesting { get; private set; }
 | 
			
		||||
 | 
			
		||||
    static TRENDLOG() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy";
 | 
			
		||||
 | 
			
		||||
    public TRENDLOG() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
        if (EAFLoggingUnitTesting is null)
 | 
			
		||||
            throw new Exception();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public TRENDLOG(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        EAFLoggingUnitTesting ??= new TRENDLOG(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();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__TRENDLOG__csv()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration"));
 | 
			
		||||
        _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting);
 | 
			
		||||
        EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
@ -0,0 +1,117 @@
 | 
			
		||||
#if v2_57_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_57_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class METCLIMATEC : EAFLoggingUnitTesting
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    internal static string DummyRoot { get; private set; }
 | 
			
		||||
    internal static METCLIMATEC EAFLoggingUnitTesting { get; private set; }
 | 
			
		||||
 | 
			
		||||
    static METCLIMATEC() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy";
 | 
			
		||||
 | 
			
		||||
    public METCLIMATEC() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
        if (EAFLoggingUnitTesting is null)
 | 
			
		||||
            throw new Exception();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public METCLIMATEC(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        EAFLoggingUnitTesting ??= new METCLIMATEC(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_57_0__METCLIMATEC__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_57_0__METCLIMATEC__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_57_0__METCLIMATEC__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_57_0__METCLIMATEC__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_57_0__METCLIMATEC__Dummy()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "637953064190000000.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
 | 
			
		||||
@ -0,0 +1,66 @@
 | 
			
		||||
#if v2_57_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_57_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class TRENDLOG : EAFLoggingUnitTesting
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    internal static string DummyRoot { get; private set; }
 | 
			
		||||
    internal static TRENDLOG EAFLoggingUnitTesting { get; private set; }
 | 
			
		||||
 | 
			
		||||
    static TRENDLOG() => DummyRoot = @"\\mesfs.infineon.com\EC_Characterization_Si\Dummy";
 | 
			
		||||
 | 
			
		||||
    public TRENDLOG() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
        if (EAFLoggingUnitTesting is null)
 | 
			
		||||
            throw new Exception();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public TRENDLOG(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false)
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        EAFLoggingUnitTesting ??= new TRENDLOG(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_57_0__TRENDLOG__csv()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration"));
 | 
			
		||||
        _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting);
 | 
			
		||||
        EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										100
									
								
								Adaptation/_Tests/Extract/Production/v2.59.0/METCLIMATEC.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										100
									
								
								Adaptation/_Tests/Extract/Production/v2.59.0/METCLIMATEC.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,100 @@
 | 
			
		||||
#if v2_59_0
 | 
			
		||||
using Adaptation._Tests.Shared;
 | 
			
		||||
using Adaptation.Shared;
 | 
			
		||||
using Adaptation.Shared.Methods;
 | 
			
		||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Diagnostics;
 | 
			
		||||
using System.Reflection;
 | 
			
		||||
 | 
			
		||||
namespace Adaptation._Tests.Extract.Production.v2_59_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class METCLIMATEC
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    private static CreateSelfDescription.Production.v2_59_0.METCLIMATEC _METCLIMATEC;
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        CreateSelfDescription.Production.v2_59_0.METCLIMATEC.ClassInitialize(testContext);
 | 
			
		||||
        _METCLIMATEC = CreateSelfDescription.Production.v2_59_0.METCLIMATEC.EAFLoggingUnitTesting;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void NonThrowTryCatch()
 | 
			
		||||
    {
 | 
			
		||||
        try
 | 
			
		||||
        { throw new Exception(); }
 | 
			
		||||
        catch (Exception) { }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_59_0__METCLIMATEC__MoveMatchingFiles() => _METCLIMATEC.Production__v2_59_0__METCLIMATEC__MoveMatchingFiles();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_59_0__METCLIMATEC__MoveMatchingFiles637953064190000000__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.pdsf";
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        _METCLIMATEC.Production__v2_59_0__METCLIMATEC__MoveMatchingFiles();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_METCLIMATEC.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _METCLIMATEC.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _METCLIMATEC.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Logistics logistics = new(fileRead);
 | 
			
		||||
        _ = AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_59_0__METCLIMATEC__IQSSi() => _METCLIMATEC.Production__v2_59_0__METCLIMATEC__IQSSi();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_59_0__METCLIMATEC__IQSSi638465291633220310__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.pdsf";
 | 
			
		||||
        _METCLIMATEC.Production__v2_59_0__METCLIMATEC__IQSSi();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        string[] variables = _METCLIMATEC.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false);
 | 
			
		||||
        IFileRead fileRead = _METCLIMATEC.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Logistics logistics = new(fileRead);
 | 
			
		||||
        _ = AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_59_0__METCLIMATEC__Processed() => _METCLIMATEC.Production__v2_59_0__METCLIMATEC__Processed();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_59_0__METCLIMATEC__Archive() => _METCLIMATEC.Production__v2_59_0__METCLIMATEC__Archive();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_59_0__METCLIMATEC__Dummy() => _METCLIMATEC.Production__v2_59_0__METCLIMATEC__Dummy();
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										86
									
								
								Adaptation/_Tests/Extract/Production/v2.59.0/TRENDLOG.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										86
									
								
								Adaptation/_Tests/Extract/Production/v2.59.0/TRENDLOG.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,86 @@
 | 
			
		||||
#if v2_59_0
 | 
			
		||||
using Adaptation.Shared;
 | 
			
		||||
using Adaptation.Shared.Methods;
 | 
			
		||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Diagnostics;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Reflection;
 | 
			
		||||
using System.Text.Json;
 | 
			
		||||
 | 
			
		||||
namespace Adaptation._Tests.Extract.Production.v2_59_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class TRENDLOG
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    private static CreateSelfDescription.Production.v2_59_0.TRENDLOG _TRENDLOG;
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        CreateSelfDescription.Production.v2_59_0.TRENDLOG.ClassInitialize(testContext);
 | 
			
		||||
        _TRENDLOG = CreateSelfDescription.Production.v2_59_0.TRENDLOG.EAFLoggingUnitTesting;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void NonThrowTryCatch()
 | 
			
		||||
    {
 | 
			
		||||
        try
 | 
			
		||||
        { throw new Exception(); }
 | 
			
		||||
        catch (Exception) { }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_59_0__TRENDLOG__csv() => _TRENDLOG.Production__v2_59_0__TRENDLOG__csv();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_59_0__TRENDLOG__csv638465291633220310__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        _TRENDLOG.Production__v2_59_0__TRENDLOG__csv();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_TRENDLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _TRENDLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _TRENDLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResult = fileRead.ReExtract();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1));
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item3);
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item4);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_59_0__TRENDLOG__csv638465291633220312__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        _TRENDLOG.Production__v2_59_0__TRENDLOG__csv();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_TRENDLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _TRENDLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _TRENDLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResult = fileRead.ReExtract();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1));
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item3);
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item4);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										100
									
								
								Adaptation/_Tests/Extract/Production/v2.60.0/METCLIMATEC.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										100
									
								
								Adaptation/_Tests/Extract/Production/v2.60.0/METCLIMATEC.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,100 @@
 | 
			
		||||
#if true
 | 
			
		||||
using Adaptation._Tests.Shared;
 | 
			
		||||
using Adaptation.Shared;
 | 
			
		||||
using Adaptation.Shared.Methods;
 | 
			
		||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Diagnostics;
 | 
			
		||||
using System.Reflection;
 | 
			
		||||
 | 
			
		||||
namespace Adaptation._Tests.Extract.Production.v2_60_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class METCLIMATEC
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    private static CreateSelfDescription.Production.v2_60_0.METCLIMATEC _METCLIMATEC;
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        CreateSelfDescription.Production.v2_60_0.METCLIMATEC.ClassInitialize(testContext);
 | 
			
		||||
        _METCLIMATEC = CreateSelfDescription.Production.v2_60_0.METCLIMATEC.EAFLoggingUnitTesting;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void NonThrowTryCatch()
 | 
			
		||||
    {
 | 
			
		||||
        try
 | 
			
		||||
        { throw new Exception(); }
 | 
			
		||||
        catch (Exception) { }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_60_0__METCLIMATEC__MoveMatchingFiles() => _METCLIMATEC.Production__v2_60_0__METCLIMATEC__MoveMatchingFiles();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_60_0__METCLIMATEC__MoveMatchingFiles637953064190000000__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.pdsf";
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        _METCLIMATEC.Production__v2_60_0__METCLIMATEC__MoveMatchingFiles();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_METCLIMATEC.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _METCLIMATEC.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _METCLIMATEC.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Logistics logistics = new(fileRead);
 | 
			
		||||
        _ = AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_60_0__METCLIMATEC__IQSSi() => _METCLIMATEC.Production__v2_60_0__METCLIMATEC__IQSSi();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_60_0__METCLIMATEC__IQSSi638465291633220310__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.pdsf";
 | 
			
		||||
        _METCLIMATEC.Production__v2_60_0__METCLIMATEC__IQSSi();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        string[] variables = _METCLIMATEC.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false);
 | 
			
		||||
        IFileRead fileRead = _METCLIMATEC.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Logistics logistics = new(fileRead);
 | 
			
		||||
        _ = AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_60_0__METCLIMATEC__Processed() => _METCLIMATEC.Production__v2_60_0__METCLIMATEC__Processed();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_60_0__METCLIMATEC__Archive() => _METCLIMATEC.Production__v2_60_0__METCLIMATEC__Archive();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_60_0__METCLIMATEC__Dummy() => _METCLIMATEC.Production__v2_60_0__METCLIMATEC__Dummy();
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										86
									
								
								Adaptation/_Tests/Extract/Production/v2.60.0/TRENDLOG.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										86
									
								
								Adaptation/_Tests/Extract/Production/v2.60.0/TRENDLOG.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,86 @@
 | 
			
		||||
#if true
 | 
			
		||||
using Adaptation.Shared;
 | 
			
		||||
using Adaptation.Shared.Methods;
 | 
			
		||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Diagnostics;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Reflection;
 | 
			
		||||
using System.Text.Json;
 | 
			
		||||
 | 
			
		||||
namespace Adaptation._Tests.Extract.Production.v2_60_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class TRENDLOG
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    private static CreateSelfDescription.Production.v2_60_0.TRENDLOG _TRENDLOG;
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        CreateSelfDescription.Production.v2_60_0.TRENDLOG.ClassInitialize(testContext);
 | 
			
		||||
        _TRENDLOG = CreateSelfDescription.Production.v2_60_0.TRENDLOG.EAFLoggingUnitTesting;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void NonThrowTryCatch()
 | 
			
		||||
    {
 | 
			
		||||
        try
 | 
			
		||||
        { throw new Exception(); }
 | 
			
		||||
        catch (Exception) { }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_60_0__TRENDLOG__csv() => _TRENDLOG.Production__v2_60_0__TRENDLOG__csv();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_60_0__TRENDLOG__csv638465291633220310__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        _TRENDLOG.Production__v2_60_0__TRENDLOG__csv();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_TRENDLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _TRENDLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _TRENDLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResult = fileRead.ReExtract();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1));
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item3);
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item4);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Production__v2_60_0__TRENDLOG__csv638465291633220312__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        _TRENDLOG.Production__v2_60_0__TRENDLOG__csv();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_TRENDLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _TRENDLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _TRENDLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResult = fileRead.ReExtract();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1));
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item3);
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item4);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										123
									
								
								Adaptation/_Tests/Extract/Staging/v2.52.0/METCLIMATEC.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										123
									
								
								Adaptation/_Tests/Extract/Staging/v2.52.0/METCLIMATEC.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,123 @@
 | 
			
		||||
#if v2_52_0
 | 
			
		||||
using Adaptation._Tests.Shared;
 | 
			
		||||
using Adaptation.Shared;
 | 
			
		||||
using Adaptation.Shared.Methods;
 | 
			
		||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Diagnostics;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Reflection;
 | 
			
		||||
using System.Text.Json;
 | 
			
		||||
 | 
			
		||||
namespace Adaptation._Tests.Extract.Staging.v2_52_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class METCLIMATEC
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    private static CreateSelfDescription.Staging.v2_52_0.METCLIMATEC _METCLIMATEC;
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        CreateSelfDescription.Staging.v2_52_0.METCLIMATEC.ClassInitialize(testContext);
 | 
			
		||||
        _METCLIMATEC = CreateSelfDescription.Staging.v2_52_0.METCLIMATEC.EAFLoggingUnitTesting;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void NonThrowTryCatch()
 | 
			
		||||
    {
 | 
			
		||||
        try
 | 
			
		||||
        { throw new Exception(); }
 | 
			
		||||
        catch (Exception) { }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__METCLIMATEC__csv638465291633220311__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        _METCLIMATEC.Staging__v2_52_0__METCLIMATEC__csv();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_METCLIMATEC.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _METCLIMATEC.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _METCLIMATEC.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResult = fileRead.ReExtract();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1));
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item3);
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item4);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__METCLIMATEC__MoveMatchingFiles() => _METCLIMATEC.Staging__v2_52_0__METCLIMATEC__MoveMatchingFiles();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__METCLIMATEC__MoveMatchingFiles637953064190000000__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.pdsf";
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        _METCLIMATEC.Staging__v2_52_0__METCLIMATEC__MoveMatchingFiles();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_METCLIMATEC.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _METCLIMATEC.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _METCLIMATEC.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Logistics logistics = new(fileRead);
 | 
			
		||||
        _ = AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__METCLIMATEC__IQSSi() => _METCLIMATEC.Staging__v2_52_0__METCLIMATEC__IQSSi();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__METCLIMATEC__IQSSi638465291633220310__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.pdsf";
 | 
			
		||||
        _METCLIMATEC.Staging__v2_52_0__METCLIMATEC__IQSSi();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        string[] variables = _METCLIMATEC.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false);
 | 
			
		||||
        IFileRead fileRead = _METCLIMATEC.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Logistics logistics = new(fileRead);
 | 
			
		||||
        _ = AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__METCLIMATEC__Processed() => _METCLIMATEC.Staging__v2_52_0__METCLIMATEC__Processed();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__METCLIMATEC__Archive() => _METCLIMATEC.Staging__v2_52_0__METCLIMATEC__Archive();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__METCLIMATEC__Dummy() => _METCLIMATEC.Staging__v2_52_0__METCLIMATEC__Dummy();
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
@ -1,3 +1,4 @@
 | 
			
		||||
#if v2_52_0
 | 
			
		||||
using Adaptation._Tests.Shared;
 | 
			
		||||
using Adaptation.Shared;
 | 
			
		||||
using Adaptation.Shared.Methods;
 | 
			
		||||
@ -38,7 +39,7 @@ public class TRENDLOG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__TRENDLOG__ConvertExcelToJson() => _TRENDLOG.Staging__v2_52_0__TRENDLOG__csv();
 | 
			
		||||
    public void Staging__v2_56_0__TRENDLOG__csv() => _TRENDLOG.Staging__v2_52_0__TRENDLOG__csv();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
@ -61,6 +62,27 @@ public class TRENDLOG
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__TRENDLOG__csv638465291633220311__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        _TRENDLOG.Staging__v2_52_0__TRENDLOG__csv();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_TRENDLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _TRENDLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _TRENDLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResult = fileRead.ReExtract();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1));
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item3);
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item4);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
@ -124,4 +146,5 @@ public class TRENDLOG
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_52_0__TRENDLOG__Dummy() => _TRENDLOG.Staging__v2_52_0__TRENDLOG__Dummy();
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										86
									
								
								Adaptation/_Tests/Extract/Staging/v2.56.0/METCLIMATEC.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										86
									
								
								Adaptation/_Tests/Extract/Staging/v2.56.0/METCLIMATEC.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,86 @@
 | 
			
		||||
#if v2_56_0
 | 
			
		||||
using Adaptation._Tests.Shared;
 | 
			
		||||
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 METCLIMATEC
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    private static CreateSelfDescription.Staging.v2_56_0.METCLIMATEC _METCLIMATEC;
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        CreateSelfDescription.Staging.v2_56_0.METCLIMATEC.ClassInitialize(testContext);
 | 
			
		||||
        _METCLIMATEC = CreateSelfDescription.Staging.v2_56_0.METCLIMATEC.EAFLoggingUnitTesting;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void NonThrowTryCatch()
 | 
			
		||||
    {
 | 
			
		||||
        try
 | 
			
		||||
        { throw new Exception(); }
 | 
			
		||||
        catch (Exception) { }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__MoveMatchingFiles() => _METCLIMATEC.Staging__v2_56_0__METCLIMATEC__MoveMatchingFiles();
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__MoveMatchingFiles637953064190000000__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.pdsf";
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        _METCLIMATEC.Staging__v2_56_0__METCLIMATEC__MoveMatchingFiles();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_METCLIMATEC.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _METCLIMATEC.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _METCLIMATEC.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Logistics logistics = new(fileRead);
 | 
			
		||||
        _ = AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__IQSSi() => _METCLIMATEC.Staging__v2_56_0__METCLIMATEC__IQSSi();
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__IQSSi638465291633220310__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.pdsf";
 | 
			
		||||
        _METCLIMATEC.Staging__v2_56_0__METCLIMATEC__IQSSi();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        string[] variables = _METCLIMATEC.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false);
 | 
			
		||||
        IFileRead fileRead = _METCLIMATEC.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Logistics logistics = new(fileRead);
 | 
			
		||||
        _ = AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__Processed() => _METCLIMATEC.Staging__v2_56_0__METCLIMATEC__Processed();
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__Archive() => _METCLIMATEC.Staging__v2_56_0__METCLIMATEC__Archive();
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__METCLIMATEC__Dummy() => _METCLIMATEC.Staging__v2_56_0__METCLIMATEC__Dummy();
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										80
									
								
								Adaptation/_Tests/Extract/Staging/v2.56.0/TRENDLOG.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										80
									
								
								Adaptation/_Tests/Extract/Staging/v2.56.0/TRENDLOG.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,80 @@
 | 
			
		||||
#if v2_56_0
 | 
			
		||||
using Adaptation.Shared;
 | 
			
		||||
using Adaptation.Shared.Methods;
 | 
			
		||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Diagnostics;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Reflection;
 | 
			
		||||
using System.Text.Json;
 | 
			
		||||
 | 
			
		||||
namespace Adaptation._Tests.Extract.Staging.v2_56_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class TRENDLOG
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    private static CreateSelfDescription.Staging.v2_56_0.TRENDLOG _TRENDLOG;
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        CreateSelfDescription.Staging.v2_56_0.TRENDLOG.ClassInitialize(testContext);
 | 
			
		||||
        _TRENDLOG = CreateSelfDescription.Staging.v2_56_0.TRENDLOG.EAFLoggingUnitTesting;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void NonThrowTryCatch()
 | 
			
		||||
    {
 | 
			
		||||
        try
 | 
			
		||||
        { throw new Exception(); }
 | 
			
		||||
        catch (Exception) { }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__TRENDLOG__csv() => _TRENDLOG.Staging__v2_56_0__TRENDLOG__csv();
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__TRENDLOG__csv638465291633220310__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        _TRENDLOG.Staging__v2_56_0__TRENDLOG__csv();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_TRENDLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _TRENDLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _TRENDLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResult = fileRead.ReExtract();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1));
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item3);
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item4);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_56_0__TRENDLOG__csv638465291633220312__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        _TRENDLOG.Staging__v2_56_0__TRENDLOG__csv();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_TRENDLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _TRENDLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _TRENDLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResult = fileRead.ReExtract();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1));
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item3);
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item4);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										100
									
								
								Adaptation/_Tests/Extract/Staging/v2.57.0/METCLIMATEC.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										100
									
								
								Adaptation/_Tests/Extract/Staging/v2.57.0/METCLIMATEC.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,100 @@
 | 
			
		||||
#if v2_57_0
 | 
			
		||||
using Adaptation._Tests.Shared;
 | 
			
		||||
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_57_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class METCLIMATEC
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    private static CreateSelfDescription.Staging.v2_57_0.METCLIMATEC _METCLIMATEC;
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        CreateSelfDescription.Staging.v2_57_0.METCLIMATEC.ClassInitialize(testContext);
 | 
			
		||||
        _METCLIMATEC = CreateSelfDescription.Staging.v2_57_0.METCLIMATEC.EAFLoggingUnitTesting;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void NonThrowTryCatch()
 | 
			
		||||
    {
 | 
			
		||||
        try
 | 
			
		||||
        { throw new Exception(); }
 | 
			
		||||
        catch (Exception) { }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_57_0__METCLIMATEC__MoveMatchingFiles() => _METCLIMATEC.Staging__v2_57_0__METCLIMATEC__MoveMatchingFiles();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_57_0__METCLIMATEC__MoveMatchingFiles637953064190000000__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.pdsf";
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        _METCLIMATEC.Staging__v2_57_0__METCLIMATEC__MoveMatchingFiles();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_METCLIMATEC.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _METCLIMATEC.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _METCLIMATEC.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Logistics logistics = new(fileRead);
 | 
			
		||||
        _ = AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics, validatePDSF);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_57_0__METCLIMATEC__IQSSi() => _METCLIMATEC.Staging__v2_57_0__METCLIMATEC__IQSSi();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_57_0__METCLIMATEC__IQSSi638465291633220310__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        string check = "*.pdsf";
 | 
			
		||||
        _METCLIMATEC.Staging__v2_57_0__METCLIMATEC__IQSSi();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        string[] variables = _METCLIMATEC.AdaptationTesting.GetVariables(methodBase, check, validatePDSF: false);
 | 
			
		||||
        IFileRead fileRead = _METCLIMATEC.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Logistics logistics = new(fileRead);
 | 
			
		||||
        _ = AdaptationTesting.ReExtractCompareUpdatePassDirectory(variables, fileRead, logistics);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_57_0__METCLIMATEC__Processed() => _METCLIMATEC.Staging__v2_57_0__METCLIMATEC__Processed();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_57_0__METCLIMATEC__Archive() => _METCLIMATEC.Staging__v2_57_0__METCLIMATEC__Archive();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_57_0__METCLIMATEC__Dummy() => _METCLIMATEC.Staging__v2_57_0__METCLIMATEC__Dummy();
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										86
									
								
								Adaptation/_Tests/Extract/Staging/v2.57.0/TRENDLOG.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										86
									
								
								Adaptation/_Tests/Extract/Staging/v2.57.0/TRENDLOG.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,86 @@
 | 
			
		||||
#if v2_57_0
 | 
			
		||||
using Adaptation.Shared;
 | 
			
		||||
using Adaptation.Shared.Methods;
 | 
			
		||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
 | 
			
		||||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Diagnostics;
 | 
			
		||||
using System.IO;
 | 
			
		||||
using System.Reflection;
 | 
			
		||||
using System.Text.Json;
 | 
			
		||||
 | 
			
		||||
namespace Adaptation._Tests.Extract.Staging.v2_57_0;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class TRENDLOG
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    private static CreateSelfDescription.Staging.v2_57_0.TRENDLOG _TRENDLOG;
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext)
 | 
			
		||||
    {
 | 
			
		||||
        CreateSelfDescription.Staging.v2_57_0.TRENDLOG.ClassInitialize(testContext);
 | 
			
		||||
        _TRENDLOG = CreateSelfDescription.Staging.v2_57_0.TRENDLOG.EAFLoggingUnitTesting;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void NonThrowTryCatch()
 | 
			
		||||
    {
 | 
			
		||||
        try
 | 
			
		||||
        { throw new Exception(); }
 | 
			
		||||
        catch (Exception) { }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_57_0__TRENDLOG__csv() => _TRENDLOG.Staging__v2_57_0__TRENDLOG__csv();
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_57_0__TRENDLOG__csv638465291633220310__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        _TRENDLOG.Staging__v2_57_0__TRENDLOG__csv();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_TRENDLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _TRENDLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _TRENDLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResult = fileRead.ReExtract();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1));
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item3);
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item4);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging__v2_57_0__TRENDLOG__csv638465291633220312__Normal()
 | 
			
		||||
    {
 | 
			
		||||
        bool validatePDSF = false;
 | 
			
		||||
        string check = "*.csv.trg";
 | 
			
		||||
        _TRENDLOG.Staging__v2_57_0__TRENDLOG__csv();
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        // string check = "Dev *, A*, present-value, *D*-*-*-*.csv.trg";
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(_TRENDLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName));
 | 
			
		||||
        string[] variables = _TRENDLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF);
 | 
			
		||||
        IFileRead fileRead = _TRENDLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false);
 | 
			
		||||
        Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResult = fileRead.ReExtract();
 | 
			
		||||
        Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1));
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item3);
 | 
			
		||||
        Assert.IsNotNull(extractResult.Item4);
 | 
			
		||||
        NonThrowTryCatch();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@ -51,52 +51,27 @@ public class METCLIMATEC : LoggingUnitTesting, IDisposable
 | 
			
		||||
    public void TestDateTime()
 | 
			
		||||
    {
 | 
			
		||||
        DateTime dateTime = DateTime.Now;
 | 
			
		||||
        Assert.IsTrue(dateTime.ToString("M/d/yyyy h:mm:ss tt") == dateTime.ToString());
 | 
			
		||||
        Assert.AreEqual(dateTime.ToString(), dateTime.ToString("M/d/yyyy h:mm:ss tt"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Development()
 | 
			
		||||
    public void Production()
 | 
			
		||||
    {
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        StringBuilder results = new();
 | 
			
		||||
        (string cellInstanceName, string cellInstanceVersionName)[] collection = new (string, string)[]
 | 
			
		||||
        {
 | 
			
		||||
            new("METCLIMATEC", "v2.52.0"),
 | 
			
		||||
            new("METCLIMATEC", "v2.60.0"),
 | 
			
		||||
        };
 | 
			
		||||
        string development = "http://eaf-dev.mes.infineon.com:9003/CellInstanceServiceV2";
 | 
			
		||||
        string production = "http://messa08ec.infineon.com:9003/CellInstanceServiceV2";
 | 
			
		||||
        Shared.PasteSpecialXml.EAF.XML.API.CellInstance.CellInstanceVersion cellInstanceVersion;
 | 
			
		||||
        LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration"));
 | 
			
		||||
        foreach ((string cellInstanceName, string cellInstanceVersionName) in collection)
 | 
			
		||||
        {
 | 
			
		||||
            cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{development}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
 | 
			
		||||
            _ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
 | 
			
		||||
        }
 | 
			
		||||
        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 Staging()
 | 
			
		||||
    {
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        StringBuilder results = new();
 | 
			
		||||
        (string cellInstanceName, string cellInstanceVersionName)[] collection = new (string, string)[]
 | 
			
		||||
        {
 | 
			
		||||
            new("METCLIMATEC", "v2.52.0"),
 | 
			
		||||
        };
 | 
			
		||||
        string staging = "http://mestsa07ec.infineon.com:9003/CellInstanceServiceV2";
 | 
			
		||||
        Shared.PasteSpecialXml.EAF.XML.API.CellInstance.CellInstanceVersion cellInstanceVersion;
 | 
			
		||||
        LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration"));
 | 
			
		||||
        foreach ((string cellInstanceName, string cellInstanceVersionName) in collection)
 | 
			
		||||
        {
 | 
			
		||||
            cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{staging}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
 | 
			
		||||
            cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{production}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
 | 
			
		||||
            _ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
 | 
			
		||||
        }
 | 
			
		||||
        string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber";
 | 
			
		||||
 | 
			
		||||
@ -12,26 +12,26 @@ using System.Text;
 | 
			
		||||
namespace Adaptation._Tests.Static;
 | 
			
		||||
 | 
			
		||||
[TestClass]
 | 
			
		||||
public class TRENDLOG : LoggingUnitTesting, IDisposable
 | 
			
		||||
public class CSV : LoggingUnitTesting, IDisposable
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
#pragma warning disable CA2254
 | 
			
		||||
#pragma warning disable IDE0060
 | 
			
		||||
 | 
			
		||||
    internal static TRENDLOG LoggingUnitTesting { get; private set; }
 | 
			
		||||
    internal static CSV LoggingUnitTesting { get; private set; }
 | 
			
		||||
 | 
			
		||||
    public TRENDLOG() : base(testContext: null, declaringType: null)
 | 
			
		||||
    public CSV() : base(testContext: null, declaringType: null)
 | 
			
		||||
    {
 | 
			
		||||
        if (LoggingUnitTesting is null)
 | 
			
		||||
            throw new Exception();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public TRENDLOG(TestContext testContext) : base(testContext, new StackFrame().GetMethod().DeclaringType)
 | 
			
		||||
    public CSV(TestContext testContext) : base(testContext, new StackFrame().GetMethod().DeclaringType)
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [ClassInitialize]
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext) => LoggingUnitTesting ??= new TRENDLOG(testContext);
 | 
			
		||||
    public static void ClassInitialize(TestContext testContext) => LoggingUnitTesting ??= new CSV(testContext);
 | 
			
		||||
 | 
			
		||||
    [ClassCleanup()]
 | 
			
		||||
    public static void ClassCleanup()
 | 
			
		||||
@ -51,53 +51,27 @@ public class TRENDLOG : LoggingUnitTesting, IDisposable
 | 
			
		||||
    public void TestDateTime()
 | 
			
		||||
    {
 | 
			
		||||
        DateTime dateTime = DateTime.Now;
 | 
			
		||||
        Assert.IsTrue(dateTime.ToString("M/d/yyyy h:mm:ss tt") == dateTime.ToString());
 | 
			
		||||
        Assert.AreEqual(dateTime.ToString(), dateTime.ToString("M/d/yyyy h:mm:ss tt"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
#if DEBUG
 | 
			
		||||
    [Ignore]
 | 
			
		||||
#endif
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Development()
 | 
			
		||||
    public void Production()
 | 
			
		||||
    {
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        StringBuilder results = new();
 | 
			
		||||
        (string cellInstanceName, string cellInstanceVersionName)[] collection = new (string, string)[]
 | 
			
		||||
        {
 | 
			
		||||
            new("TRENDLOG", "v2.52.0"),
 | 
			
		||||
            new("TRENDLOG", "v2.60.0"),
 | 
			
		||||
        };
 | 
			
		||||
        string development = "http://eaf-dev.mes.infineon.com:9003/CellInstanceServiceV2";
 | 
			
		||||
        string production = "http://messa08ec.infineon.com:9003/CellInstanceServiceV2";
 | 
			
		||||
        Shared.PasteSpecialXml.EAF.XML.API.CellInstance.CellInstanceVersion cellInstanceVersion;
 | 
			
		||||
        LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration"));
 | 
			
		||||
        foreach ((string cellInstanceName, string cellInstanceVersionName) in collection)
 | 
			
		||||
        {
 | 
			
		||||
            cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{development}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
 | 
			
		||||
            _ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
 | 
			
		||||
        }
 | 
			
		||||
        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();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    [Ignore]
 | 
			
		||||
    [TestMethod]
 | 
			
		||||
    public void Staging()
 | 
			
		||||
    {
 | 
			
		||||
        MethodBase methodBase = new StackFrame().GetMethod();
 | 
			
		||||
        StringBuilder results = new();
 | 
			
		||||
        (string cellInstanceName, string cellInstanceVersionName)[] collection = new (string, string)[]
 | 
			
		||||
        {
 | 
			
		||||
            new("TRENDLOG", "v2.52.0"),
 | 
			
		||||
        };
 | 
			
		||||
        string staging = "http://mestsa07ec.infineon.com:9003/CellInstanceServiceV2";
 | 
			
		||||
        Shared.PasteSpecialXml.EAF.XML.API.CellInstance.CellInstanceVersion cellInstanceVersion;
 | 
			
		||||
        LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration"));
 | 
			
		||||
        foreach ((string cellInstanceName, string cellInstanceVersionName) in collection)
 | 
			
		||||
        {
 | 
			
		||||
            cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{staging}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
 | 
			
		||||
            cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{production}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
 | 
			
		||||
            _ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
 | 
			
		||||
        }
 | 
			
		||||
        string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber";
 | 
			
		||||
@ -37,7 +37,7 @@ public partial class FileRead : FileReaderHandler, ISMTP
 | 
			
		||||
    private FilePathGenerator _FilePathGeneratorForTarget;
 | 
			
		||||
    private readonly List<EquipmentParameter> _EquipmentParameters;
 | 
			
		||||
    private static readonly Dictionary<string, List<long>> _DummyRuns;
 | 
			
		||||
    private static readonly Dictionary<long, List<string>> _StaticRuns;
 | 
			
		||||
    private static readonly Dictionary<long, List<Adaptation.Shared.Metrology.WS.Results>> _StaticRuns;
 | 
			
		||||
 | 
			
		||||
    static FileRead()
 | 
			
		||||
    {
 | 
			
		||||
 | 
			
		||||
@ -51,6 +51,9 @@
 | 
			
		||||
  <PropertyGroup Condition=" '$(TargetFrameworkVersion)' == 'v4.8' ">
 | 
			
		||||
    <DefineConstants>NETFRAMEWORK;NET20;NET35;NET40;NET45;NET451;NET452;NET46;NET461;NET462;NET47;NET471;NET472;NET48;$(DefineConstants)</DefineConstants>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <RuntimeHostConfigurationOption Include="AssemblyName" Value="METCLIMATEC" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <Reference Include="System" />
 | 
			
		||||
    <Reference Include="System.Core" />
 | 
			
		||||
@ -144,6 +147,7 @@
 | 
			
		||||
    <Compile Include="Adaptation\Shared\Metrology\WS.Results.cs" />
 | 
			
		||||
    <Compile Include="Adaptation\Shared\ParameterType.cs" />
 | 
			
		||||
    <Compile Include="Adaptation\Shared\ProcessDataStandardFormat.cs" />
 | 
			
		||||
    <Compile Include="Adaptation\Shared\ProcessDataStandardFormatMapping.cs" />
 | 
			
		||||
    <Compile Include="Adaptation\Shared\Properties\IDescription.cs" />
 | 
			
		||||
    <Compile Include="Adaptation\Shared\Properties\IFileRead.cs" />
 | 
			
		||||
    <Compile Include="Adaptation\Shared\Properties\ILogistics.cs" />
 | 
			
		||||
@ -165,10 +169,10 @@
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <PackageReference Include="Infineon.EAF.Runtime">
 | 
			
		||||
      <Version>2.52.0</Version>
 | 
			
		||||
      <Version>2.60.0</Version>
 | 
			
		||||
    </PackageReference>
 | 
			
		||||
    <PackageReference Include="System.Text.Json">
 | 
			
		||||
      <Version>6.0.3</Version>
 | 
			
		||||
      <Version>8.0.5</Version>
 | 
			
		||||
    </PackageReference>
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
 | 
			
		||||
@ -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.52.2.0")]
 | 
			
		||||
[assembly: AssemblyFileVersion("2.52.2.0")]
 | 
			
		||||
[assembly: AssemblyVersion("2.60.0.0")]
 | 
			
		||||
[assembly: AssemblyFileVersion("2.60.0.0")]
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user