net8.0
v2_52_0-Tests editorconfig yml ec fix yml explicit contents dotnet_diagnostic CA1862 and GetWeekOfYear for WritePDSF gitignore cellInstanceVersion.EdaConnection.PortNumber Added Climatec to Test.cs GetJobIdDirectory Remove and Remove Microsoft.AspNet.WebApi.SelfHost 5-Other-Small
This commit is contained in:
parent
49d8e3b309
commit
f9ee74a810
2
.gitignore
vendored
2
.gitignore
vendored
@ -342,4 +342,4 @@ ASALocalRun/
|
|||||||
|
|
||||||
*.lnk
|
*.lnk
|
||||||
|
|
||||||
.kanbn/**/*
|
.kanbn
|
2
.vscode/mklink.md
vendored
2
.vscode/mklink.md
vendored
@ -7,5 +7,5 @@ updated: "2023-10-20T03:53:49.161Z"
|
|||||||
# mklink
|
# mklink
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
mklink /J "L:\Workspaces\33_CS29_79_72\MIT_EAF_Adaptations\Trunk\MESAFIBACKLOG\06_SourceCode\MESAFIBACKLOG\.kanbn" "D:\Documents\Kanban\MESAFIBACKLOG"
|
mklink /J "L:\Workspaces\33_CS29_79_72\MIT_EAF_Adaptations\Trunk\MESAFIBACKLOG\06_SourceCode\MESAFIBACKLOG\.kanbn" "D:\5-Other-Small\Kanban\MESAFIBACKLOG"
|
||||||
```
|
```
|
||||||
|
@ -1,3 +1,19 @@
|
|||||||
|
[*.md]
|
||||||
|
end_of_line = crlf
|
||||||
|
file_header_template = unset
|
||||||
|
indent_size = 2
|
||||||
|
indent_style = space
|
||||||
|
insert_final_newline = false
|
||||||
|
root = true
|
||||||
|
tab_width = 2
|
||||||
|
[*.csproj]
|
||||||
|
end_of_line = crlf
|
||||||
|
file_header_template = unset
|
||||||
|
indent_size = 2
|
||||||
|
indent_style = space
|
||||||
|
insert_final_newline = false
|
||||||
|
root = true
|
||||||
|
tab_width = 2
|
||||||
[*.cs]
|
[*.cs]
|
||||||
csharp_indent_block_contents = true
|
csharp_indent_block_contents = true
|
||||||
csharp_indent_braces = false
|
csharp_indent_braces = false
|
||||||
@ -82,13 +98,29 @@ dotnet_diagnostic.CA1829.severity = warning # CA1829: Use Length/Count property
|
|||||||
dotnet_diagnostic.CA1834.severity = warning # CA1834: Consider using 'StringBuilder.Append(char)' when applicable
|
dotnet_diagnostic.CA1834.severity = warning # CA1834: Consider using 'StringBuilder.Append(char)' when applicable
|
||||||
dotnet_diagnostic.CA1846.severity = none # CA1846: Prefer AsSpan over Substring
|
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.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.CA1862.severity = none # CA1862: Prefer using 'string.Equals(string, StringComparison)' to perform a case-insensitive comparison, but keep in mind that this might cause subtle changes in behavior, so make sure to conduct thorough testing after applying the suggestion, or if culturally sensitive comparison is not required, consider using 'StringComparison.OrdinalIgnoreCase'
|
||||||
|
dotnet_diagnostic.CA1864.severity = none # CA1864: To avoid double lookup, call 'TryAdd' instead of calling 'Add' with a 'ContainsKey' guard
|
||||||
|
dotnet_diagnostic.CA1866.severity = none # CA1866: Use 'string.EndsWith(char)' instead of 'string.EndsWith(string)' when you have a string with a single char
|
||||||
|
dotnet_diagnostic.CA1869.severity = none # CA1869: Avoid creating a new 'JsonSerializerOptions' instance for every serialization operation. Cache and reuse instances instead.
|
||||||
|
dotnet_diagnostic.CA2254.severity = none # CA2254: The logging message template should not vary between calls to 'LoggerExtensions.LogInformation(ILogger, string?, params object?[])'
|
||||||
dotnet_diagnostic.IDE0001.severity = warning # IDE0001: Simplify name
|
dotnet_diagnostic.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.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.IDE0004.severity = warning # IDE0004: Cast is redundant.
|
||||||
dotnet_diagnostic.IDE0005.severity = warning # Using directive is unnecessary
|
dotnet_diagnostic.IDE0005.severity = warning # Using directive is unnecessary
|
||||||
|
dotnet_diagnostic.IDE0028.severity = none # IDE0028: Collection initialization can be simplified
|
||||||
|
dotnet_diagnostic.IDE0031.severity = warning # Use null propagation (IDE0031)
|
||||||
dotnet_diagnostic.IDE0047.severity = warning # IDE0047: Parentheses can be removed
|
dotnet_diagnostic.IDE0047.severity = warning # IDE0047: Parentheses can be removed
|
||||||
dotnet_diagnostic.IDE0049.severity = warning # Use language keywords instead of framework type names for type references (IDE0049)
|
dotnet_diagnostic.IDE0049.severity = warning # Use language keywords instead of framework type names for type references (IDE0049)
|
||||||
dotnet_diagnostic.IDE0060.severity = warning # IDE0060: Remove unused parameter
|
dotnet_diagnostic.IDE0060.severity = warning # IDE0060: Remove unused parameter
|
||||||
|
dotnet_diagnostic.IDE0200.severity = warning # IDE0200: Lambda expression can be removed
|
||||||
|
dotnet_diagnostic.IDE0270.severity = none # IDE0270: Null check can be simplified
|
||||||
|
dotnet_diagnostic.IDE0290.severity = none # Use primary constructor [Distance]csharp(IDE0290)
|
||||||
|
dotnet_diagnostic.IDE0300.severity = none # IDE0300: Collection initialization can be simplified
|
||||||
|
dotnet_diagnostic.IDE0301.severity = none #IDE0301: Collection initialization can be simplified
|
||||||
|
dotnet_diagnostic.IDE0305.severity = none # IDE0305: Collection initialization can be simplified
|
||||||
|
dotnet_diagnostic.SYSLIB1045.severity = none # SYSLIB1045: diagnostics for regex source generation
|
||||||
dotnet_naming_rule.abstract_method_should_be_pascal_case.severity = warning
|
dotnet_naming_rule.abstract_method_should_be_pascal_case.severity = warning
|
||||||
dotnet_naming_rule.abstract_method_should_be_pascal_case.style = pascal_case
|
dotnet_naming_rule.abstract_method_should_be_pascal_case.style = pascal_case
|
||||||
dotnet_naming_rule.abstract_method_should_be_pascal_case.symbols = abstract_method
|
dotnet_naming_rule.abstract_method_should_be_pascal_case.symbols = abstract_method
|
||||||
|
2
Adaptation/.vscode/mklink.md
vendored
2
Adaptation/.vscode/mklink.md
vendored
@ -7,7 +7,7 @@ updated: "2023-10-20T03:57:15.006Z"
|
|||||||
# mklink
|
# mklink
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
mklink /J "T:\MESAFIBACKLOG\06_SourceCode\MESAFIBACKLOG\Adaptation\.kanbn" "D:\Documents\Kanban\MESAFIBACKLOG"
|
mklink /J "T:\MESAFIBACKLOG\06_SourceCode\MESAFIBACKLOG\Adaptation\.kanbn" "D:\5-Other-Small\Kanban\MESAFIBACKLOG"
|
||||||
```
|
```
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
2
Adaptation/.vscode/tasks.json
vendored
2
Adaptation/.vscode/tasks.json
vendored
@ -57,7 +57,7 @@
|
|||||||
{
|
{
|
||||||
"label": "File-Folder-Helper AOT s M .Kanbn Tasks",
|
"label": "File-Folder-Helper AOT s M .Kanbn Tasks",
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"command": "& L:/DevOps/Mesa_FI/File-Folder-Helper/bin/Release/net7.0/win-x64/publish/File-Folder-Helper.exe s M T:/MESAFIBACKLOG/06_SourceCode/MESAFIBACKLOG/Adaptation -s T:/MESAFIBACKLOG/06_SourceCode/MESAFIBACKLOG/Adaptation/.kanbn/tasks",
|
"command": "L:/DevOps/Mesa_FI/File-Folder-Helper/bin/Release/net8.0/win-x64/publish/File-Folder-Helper.exe s M T:/MESAFIBACKLOG/06_SourceCode/MESAFIBACKLOG/Adaptation -s T:/MESAFIBACKLOG/06_SourceCode/MESAFIBACKLOG/Adaptation/.kanbn/tasks",
|
||||||
"problemMatcher": []
|
"problemMatcher": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -127,7 +127,7 @@ public class FileRead : Shared.FileRead, IFileRead
|
|||||||
string jobIdDirectory = Path.Combine(_JobIdParentDirectory, _Logistics.JobID);
|
string jobIdDirectory = Path.Combine(_JobIdParentDirectory, _Logistics.JobID);
|
||||||
if (!Directory.Exists(jobIdDirectory))
|
if (!Directory.Exists(jobIdDirectory))
|
||||||
_ = Directory.CreateDirectory(jobIdDirectory);
|
_ = Directory.CreateDirectory(jobIdDirectory);
|
||||||
if (!Directory.GetDirectories(jobIdDirectory).Any())
|
if (Directory.GetDirectories(jobIdDirectory).Length == 0)
|
||||||
File.Copy(reportFullPath, Path.Combine(destinationArchiveDirectory, Path.GetFileName(reportFullPath)));
|
File.Copy(reportFullPath, Path.Combine(destinationArchiveDirectory, Path.GetFileName(reportFullPath)));
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -6,7 +6,6 @@ using Adaptation.Shared.Methods;
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
|
|
||||||
@ -109,7 +108,7 @@ public class FileRead : Shared.FileRead, IFileRead
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
IProcessData iProcessData = new ProcessData(this, _Logistics, results.Item4, _SheetName);
|
IProcessData iProcessData = new ProcessData(this, _Logistics, results.Item4, _SheetName);
|
||||||
if (!iProcessData.Details.Any())
|
if (iProcessData.Details.Count == 0)
|
||||||
throw new Exception(string.Concat("B) No Data - ", dateTime.Ticks));
|
throw new Exception(string.Concat("B) No Data - ", dateTime.Ticks));
|
||||||
string json = iProcessData.Details[0].ToString();
|
string json = iProcessData.Details[0].ToString();
|
||||||
string fileName = Path.Combine(_FileConnectorConfiguration.TargetFileLocation, $"{Path.GetFileNameWithoutExtension(reportFullPath)} - {_SheetName}{_FileConnectorConfiguration.TargetFileName}");
|
string fileName = Path.Combine(_FileConnectorConfiguration.TargetFileLocation, $"{Path.GetFileNameWithoutExtension(reportFullPath)} - {_SheetName}{_FileConnectorConfiguration.TargetFileName}");
|
||||||
|
@ -160,7 +160,7 @@ public class ProcessData : IProcessData
|
|||||||
if (!fileRead.IsEAFHosted)
|
if (!fileRead.IsEAFHosted)
|
||||||
File.WriteAllText(".json", json);
|
File.WriteAllText(".json", json);
|
||||||
JsonElement[]? jsonElements = JsonSerializer.Deserialize<JsonElement[]>(json, new JsonSerializerOptions() { PropertyNameCaseInsensitive = true });
|
JsonElement[]? jsonElements = JsonSerializer.Deserialize<JsonElement[]>(json, new JsonSerializerOptions() { PropertyNameCaseInsensitive = true });
|
||||||
if (jsonElements is null || !jsonElements.Any())
|
if (jsonElements is null || jsonElements.Length == 0)
|
||||||
throw new NullReferenceException();
|
throw new NullReferenceException();
|
||||||
if (!fileRead.ReportFullPath.Contains("Backlog"))
|
if (!fileRead.ReportFullPath.Contains("Backlog"))
|
||||||
json = JsonSerializer.Serialize(jsonElements, new JsonSerializerOptions() { WriteIndented = true });
|
json = JsonSerializer.Serialize(jsonElements, new JsonSerializerOptions() { WriteIndented = true });
|
||||||
|
@ -157,7 +157,7 @@ public class FileRead : Shared.FileRead, IFileRead
|
|||||||
if (!Directory.Exists(inProcessDirectory))
|
if (!Directory.Exists(inProcessDirectory))
|
||||||
_ = Directory.CreateDirectory(inProcessDirectory);
|
_ = Directory.CreateDirectory(inProcessDirectory);
|
||||||
files = Directory.GetFiles(inProcessDirectory, "*", SearchOption.AllDirectories);
|
files = Directory.GetFiles(inProcessDirectory, "*", SearchOption.AllDirectories);
|
||||||
if (files.Any())
|
if (files.Length != 0)
|
||||||
{
|
{
|
||||||
if (files.Length > 250)
|
if (files.Length > 250)
|
||||||
throw new Exception("Safety net!");
|
throw new Exception("Safety net!");
|
||||||
|
@ -6,7 +6,6 @@ using Adaptation.Shared.Methods;
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
@ -129,7 +128,7 @@ public class FileRead : Shared.FileRead, IFileRead
|
|||||||
for (int i = 0; i < int.MaxValue; i++)
|
for (int i = 0; i < int.MaxValue; i++)
|
||||||
{
|
{
|
||||||
found = Directory.GetFiles(searchDirectory, fileName, SearchOption.AllDirectories);
|
found = Directory.GetFiles(searchDirectory, fileName, SearchOption.AllDirectories);
|
||||||
if (found.Any())
|
if (found.Length != 0)
|
||||||
{
|
{
|
||||||
results.AddRange(found);
|
results.AddRange(found);
|
||||||
break;
|
break;
|
||||||
@ -205,7 +204,7 @@ public class FileRead : Shared.FileRead, IFileRead
|
|||||||
Thread.Sleep(500);
|
Thread.Sleep(500);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (postCollection.Any())
|
if (postCollection.Count != 0)
|
||||||
{
|
{
|
||||||
Thread.Sleep(500);
|
Thread.Sleep(500);
|
||||||
StringBuilder stringBuilder = new();
|
StringBuilder stringBuilder = new();
|
||||||
|
@ -10,7 +10,6 @@ using System;
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
|
||||||
using System.Net.Http;
|
using System.Net.Http;
|
||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
@ -182,7 +181,7 @@ public class FileRead : Shared.FileRead, IFileRead
|
|||||||
forceDeleteUpdatedBy);
|
forceDeleteUpdatedBy);
|
||||||
if (iProcessData is not ProcessData _)
|
if (iProcessData is not ProcessData _)
|
||||||
throw new Exception(string.Concat("A) No Data - ", dateTime.Ticks));
|
throw new Exception(string.Concat("A) No Data - ", dateTime.Ticks));
|
||||||
if (!iProcessData.Details.Any())
|
if (iProcessData.Details.Count == 0)
|
||||||
throw new Exception(string.Concat("B) No Data - ", dateTime.Ticks));
|
throw new Exception(string.Concat("B) No Data - ", dateTime.Ticks));
|
||||||
results = iProcessData.GetResults(this, _Logistics, results.Item4);
|
results = iProcessData.GetResults(this, _Logistics, results.Item4);
|
||||||
Json = json;
|
Json = json;
|
||||||
|
@ -81,7 +81,7 @@ public class ProcessData : IProcessData
|
|||||||
string key;
|
string key;
|
||||||
FIBacklogMesa[]? fiBacklogMesaCollection;
|
FIBacklogMesa[]? fiBacklogMesaCollection;
|
||||||
fiBacklogMesaCollection = JsonSerializer.Deserialize<FIBacklogMesa[]>(json, new JsonSerializerOptions() { PropertyNameCaseInsensitive = true });
|
fiBacklogMesaCollection = JsonSerializer.Deserialize<FIBacklogMesa[]>(json, new JsonSerializerOptions() { PropertyNameCaseInsensitive = true });
|
||||||
if (fiBacklogMesaCollection is null || !fiBacklogMesaCollection.Any())
|
if (fiBacklogMesaCollection is null || fiBacklogMesaCollection.Length == 0)
|
||||||
throw new NullReferenceException();
|
throw new NullReferenceException();
|
||||||
foreach (FIBacklogMesa fiBacklogMesa in fiBacklogMesaCollection)
|
foreach (FIBacklogMesa fiBacklogMesa in fiBacklogMesaCollection)
|
||||||
{
|
{
|
||||||
@ -138,7 +138,7 @@ public class ProcessData : IProcessData
|
|||||||
if (!fileRead.IsEAFHosted)
|
if (!fileRead.IsEAFHosted)
|
||||||
File.WriteAllText("../../example.json", jsonElement.Value.EnumerateObject().Last().Value.ToString());
|
File.WriteAllText("../../example.json", jsonElement.Value.EnumerateObject().Last().Value.ToString());
|
||||||
results = JsonSerializer.Deserialize<Value[]>(jsonElement.Value.EnumerateObject().Last().Value);
|
results = JsonSerializer.Deserialize<Value[]>(jsonElement.Value.EnumerateObject().Last().Value);
|
||||||
if (results is null || !results.Any())
|
if (results is null || results.Length == 0)
|
||||||
throw new NullReferenceException(nameof(results));
|
throw new NullReferenceException(nameof(results));
|
||||||
return results;
|
return results;
|
||||||
}
|
}
|
||||||
@ -726,7 +726,7 @@ public class ProcessData : IProcessData
|
|||||||
string forceUpdatedByComment = "Force updated by";
|
string forceUpdatedByComment = "Force updated by";
|
||||||
string? directory = Path.GetDirectoryName(fileRead.ReportFullPath) ?? throw new Exception();
|
string? directory = Path.GetDirectoryName(fileRead.ReportFullPath) ?? throw new Exception();
|
||||||
string[] checkFiles = Directory.GetFiles(directory, "*.csv", SearchOption.TopDirectoryOnly);
|
string[] checkFiles = Directory.GetFiles(directory, "*.csv", SearchOption.TopDirectoryOnly);
|
||||||
if (checkFiles.Any())
|
if (checkFiles.Length != 0)
|
||||||
UpdateIds(httpClient, basePage, api, checkFiles);
|
UpdateIds(httpClient, basePage, api, checkFiles);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -18,21 +18,12 @@ public class MonIn : IMonIn, IDisposable
|
|||||||
public static MonIn GetInstance(string url = "http://moninhttp.{0}.infineon.com/input/text")
|
public static MonIn GetInstance(string url = "http://moninhttp.{0}.infineon.com/input/text")
|
||||||
{
|
{
|
||||||
MonIn instance;
|
MonIn instance;
|
||||||
if (_Instances.ContainsKey(url))
|
lock (_Instances)
|
||||||
{
|
{
|
||||||
instance = _Instances[url];
|
if (_Instances.TryGetValue(url, out instance))
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
lock (_Instances)
|
|
||||||
{
|
{
|
||||||
if (!_Instances.ContainsKey(url))
|
instance = new MonIn(url);
|
||||||
{
|
_Instances.Add(url, instance);
|
||||||
instance = new MonIn(url);
|
|
||||||
_Instances.Add(url, instance);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
instance = _Instances[url];
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return instance;
|
return instance;
|
||||||
|
@ -133,18 +133,18 @@ steps:
|
|||||||
- task: CopyFiles@2
|
- task: CopyFiles@2
|
||||||
displayName: 'Copy Files to: D:\Framework4.8'
|
displayName: 'Copy Files to: D:\Framework4.8'
|
||||||
inputs:
|
inputs:
|
||||||
SourceFolder: 'bin\$(Configuration)'
|
|
||||||
Contents: "*$(Build.Repository.Name)*"
|
Contents: "*$(Build.Repository.Name)*"
|
||||||
|
SourceFolder: 'bin\$(Configuration)'
|
||||||
TargetFolder: 'D:\Framework4.8\$(GitCommitSeven)-$(Build.BuildId)-$(Build.Repository.Name)-$(Configuration)'
|
TargetFolder: 'D:\Framework4.8\$(GitCommitSeven)-$(Build.BuildId)-$(Build.Repository.Name)-$(Configuration)'
|
||||||
OverWrite: true
|
OverWrite: true
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
- task: CopyFiles@2
|
- task: CopyFiles@2
|
||||||
displayName: 'Copy Files to: \\messv02ecc1.ec.local\EC_EAFRepository'
|
displayName: 'Copy Files to: \\mesfs.infineon.com\EC_EAFRepository'
|
||||||
inputs:
|
inputs:
|
||||||
SourceFolder: 'bin\$(Configuration)'
|
|
||||||
Contents: "*$(Build.Repository.Name)*"
|
Contents: "*$(Build.Repository.Name)*"
|
||||||
TargetFolder: '\\messv02ecc1.ec.local\EC_EAFRepository\Staging\DeploymentStorage\Adaptation_$(Build.Repository.Name)'
|
SourceFolder: 'bin\$(Configuration)'
|
||||||
|
TargetFolder: '\\mesfs.infineon.com\EC_EAFRepository\Staging\DeploymentStorage\Adaptation_$(Build.Repository.Name)'
|
||||||
OverWrite: true
|
OverWrite: true
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
|
@ -8,10 +8,9 @@
|
|||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ImplicitUsings>disable</ImplicitUsings>
|
<ImplicitUsings>disable</ImplicitUsings>
|
||||||
<IsPackable>false</IsPackable>
|
<IsPackable>false</IsPackable>
|
||||||
<LangVersion>10.0</LangVersion>
|
|
||||||
<Nullable>disable</Nullable>
|
<Nullable>disable</Nullable>
|
||||||
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
|
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net8.0</TargetFramework>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<VSTestLogger>trx</VSTestLogger>
|
<VSTestLogger>trx</VSTestLogger>
|
||||||
@ -43,30 +42,32 @@
|
|||||||
<PackageReference Include="IKVM.OpenJDK.XML.API" 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="IKVM.Runtime" Version="7.2.4630.5"><NoWarn>NU1701</NoWarn></PackageReference>
|
||||||
<PackageReference Include="Instances" Version="3.0.0" />
|
<PackageReference Include="Instances" Version="3.0.0" />
|
||||||
<PackageReference Include="Microsoft.AspNet.WebApi.SelfHost" Version="5.2.9" />
|
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="7.0.4" />
|
<PackageReference Include="Microsoft.Extensions.Configuration.CommandLine" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Configuration.CommandLine" Version="7.0.0" />
|
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="7.0.0" />
|
<PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="7.0.0" />
|
<PackageReference Include="Microsoft.Extensions.Configuration.json" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Configuration.json" Version="7.0.0" />
|
<PackageReference Include="Microsoft.Extensions.Configuration" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Configuration" Version="7.0.0" />
|
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
|
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="7.0.0" />
|
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="7.0.0" />
|
<PackageReference Include="Microsoft.Extensions.Logging" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Logging" Version="7.0.0" />
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
|
||||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.6.1" />
|
<PackageReference Include="Microsoft.Win32.SystemEvents" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.Win32.SystemEvents" Version="7.0.0" />
|
<PackageReference Include="MSTest.TestAdapter" Version="3.1.1" />
|
||||||
<PackageReference Include="MSTest.TestAdapter" Version="3.0.4" />
|
<PackageReference Include="MSTest.TestFramework" Version="3.1.1" />
|
||||||
<PackageReference Include="MSTest.TestFramework" Version="3.0.4" />
|
|
||||||
<PackageReference Include="Pdfbox" Version="1.1.1"><NoWarn>NU1701</NoWarn></PackageReference>
|
<PackageReference Include="Pdfbox" Version="1.1.1"><NoWarn>NU1701</NoWarn></PackageReference>
|
||||||
<PackageReference Include="RoboSharp" Version="1.2.8" />
|
<PackageReference Include="RoboSharp" Version="1.3.5" />
|
||||||
<PackageReference Include="System.Configuration.ConfigurationManager" Version="7.0.0" />
|
<PackageReference Include="System.Configuration.ConfigurationManager" Version="8.0.0" />
|
||||||
<PackageReference Include="System.Data.OleDb" Version="7.0.0" />
|
<PackageReference Include="System.Data.OleDb" Version="8.0.0" />
|
||||||
<PackageReference Include="System.Data.SqlClient" Version="4.8.5" />
|
<PackageReference Include="System.Data.SqlClient" Version="4.8.5" />
|
||||||
<PackageReference Include="System.Drawing.Common" Version="7.0.0" />
|
<PackageReference Include="System.Drawing.Common" Version="8.0.0" />
|
||||||
<PackageReference Include="System.Text.Json" Version="7.0.2" />
|
<PackageReference Include="System.Text.Json" Version="8.0.0" />
|
||||||
<PackageReference Include="Tesseract" Version="5.2.0" />
|
<PackageReference Include="Tesseract" Version="5.2.0" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Microsoft.AspNet.WebApi.SelfHost" Version="5.2.9" />
|
||||||
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.TeamFoundationServer.Client" Version="16.205.1" />
|
<PackageReference Include="Microsoft.TeamFoundationServer.Client" Version="16.205.1" />
|
||||||
<PackageReference Include="Tibco.Rendezvous.DotNetCore" Version="8.5.0" />
|
<PackageReference Include="Tibco.Rendezvous.DotNetCore" Version="8.5.0" />
|
||||||
|
@ -134,16 +134,16 @@ steps:
|
|||||||
- task: CopyFiles@2
|
- task: CopyFiles@2
|
||||||
displayName: 'Copy Files to: D:\Framework4.8'
|
displayName: 'Copy Files to: D:\Framework4.8'
|
||||||
inputs:
|
inputs:
|
||||||
SourceFolder: 'bin\$(Configuration)'
|
|
||||||
Contents: "*$(Build.Repository.Name)*"
|
Contents: "*$(Build.Repository.Name)*"
|
||||||
|
SourceFolder: 'bin\$(Configuration)'
|
||||||
TargetFolder: 'D:\Framework4.8\$(GitCommitSeven)-$(Build.BuildId)-$(Build.Repository.Name)-$(Configuration)'
|
TargetFolder: 'D:\Framework4.8\$(GitCommitSeven)-$(Build.BuildId)-$(Build.Repository.Name)-$(Configuration)'
|
||||||
OverWrite: true
|
OverWrite: true
|
||||||
|
|
||||||
- task: CopyFiles@2
|
- task: CopyFiles@2
|
||||||
displayName: 'Copy Files to: \\messv02ecc1.ec.local\EC_EAFRepository'
|
displayName: 'Copy Files to: \\mesfs.infineon.com\EC_EAFRepository'
|
||||||
inputs:
|
inputs:
|
||||||
SourceFolder: 'bin\$(Configuration)'
|
|
||||||
Contents: "*$(Build.Repository.Name)*"
|
Contents: "*$(Build.Repository.Name)*"
|
||||||
|
SourceFolder: 'bin\$(Configuration)'
|
||||||
TargetFolder: 'D:\EAF\EAF Deployment Storage\Adaptation_$(Build.Repository.Name)'
|
TargetFolder: 'D:\EAF\EAF Deployment Storage\Adaptation_$(Build.Repository.Name)'
|
||||||
OverWrite: true
|
OverWrite: true
|
||||||
|
|
||||||
|
@ -163,7 +163,7 @@ public class FileRead : Properties.IFileRead
|
|||||||
protected static ModelObjectParameterDefinition[] GetProperties(string cellInstanceConnectionName, IList<ModelObjectParameterDefinition> modelObjectParameters, string propertyNamePrefix)
|
protected static ModelObjectParameterDefinition[] GetProperties(string cellInstanceConnectionName, IList<ModelObjectParameterDefinition> modelObjectParameters, string propertyNamePrefix)
|
||||||
{
|
{
|
||||||
ModelObjectParameterDefinition[] results = (from l in modelObjectParameters where l.Name.StartsWith(propertyNamePrefix) select l).ToArray();
|
ModelObjectParameterDefinition[] results = (from l in modelObjectParameters where l.Name.StartsWith(propertyNamePrefix) select l).ToArray();
|
||||||
if (!results.Any())
|
if (results.Length == 0)
|
||||||
throw new Exception(cellInstanceConnectionName);
|
throw new Exception(cellInstanceConnectionName);
|
||||||
return results;
|
return results;
|
||||||
}
|
}
|
||||||
@ -171,7 +171,7 @@ public class FileRead : Properties.IFileRead
|
|||||||
protected static ModelObjectParameterDefinition[] GetProperties(string cellInstanceConnectionName, IList<ModelObjectParameterDefinition> modelObjectParameters, string propertyNamePrefix, string propertyNameSuffix)
|
protected static ModelObjectParameterDefinition[] GetProperties(string cellInstanceConnectionName, IList<ModelObjectParameterDefinition> modelObjectParameters, string propertyNamePrefix, string propertyNameSuffix)
|
||||||
{
|
{
|
||||||
ModelObjectParameterDefinition[] results = (from l in modelObjectParameters where l.Name.StartsWith(propertyNamePrefix) && l.Name.EndsWith(propertyNameSuffix) select l).ToArray();
|
ModelObjectParameterDefinition[] results = (from l in modelObjectParameters where l.Name.StartsWith(propertyNamePrefix) && l.Name.EndsWith(propertyNameSuffix) select l).ToArray();
|
||||||
if (!results.Any())
|
if (results.Length == 0)
|
||||||
throw new Exception(cellInstanceConnectionName);
|
throw new Exception(cellInstanceConnectionName);
|
||||||
return results;
|
return results;
|
||||||
}
|
}
|
||||||
@ -203,7 +203,7 @@ public class FileRead : Properties.IFileRead
|
|||||||
}
|
}
|
||||||
lock (threadExceptions)
|
lock (threadExceptions)
|
||||||
{
|
{
|
||||||
if (threadExceptions.Any())
|
if (threadExceptions.Count != 0)
|
||||||
{
|
{
|
||||||
foreach (Exception item in threadExceptions)
|
foreach (Exception item in threadExceptions)
|
||||||
_Log.Error(string.Concat(item.Message, Environment.NewLine, Environment.NewLine, item.StackTrace));
|
_Log.Error(string.Concat(item.Message, Environment.NewLine, Environment.NewLine, item.StackTrace));
|
||||||
@ -241,7 +241,7 @@ public class FileRead : Properties.IFileRead
|
|||||||
if (!_IsDuplicator)
|
if (!_IsDuplicator)
|
||||||
WriteAllLines(to, results);
|
WriteAllLines(to, results);
|
||||||
}
|
}
|
||||||
if (extractResults is not null && extractResults.Item4 is not null && extractResults.Item4.Any())
|
if (extractResults is not null && extractResults.Item4 is not null && extractResults.Item4.Count != 0)
|
||||||
{
|
{
|
||||||
string itemFile;
|
string itemFile;
|
||||||
List<string> directories = new();
|
List<string> directories = new();
|
||||||
@ -268,7 +268,7 @@ public class FileRead : Properties.IFileRead
|
|||||||
string dateValue;
|
string dateValue;
|
||||||
string rdsPlaceholder = "%RDS%";
|
string rdsPlaceholder = "%RDS%";
|
||||||
string mesEntityPlaceholder = "%MesEntity%";
|
string mesEntityPlaceholder = "%MesEntity%";
|
||||||
if (!descriptions.Any() || string.IsNullOrEmpty(descriptions[0].RDS))
|
if (descriptions.Count == 0 || string.IsNullOrEmpty(descriptions[0].RDS))
|
||||||
rds = logistics.MID;
|
rds = logistics.MID;
|
||||||
else
|
else
|
||||||
rds = descriptions[0].RDS;
|
rds = descriptions[0].RDS;
|
||||||
@ -312,7 +312,7 @@ public class FileRead : Properties.IFileRead
|
|||||||
preWait = dateTime.AddMilliseconds(1234).Ticks;
|
preWait = dateTime.AddMilliseconds(1234).Ticks;
|
||||||
else
|
else
|
||||||
preWait = dateTime.AddMilliseconds(_FileConnectorConfiguration.FileHandleWaitTime.Value).Ticks;
|
preWait = dateTime.AddMilliseconds(_FileConnectorConfiguration.FileHandleWaitTime.Value).Ticks;
|
||||||
if (!collection.Any())
|
if (collection.Count == 0)
|
||||||
duplicateFiles.Add(duplicateFile);
|
duplicateFiles.Add(duplicateFile);
|
||||||
string fileName = Path.GetFileNameWithoutExtension(logistics.ReportFullPath);
|
string fileName = Path.GetFileNameWithoutExtension(logistics.ReportFullPath);
|
||||||
string successFile = string.Concat(successDirectory, @"\", Path.GetFileName(logistics.ReportFullPath));
|
string successFile = string.Concat(successDirectory, @"\", Path.GetFileName(logistics.ReportFullPath));
|
||||||
@ -422,10 +422,12 @@ public class FileRead : Properties.IFileRead
|
|||||||
protected void WritePDSF(IFileRead fileRead, JsonElement[] jsonElements)
|
protected void WritePDSF(IFileRead fileRead, JsonElement[] jsonElements)
|
||||||
{
|
{
|
||||||
string directory;
|
string directory;
|
||||||
|
string weekOfYear = _Calendar.GetWeekOfYear(_Logistics.DateTimeFromSequence, CalendarWeekRule.FirstDay, DayOfWeek.Sunday).ToString("00");
|
||||||
|
string weekDirectory = $"{_Logistics.DateTimeFromSequence:yyyy}_Week_{weekOfYear}{@"\"}{_Logistics.DateTimeFromSequence:yyyy-MM-dd}";
|
||||||
if (!_CellInstanceConnectionName.StartsWith(_CellInstanceName) && _CellInstanceConnectionNameBase == _EquipmentType)
|
if (!_CellInstanceConnectionName.StartsWith(_CellInstanceName) && _CellInstanceConnectionNameBase == _EquipmentType)
|
||||||
directory = Path.Combine(_TracePath, _EquipmentType, "Target", _CellInstanceName, _CellInstanceConnectionName);
|
directory = Path.Combine(_TracePath, _EquipmentType, "Target", weekDirectory, _CellInstanceName, _CellInstanceConnectionName);
|
||||||
else
|
else
|
||||||
directory = Path.Combine(_TracePath, _EquipmentType, "Source", _CellInstanceName, _CellInstanceConnectionName);
|
directory = Path.Combine(_TracePath, _EquipmentType, "Source", weekDirectory, _CellInstanceName, _CellInstanceConnectionName);
|
||||||
if (!Directory.Exists(directory))
|
if (!Directory.Exists(directory))
|
||||||
_ = Directory.CreateDirectory(directory);
|
_ = Directory.CreateDirectory(directory);
|
||||||
string file = Path.Combine(directory, string.Concat(_Logistics.MesEntity, "_", _Logistics.Sequence, ".ipdsf"));
|
string file = Path.Combine(directory, string.Concat(_Logistics.MesEntity, "_", _Logistics.Sequence, ".ipdsf"));
|
||||||
@ -460,6 +462,7 @@ public class FileRead : Properties.IFileRead
|
|||||||
protected void TriggerEvents(Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResults, List<string> headerNames, Dictionary<string, string> keyValuePairs)
|
protected void TriggerEvents(Tuple<string, Test[], JsonElement[], List<FileInfo>> extractResults, List<string> headerNames, Dictionary<string, string> keyValuePairs)
|
||||||
{
|
{
|
||||||
object value;
|
object value;
|
||||||
|
string segments;
|
||||||
string description;
|
string description;
|
||||||
List<object[]> list;
|
List<object[]> list;
|
||||||
for (int i = 0; i < extractResults.Item3.Length; i++)
|
for (int i = 0; i < extractResults.Item3.Length; i++)
|
||||||
@ -467,10 +470,10 @@ public class FileRead : Properties.IFileRead
|
|||||||
_Log.Debug(string.Concat("TriggerEvent - {", _Logistics.ReportFullPath, "} ", i, " of ", extractResults.Item3.Length));
|
_Log.Debug(string.Concat("TriggerEvent - {", _Logistics.ReportFullPath, "} ", i, " of ", extractResults.Item3.Length));
|
||||||
foreach (JsonProperty jsonProperty in extractResults.Item3[i].EnumerateObject())
|
foreach (JsonProperty jsonProperty in extractResults.Item3[i].EnumerateObject())
|
||||||
{
|
{
|
||||||
if (jsonProperty.Value.ValueKind != JsonValueKind.String || !keyValuePairs.ContainsKey(jsonProperty.Name))
|
if (jsonProperty.Value.ValueKind != JsonValueKind.String || !keyValuePairs.TryGetValue(jsonProperty.Name, out segments))
|
||||||
description = string.Empty;
|
description = string.Empty;
|
||||||
else
|
else
|
||||||
description = keyValuePairs[jsonProperty.Name].Split('|')[0];
|
description = segments.Split('|')[0];
|
||||||
if (!_UseCyclicalForDescription || headerNames.Contains(jsonProperty.Name))
|
if (!_UseCyclicalForDescription || headerNames.Contains(jsonProperty.Name))
|
||||||
value = jsonProperty.Value.ToString();
|
value = jsonProperty.Value.ToString();
|
||||||
else
|
else
|
||||||
@ -502,10 +505,10 @@ public class FileRead : Properties.IFileRead
|
|||||||
matches = Directory.GetFiles(_FileConnectorConfiguration.SourceFileLocation, segments.Last(), SearchOption.AllDirectories);
|
matches = Directory.GetFiles(_FileConnectorConfiguration.SourceFileLocation, segments.Last(), SearchOption.AllDirectories);
|
||||||
else
|
else
|
||||||
matches = Directory.GetFiles(_FileConnectorConfiguration.SourceFileLocation, segments.Last(), SearchOption.TopDirectoryOnly);
|
matches = Directory.GetFiles(_FileConnectorConfiguration.SourceFileLocation, segments.Last(), SearchOption.TopDirectoryOnly);
|
||||||
if (matches.Any())
|
if (matches.Length != 0)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (matches is null || !matches.Any())
|
if (matches is null || matches.Length == 0)
|
||||||
results = null;
|
results = null;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -568,16 +571,99 @@ public class FileRead : Properties.IFileRead
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
internal static List<string> GetDirectoryNames(string directory)
|
||||||
|
{
|
||||||
|
#nullable enable
|
||||||
|
List<string> results = new();
|
||||||
|
string? fileName;
|
||||||
|
string? checkDirectory = directory;
|
||||||
|
string? pathRoot = Path.GetPathRoot(directory);
|
||||||
|
string extension = Path.GetExtension(directory);
|
||||||
|
if (string.IsNullOrEmpty(pathRoot))
|
||||||
|
throw new NullReferenceException(nameof(pathRoot));
|
||||||
|
if (Directory.Exists(directory))
|
||||||
|
{
|
||||||
|
fileName = Path.GetFileName(directory);
|
||||||
|
if (!string.IsNullOrEmpty(fileName))
|
||||||
|
results.Add(fileName);
|
||||||
|
}
|
||||||
|
else if ((string.IsNullOrEmpty(extension) || extension.Length > 3) && !File.Exists(directory))
|
||||||
|
{
|
||||||
|
fileName = Path.GetFileName(directory);
|
||||||
|
if (!string.IsNullOrEmpty(fileName))
|
||||||
|
results.Add(fileName);
|
||||||
|
}
|
||||||
|
for (int i = 0; i < int.MaxValue; i++)
|
||||||
|
{
|
||||||
|
checkDirectory = Path.GetDirectoryName(checkDirectory);
|
||||||
|
if (string.IsNullOrEmpty(checkDirectory) || checkDirectory == pathRoot)
|
||||||
|
break;
|
||||||
|
fileName = Path.GetFileName(checkDirectory);
|
||||||
|
if (string.IsNullOrEmpty(fileName))
|
||||||
|
continue;
|
||||||
|
results.Add(fileName);
|
||||||
|
}
|
||||||
|
results.Add(pathRoot);
|
||||||
|
results.Reverse();
|
||||||
|
return results;
|
||||||
|
#nullable disable
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetJobIdDirectory(string path)
|
||||||
|
{
|
||||||
|
string result;
|
||||||
|
List<string> directoryNames = GetDirectoryNames(path);
|
||||||
|
if (!directoryNames.Contains(_Logistics.JobID))
|
||||||
|
result = Path.GetDirectoryName(path);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result = string.Empty;
|
||||||
|
foreach (string directoryName in directoryNames)
|
||||||
|
{
|
||||||
|
result = Path.Combine(result, directoryName);
|
||||||
|
if (directoryName == _Logistics.JobID)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void DeleteEmptyTopDirectories(string rootDirectory)
|
||||||
|
{
|
||||||
|
if (Directory.Exists(rootDirectory))
|
||||||
|
{
|
||||||
|
string[] files;
|
||||||
|
string[] directories;
|
||||||
|
string[] subDirectories = Directory.GetDirectories(rootDirectory, "*", SearchOption.TopDirectoryOnly);
|
||||||
|
foreach (string subDirectory in subDirectories)
|
||||||
|
{
|
||||||
|
files = Directory.GetFiles(subDirectory, "*", SearchOption.AllDirectories);
|
||||||
|
if (files.Length > 0)
|
||||||
|
continue;
|
||||||
|
directories = Directory.GetDirectories(subDirectory, "*", SearchOption.TopDirectoryOnly);
|
||||||
|
if (directories.Length > 0)
|
||||||
|
continue;
|
||||||
|
try
|
||||||
|
{ Directory.Delete(subDirectory); }
|
||||||
|
catch (UnauthorizedAccessException)
|
||||||
|
{
|
||||||
|
new DirectoryInfo(subDirectory).Attributes = FileAttributes.Normal;
|
||||||
|
Directory.Delete(subDirectory);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void Shared1811(string to, FileInfo sourceFile)
|
private void Shared1811(string to, FileInfo sourceFile)
|
||||||
{
|
{
|
||||||
if (!_IsDuplicator && _FileConnectorConfiguration.SourceFileFilter != "*" && sourceFile.Exists && sourceFile.Length < _MinFileLength)
|
if (!_IsDuplicator && _FileConnectorConfiguration.SourceFileFilter != "*" && sourceFile.Exists && sourceFile.Length < _MinFileLength)
|
||||||
{
|
{
|
||||||
string directoryName = Path.GetFileName(to);
|
string directoryName = Path.GetFileName(to);
|
||||||
string jobIdDirectory = Path.GetDirectoryName(to);
|
string jobIdDirectory = GetJobIdDirectory(to);
|
||||||
DateTime dateTime = DateTime.Now.AddMinutes(-15);
|
DateTime dateTime = DateTime.Now.AddMinutes(-15);
|
||||||
string weekOfYear = _Calendar.GetWeekOfYear(_Logistics.DateTimeFromSequence, CalendarWeekRule.FirstDay, DayOfWeek.Sunday).ToString("00");
|
string weekOfYear = _Calendar.GetWeekOfYear(_Logistics.DateTimeFromSequence, CalendarWeekRule.FirstDay, DayOfWeek.Sunday).ToString("00");
|
||||||
string weekDirectory = $"{_Logistics.DateTimeFromSequence:yyyy}_Week_{weekOfYear}{@"\"}{_Logistics.DateTimeFromSequence:yyyy-MM-dd}";
|
string weekDirectory = $"{_Logistics.DateTimeFromSequence:yyyy}_Week_{weekOfYear}{@"\"}{_Logistics.DateTimeFromSequence:yyyy-MM-dd}";
|
||||||
string destinationDirectory = string.Concat(jobIdDirectory, @"\_ Ignore 100 bytes\", weekDirectory, @"\", directoryName);
|
string destinationDirectory = Path.Combine(jobIdDirectory, "_ Ignore 100 bytes", weekDirectory, directoryName);
|
||||||
if (!Directory.Exists(destinationDirectory))
|
if (!Directory.Exists(destinationDirectory))
|
||||||
_ = Directory.CreateDirectory(destinationDirectory);
|
_ = Directory.CreateDirectory(destinationDirectory);
|
||||||
File.Move(sourceFile.FullName, string.Concat(destinationDirectory, @"\", sourceFile.Name));
|
File.Move(sourceFile.FullName, string.Concat(destinationDirectory, @"\", sourceFile.Name));
|
||||||
@ -588,13 +674,13 @@ public class FileRead : Properties.IFileRead
|
|||||||
{
|
{
|
||||||
if (!checkDirectory.Contains('_'))
|
if (!checkDirectory.Contains('_'))
|
||||||
continue;
|
continue;
|
||||||
if (Directory.GetDirectories(checkDirectory, "*", SearchOption.TopDirectoryOnly).Any())
|
if (Directory.GetDirectories(checkDirectory, "*", SearchOption.TopDirectoryOnly).Length != 0)
|
||||||
continue;
|
continue;
|
||||||
if (Directory.GetFiles(checkDirectory, "*", SearchOption.TopDirectoryOnly).Any())
|
if (Directory.GetFiles(checkDirectory, "*", SearchOption.TopDirectoryOnly).Length != 0)
|
||||||
continue;
|
continue;
|
||||||
if (Directory.GetDirectories(checkDirectory, "*", SearchOption.AllDirectories).Any())
|
if (Directory.GetDirectories(checkDirectory, "*", SearchOption.AllDirectories).Length != 0)
|
||||||
continue;
|
continue;
|
||||||
if (Directory.GetFiles(checkDirectory, "*", SearchOption.AllDirectories).Any())
|
if (Directory.GetFiles(checkDirectory, "*", SearchOption.AllDirectories).Length != 0)
|
||||||
continue;
|
continue;
|
||||||
if (new DirectoryInfo(checkDirectory).CreationTime > dateTime)
|
if (new DirectoryInfo(checkDirectory).CreationTime > dateTime)
|
||||||
continue;
|
continue;
|
||||||
@ -602,6 +688,7 @@ public class FileRead : Properties.IFileRead
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception) { throw; }
|
catch (Exception) { throw; }
|
||||||
|
DeleteEmptyTopDirectories(jobIdDirectory);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -611,7 +698,7 @@ public class FileRead : Properties.IFileRead
|
|||||||
{
|
{
|
||||||
foreach (string directory in (from l in directories orderby l.Split('\\').Length descending select l).Distinct())
|
foreach (string directory in (from l in directories orderby l.Split('\\').Length descending select l).Distinct())
|
||||||
{
|
{
|
||||||
if (Directory.Exists(directory) && !Directory.GetFiles(directory).Any())
|
if (Directory.Exists(directory) && Directory.GetFiles(directory).Length == 0)
|
||||||
Directory.Delete(directory);
|
Directory.Delete(directory);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -91,7 +91,7 @@ public class Logistics : ILogistics
|
|||||||
string[] segments;
|
string[] segments;
|
||||||
_FileInfo = new(reportFullPath);
|
_FileInfo = new(reportFullPath);
|
||||||
_Logistics1 = logistics.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries).ToList();
|
_Logistics1 = logistics.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries).ToList();
|
||||||
if (!Logistics1.Any() || !Logistics1[0].StartsWith("LOGISTICS_1"))
|
if (Logistics1.Count == 0 || !Logistics1[0].StartsWith("LOGISTICS_1"))
|
||||||
{
|
{
|
||||||
_NullData = null;
|
_NullData = null;
|
||||||
_JobID = "null";
|
_JobID = "null";
|
||||||
|
@ -23,7 +23,7 @@ public class ProcessDataStandardFormat
|
|||||||
public static string GetPDSFText(IFileRead fileRead, Logistics logistics, JsonElement[] jsonElements, string logisticsText)
|
public static string GetPDSFText(IFileRead fileRead, Logistics logistics, JsonElement[] jsonElements, string logisticsText)
|
||||||
{
|
{
|
||||||
string result;
|
string result;
|
||||||
if (!jsonElements.Any())
|
if (jsonElements.Length == 0)
|
||||||
result = string.Empty;
|
result = string.Empty;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -146,7 +146,7 @@ public class ProcessDataStandardFormat
|
|||||||
string logistics = pdsf.Item1;
|
string logistics = pdsf.Item1;
|
||||||
string[] columns = pdsf.Item2;
|
string[] columns = pdsf.Item2;
|
||||||
string[] bodyLines = pdsf.Item3;
|
string[] bodyLines = pdsf.Item3;
|
||||||
if (!bodyLines.Any() || !bodyLines[0].Contains('\t'))
|
if (bodyLines.Length == 0 || !bodyLines[0].Contains('\t'))
|
||||||
results = JsonSerializer.Deserialize<JsonElement[]>("[]");
|
results = JsonSerializer.Deserialize<JsonElement[]>("[]");
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -211,9 +211,10 @@ public class ProcessDataStandardFormat
|
|||||||
public static Tuple<string, Dictionary<Test, Dictionary<string, List<string>>>> GetTestDictionary(Tuple<string, string[], string[]> pdsf)
|
public static Tuple<string, Dictionary<Test, Dictionary<string, List<string>>>> GetTestDictionary(Tuple<string, string[], string[]> pdsf)
|
||||||
{
|
{
|
||||||
Dictionary<Test, Dictionary<string, List<string>>> results = new();
|
Dictionary<Test, Dictionary<string, List<string>>> results = new();
|
||||||
|
List<string> collection;
|
||||||
string testColumn = nameof(Test);
|
string testColumn = nameof(Test);
|
||||||
Dictionary<string, List<string>> keyValuePairs = GetDictionary(pdsf);
|
Dictionary<string, List<string>> keyValuePairs = GetDictionary(pdsf);
|
||||||
if (!keyValuePairs.ContainsKey(testColumn))
|
if (!keyValuePairs.TryGetValue(testColumn, out collection))
|
||||||
throw new Exception();
|
throw new Exception();
|
||||||
int min;
|
int min;
|
||||||
int max;
|
int max;
|
||||||
@ -221,9 +222,9 @@ public class ProcessDataStandardFormat
|
|||||||
List<string> vs;
|
List<string> vs;
|
||||||
string columnKey;
|
string columnKey;
|
||||||
Dictionary<Test, List<int>> tests = new();
|
Dictionary<Test, List<int>> tests = new();
|
||||||
for (int i = 0; i < keyValuePairs[testColumn].Count; i++)
|
for (int i = 0; i < collection.Count; i++)
|
||||||
{
|
{
|
||||||
if (Enum.TryParse(keyValuePairs[testColumn][i], out Test test))
|
if (Enum.TryParse(collection[i], out Test test))
|
||||||
{
|
{
|
||||||
if (!results.ContainsKey(test))
|
if (!results.ContainsKey(test))
|
||||||
{
|
{
|
||||||
@ -325,7 +326,7 @@ public class ProcessDataStandardFormat
|
|||||||
_ = line.Append(';');
|
_ = line.Append(';');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!pairedParameterNames.Any())
|
if (pairedParameterNames.Count == 0)
|
||||||
{
|
{
|
||||||
_ = line.Remove(line.Length - 1, 1);
|
_ = line.Remove(line.Length - 1, 1);
|
||||||
_ = result.AppendLine(line.ToString());
|
_ = result.AppendLine(line.ToString());
|
||||||
|
@ -14,6 +14,7 @@ public enum Test
|
|||||||
CandelaPSL = 38,
|
CandelaPSL = 38,
|
||||||
CandelaVerify = 37,
|
CandelaVerify = 37,
|
||||||
CDE = 24,
|
CDE = 24,
|
||||||
|
Climatec = 54, //Largest
|
||||||
CV = 3,
|
CV = 3,
|
||||||
DailyRPMAverage = 19,
|
DailyRPMAverage = 19,
|
||||||
DailyRPMPLRatio = 20,
|
DailyRPMPLRatio = 20,
|
||||||
@ -38,7 +39,7 @@ public enum Test
|
|||||||
RPMPLRatio = 17,
|
RPMPLRatio = 17,
|
||||||
RPMXY = 15,
|
RPMXY = 15,
|
||||||
SP1 = 8,
|
SP1 = 8,
|
||||||
SRP2100 = 53, //Largest
|
SRP2100 = 53,
|
||||||
Tencor = 7,
|
Tencor = 7,
|
||||||
UV = 35,
|
UV = 35,
|
||||||
VerificationLehighton = 14,
|
VerificationLehighton = 14,
|
||||||
|
@ -305,7 +305,7 @@ public class AdaptationTesting : ISMTP
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
results = Directory.GetFiles(mbn.TextFileDirectory, "*.txt", SearchOption.TopDirectoryOnly);
|
results = Directory.GetFiles(mbn.TextFileDirectory, "*.txt", SearchOption.TopDirectoryOnly);
|
||||||
if (!string.IsNullOrEmpty(mbn.Ticks) && _HasWaitForProperty && !results.Any())
|
if (!string.IsNullOrEmpty(mbn.Ticks) && _HasWaitForProperty && results.Length == 0)
|
||||||
{
|
{
|
||||||
_ = Process.Start("explorer.exe", mbn.TextFileDirectory);
|
_ = Process.Start("explorer.exe", mbn.TextFileDirectory);
|
||||||
File.WriteAllText(Path.Combine(mbn.TextFileDirectory, "_ Why.why"), string.Empty);
|
File.WriteAllText(Path.Combine(mbn.TextFileDirectory, "_ Why.why"), string.Empty);
|
||||||
@ -373,9 +373,7 @@ public class AdaptationTesting : ISMTP
|
|||||||
Tuple<string, CellInstanceVersion> result;
|
Tuple<string, CellInstanceVersion> result;
|
||||||
CellInstanceVersion cellInstanceVersion;
|
CellInstanceVersion cellInstanceVersion;
|
||||||
string cellInstanceServiceV2 = string.Concat("http://", _HostNameAndPort, "/CellInstanceServiceV2/", cellInstanceName, "/", cellInstanceVersionName, "/configuration");
|
string cellInstanceServiceV2 = string.Concat("http://", _HostNameAndPort, "/CellInstanceServiceV2/", cellInstanceName, "/", cellInstanceVersionName, "/configuration");
|
||||||
if (_CellInstanceVersions.ContainsKey(cellInstanceServiceV2))
|
if (!_CellInstanceVersions.TryGetValue(cellInstanceServiceV2, out cellInstanceVersion))
|
||||||
cellInstanceVersion = _CellInstanceVersions[cellInstanceServiceV2];
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
cellInstanceVersion = GetCellInstanceVersion(cellInstanceServiceV2);
|
cellInstanceVersion = GetCellInstanceVersion(cellInstanceServiceV2);
|
||||||
_CellInstanceVersions.Add(cellInstanceServiceV2, cellInstanceVersion);
|
_CellInstanceVersions.Add(cellInstanceServiceV2, cellInstanceVersion);
|
||||||
@ -401,7 +399,7 @@ public class AdaptationTesting : ISMTP
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!results.Any() || (!string.IsNullOrEmpty(cellInstanceConnectionName) && !results.ContainsKey(cellInstanceConnectionName)))
|
if (results.Count == 0 || (!string.IsNullOrEmpty(cellInstanceConnectionName) && !results.ContainsKey(cellInstanceConnectionName)))
|
||||||
throw new Exception("Match not found (check test method name matches Mango)!");
|
throw new Exception("Match not found (check test method name matches Mango)!");
|
||||||
return results;
|
return results;
|
||||||
}
|
}
|
||||||
@ -413,9 +411,8 @@ public class AdaptationTesting : ISMTP
|
|||||||
result = componentModelComponentsIndexes.ElementAt(0).Value;
|
result = componentModelComponentsIndexes.ElementAt(0).Value;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (componentModelComponentsIndexes is null || !componentModelComponentsIndexes.ContainsKey(cellInstanceConnectionName))
|
if (componentModelComponentsIndexes is null || !componentModelComponentsIndexes.TryGetValue(cellInstanceConnectionName, out result))
|
||||||
throw new Exception();
|
throw new Exception();
|
||||||
result = componentModelComponentsIndexes[cellInstanceConnectionName];
|
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
@ -596,7 +593,7 @@ public class AdaptationTesting : ISMTP
|
|||||||
throw new Exception();
|
throw new Exception();
|
||||||
_ = stringBuilder.Clear();
|
_ = stringBuilder.Clear();
|
||||||
}
|
}
|
||||||
if (componentsCellComponentCellComponentEquipmentDictionaryNames.Any() && string.IsNullOrEmpty(cellInstanceVersion.FrozenBy))
|
if (componentsCellComponentCellComponentEquipmentDictionaryNames.Count != 0 && string.IsNullOrEmpty(cellInstanceVersion.FrozenBy))
|
||||||
{
|
{
|
||||||
if (!cellInstanceVersion.CellCommunicatingRule.EndsWith(".Communicating") || !(from l in componentsCellComponentCellComponentEquipmentNames where l == cellInstanceVersion.CellCommunicatingRule.Split('.')[0] select true).Any())
|
if (!cellInstanceVersion.CellCommunicatingRule.EndsWith(".Communicating") || !(from l in componentsCellComponentCellComponentEquipmentNames where l == cellInstanceVersion.CellCommunicatingRule.Split('.')[0] select true).Any())
|
||||||
throw new Exception($"{methodName} - CellCommunicatingRule not correct in Mango!");
|
throw new Exception($"{methodName} - CellCommunicatingRule not correct in Mango!");
|
||||||
@ -648,9 +645,7 @@ public class AdaptationTesting : ISMTP
|
|||||||
Tuple<string, FileConnectorConfiguration> result;
|
Tuple<string, FileConnectorConfiguration> result;
|
||||||
FileConnectorConfiguration fileConnectorConfiguration;
|
FileConnectorConfiguration fileConnectorConfiguration;
|
||||||
string cellInstanceServiceV2With = string.Concat(cellInstanceVersionTuple.Item1, '/', cellInstanceConnectionName);
|
string cellInstanceServiceV2With = string.Concat(cellInstanceVersionTuple.Item1, '/', cellInstanceConnectionName);
|
||||||
if (_FileConnectorConfigurations.ContainsKey(cellInstanceServiceV2With))
|
if (!_FileConnectorConfigurations.TryGetValue(cellInstanceServiceV2With, out fileConnectorConfiguration))
|
||||||
fileConnectorConfiguration = _FileConnectorConfigurations[cellInstanceServiceV2With];
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
Dictionary<string, int[]> componentModelComponentsIndexes = GetComponentModelComponentsIndexes(cellInstanceVersionTuple.Item2, cellInstanceConnectionName);
|
Dictionary<string, int[]> componentModelComponentsIndexes = GetComponentModelComponentsIndexes(cellInstanceVersionTuple.Item2, cellInstanceConnectionName);
|
||||||
int[] cellInstanceConnectionNameIndexes = GetCellInstanceConnectionNameIndexes(cellInstanceConnectionName, componentModelComponentsIndexes);
|
int[] cellInstanceConnectionNameIndexes = GetCellInstanceConnectionNameIndexes(cellInstanceConnectionName, componentModelComponentsIndexes);
|
||||||
@ -696,9 +691,7 @@ public class AdaptationTesting : ISMTP
|
|||||||
int[] cellInstanceConnectionNameIndexes = GetCellInstanceConnectionNameIndexes(cellInstanceConnectionName, componentModelComponentsIndexes);
|
int[] cellInstanceConnectionNameIndexes = GetCellInstanceConnectionNameIndexes(cellInstanceConnectionName, componentModelComponentsIndexes);
|
||||||
ComponentsCellComponentCellComponent componentsCellComponentCellComponent = cellInstanceVersion.ComponentModel.Components[cellInstanceConnectionNameIndexes[0]].Children[cellInstanceConnectionNameIndexes[1]];
|
ComponentsCellComponentCellComponent componentsCellComponentCellComponent = cellInstanceVersion.ComponentModel.Components[cellInstanceConnectionNameIndexes[0]].Children[cellInstanceConnectionNameIndexes[1]];
|
||||||
string equipmentTypeServiceV2 = string.Concat("http://", _HostNameAndPort, "/EquipmentTypeServiceV2/", componentsCellComponentCellComponent.Equipment.EquipmentType.Name, "/", componentsCellComponentCellComponent.Equipment.EquipmentType.Version, "/configuration");
|
string equipmentTypeServiceV2 = string.Concat("http://", _HostNameAndPort, "/EquipmentTypeServiceV2/", componentsCellComponentCellComponent.Equipment.EquipmentType.Name, "/", componentsCellComponentCellComponent.Equipment.EquipmentType.Version, "/configuration");
|
||||||
if (_EquipmentTypeVersions.ContainsKey(equipmentTypeServiceV2))
|
if (!_EquipmentTypeVersions.TryGetValue(equipmentTypeServiceV2, out equipmentTypeVersion))
|
||||||
equipmentTypeVersion = _EquipmentTypeVersions[equipmentTypeServiceV2];
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
equipmentTypeVersion = GetEquipmentTypeVersion(equipmentTypeServiceV2);
|
equipmentTypeVersion = GetEquipmentTypeVersion(equipmentTypeServiceV2);
|
||||||
_EquipmentTypeVersions.Add(equipmentTypeServiceV2, equipmentTypeVersion);
|
_EquipmentTypeVersions.Add(equipmentTypeServiceV2, equipmentTypeVersion);
|
||||||
@ -763,7 +756,7 @@ public class AdaptationTesting : ISMTP
|
|||||||
string[] results;
|
string[] results;
|
||||||
string equipmentDictionaryName;
|
string equipmentDictionaryName;
|
||||||
string equipmentDictionaryVersionName;
|
string equipmentDictionaryVersionName;
|
||||||
if (_SkipEquipmentDictionary || equipmentTypeVersion?.EventActionSequences is null || !equipmentTypeVersion.EventActionSequences.Any() || !(from l in equipmentTypeVersion.EventActionSequences where l.HandledEvent.StartsWith("Equipment.FileRead") select 1).Any())
|
if (_SkipEquipmentDictionary || equipmentTypeVersion?.EventActionSequences is null || equipmentTypeVersion.EventActionSequences.Length == 0 || !(from l in equipmentTypeVersion.EventActionSequences where l.HandledEvent.StartsWith("Equipment.FileRead") select 1).Any())
|
||||||
{
|
{
|
||||||
equipmentDictionaryName = string.Empty;
|
equipmentDictionaryName = string.Empty;
|
||||||
equipmentDictionaryVersionName = string.Empty;
|
equipmentDictionaryVersionName = string.Empty;
|
||||||
@ -834,9 +827,7 @@ public class AdaptationTesting : ISMTP
|
|||||||
equipmentDictionaryVersion = null;
|
equipmentDictionaryVersion = null;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (_EquipmentDictionaryVersions.ContainsKey(equipmentDictionaryServiceV2))
|
if (!_EquipmentDictionaryVersions.TryGetValue(equipmentDictionaryServiceV2, out equipmentDictionaryVersion))
|
||||||
equipmentDictionaryVersion = _EquipmentDictionaryVersions[equipmentDictionaryServiceV2];
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
equipmentDictionaryVersion = GetEquipmentDictionaryVersion(equipmentDictionaryServiceV2);
|
equipmentDictionaryVersion = GetEquipmentDictionaryVersion(equipmentDictionaryServiceV2);
|
||||||
_EquipmentDictionaryVersions.Add(equipmentDictionaryServiceV2, equipmentDictionaryVersion);
|
_EquipmentDictionaryVersions.Add(equipmentDictionaryServiceV2, equipmentDictionaryVersion);
|
||||||
@ -850,14 +841,15 @@ public class AdaptationTesting : ISMTP
|
|||||||
{
|
{
|
||||||
Tuple<string, List<Tuple<string, string>>> result;
|
Tuple<string, List<Tuple<string, string>>> result;
|
||||||
List<Tuple<string, string>> results;
|
List<Tuple<string, string>> results;
|
||||||
|
List<Tuple<string, string>> collection;
|
||||||
if (_SkipEquipmentDictionary)
|
if (_SkipEquipmentDictionary)
|
||||||
results = new List<Tuple<string, string>>();
|
results = new List<Tuple<string, string>>();
|
||||||
else if (string.IsNullOrEmpty(equipmentDictionaryVersionTuple.Item1))
|
else if (string.IsNullOrEmpty(equipmentDictionaryVersionTuple.Item1))
|
||||||
throw new Exception();
|
throw new Exception();
|
||||||
else if (equipmentDictionaryVersionTuple?.Item4?.Events?.Event is null)
|
else if (equipmentDictionaryVersionTuple?.Item4?.Events?.Event is null)
|
||||||
results = new List<Tuple<string, string>>();
|
results = new List<Tuple<string, string>>();
|
||||||
else if (_EquipmentDictionaryEventDescriptions.ContainsKey(equipmentDictionaryVersionTuple.Item1))
|
else if (_EquipmentDictionaryEventDescriptions.TryGetValue(equipmentDictionaryVersionTuple.Item1, out collection))
|
||||||
results = _EquipmentDictionaryEventDescriptions[equipmentDictionaryVersionTuple.Item1];
|
results = collection;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
results = new List<Tuple<string, string>>();
|
results = new List<Tuple<string, string>>();
|
||||||
@ -963,25 +955,33 @@ public class AdaptationTesting : ISMTP
|
|||||||
}
|
}
|
||||||
if (_TestContext.FullyQualifiedTestClassName.Contains(nameof(Extract)))
|
if (_TestContext.FullyQualifiedTestClassName.Contains(nameof(Extract)))
|
||||||
{
|
{
|
||||||
if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation))
|
try
|
||||||
{
|
{
|
||||||
if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation))
|
if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation))
|
||||||
_ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation);
|
{
|
||||||
|
if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation))
|
||||||
|
_ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.ErrorTargetFileLocation);
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.SourceFileLocation))
|
||||||
|
{
|
||||||
|
if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.SourceFileLocation))
|
||||||
|
_ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.SourceFileLocation);
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.TargetFileLocation))
|
||||||
|
{
|
||||||
|
if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.TargetFileLocation))
|
||||||
|
_ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.TargetFileLocation);
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder))
|
||||||
|
{
|
||||||
|
if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder))
|
||||||
|
_ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.SourceFileLocation))
|
catch (IOException ex)
|
||||||
{
|
{
|
||||||
if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.SourceFileLocation))
|
if (!ex.Message.Contains("SMB1"))
|
||||||
_ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.SourceFileLocation);
|
throw;
|
||||||
}
|
|
||||||
if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.TargetFileLocation))
|
|
||||||
{
|
|
||||||
if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.TargetFileLocation))
|
|
||||||
_ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.TargetFileLocation);
|
|
||||||
}
|
|
||||||
if (!string.IsNullOrEmpty(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder))
|
|
||||||
{
|
|
||||||
if (!Directory.Exists(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder))
|
|
||||||
_ = Directory.CreateDirectory(fileConnectorConfigurationTuple.Item2.AlternateTargetFolder);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
result = FileHandlers.CellInstanceConnectionName.Get(this, fileParameter, mbn.CellInstanceName, mbn.CellInstanceConnectionName, fileConnectorConfigurationTuple.Item2, equipmentTypeVersionTuple.Item2, parameterizedModelObjectDefinitionTypeTuple.Item2, modelObjectParametersTuple.Item2, equipmentDictionaryVersionTuple.Item2, dummyRuns, staticRuns, useCyclicalForDescription, connectionCount: cellInstanceVersionTuple.Item2.EquipmentConnections.Length);
|
result = FileHandlers.CellInstanceConnectionName.Get(this, fileParameter, mbn.CellInstanceName, mbn.CellInstanceConnectionName, fileConnectorConfigurationTuple.Item2, equipmentTypeVersionTuple.Item2, parameterizedModelObjectDefinitionTypeTuple.Item2, modelObjectParametersTuple.Item2, equipmentDictionaryVersionTuple.Item2, dummyRuns, staticRuns, useCyclicalForDescription, connectionCount: cellInstanceVersionTuple.Item2.EquipmentConnections.Length);
|
||||||
@ -1001,7 +1001,7 @@ public class AdaptationTesting : ISMTP
|
|||||||
string sourceFileLocation = string.Empty;
|
string sourceFileLocation = string.Empty;
|
||||||
MethodBaseName mbn = GetMethodBaseName(methodBase);
|
MethodBaseName mbn = GetMethodBaseName(methodBase);
|
||||||
string[] textFiles = GetTextFiles(mbn);
|
string[] textFiles = GetTextFiles(mbn);
|
||||||
if (!textFiles.Any())
|
if (textFiles.Length == 0)
|
||||||
{
|
{
|
||||||
if (_HasWaitForProperty)
|
if (_HasWaitForProperty)
|
||||||
throw new Exception("Set text file!");
|
throw new Exception("Set text file!");
|
||||||
@ -1065,7 +1065,7 @@ public class AdaptationTesting : ISMTP
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
string[] files = Directory.GetFiles(ipdsfDirectory, searchPattern, SearchOption.TopDirectoryOnly);
|
string[] files = Directory.GetFiles(ipdsfDirectory, searchPattern, SearchOption.TopDirectoryOnly);
|
||||||
if (files.Any())
|
if (files.Length != 0)
|
||||||
ipdsfFile = files[0];
|
ipdsfFile = files[0];
|
||||||
else
|
else
|
||||||
ipdsfFile = searchPattern;
|
ipdsfFile = searchPattern;
|
||||||
@ -1109,9 +1109,9 @@ public class AdaptationTesting : ISMTP
|
|||||||
{
|
{
|
||||||
string[] pdsfFiles;
|
string[] pdsfFiles;
|
||||||
pdsfFiles = Directory.GetFiles(searchDirectory, searchPattern, SearchOption.TopDirectoryOnly);
|
pdsfFiles = Directory.GetFiles(searchDirectory, searchPattern, SearchOption.TopDirectoryOnly);
|
||||||
if (!pdsfFiles.Any())
|
if (pdsfFiles.Length == 0)
|
||||||
_ = Process.Start("explorer.exe", searchDirectory);
|
_ = Process.Start("explorer.exe", searchDirectory);
|
||||||
Assert.IsTrue(pdsfFiles.Any(), "GetFiles check");
|
Assert.IsTrue(pdsfFiles.Length != 0, "GetFiles check");
|
||||||
results = GetLogisticsColumnsAndBody(pdsfFiles[0]);
|
results = GetLogisticsColumnsAndBody(pdsfFiles[0]);
|
||||||
}
|
}
|
||||||
Assert.IsFalse(string.IsNullOrEmpty(results.Item1));
|
Assert.IsFalse(string.IsNullOrEmpty(results.Item1));
|
||||||
|
@ -2,7 +2,6 @@ using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|||||||
using System;
|
using System;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
@ -75,7 +74,7 @@ public class UnitTesting
|
|||||||
if (string.IsNullOrEmpty(result))
|
if (string.IsNullOrEmpty(result))
|
||||||
break;
|
break;
|
||||||
checkFiles = Directory.GetFiles(result, "*.Tests.*proj", SearchOption.TopDirectoryOnly);
|
checkFiles = Directory.GetFiles(result, "*.Tests.*proj", SearchOption.TopDirectoryOnly);
|
||||||
if (checkFiles.Any())
|
if (checkFiles.Length != 0)
|
||||||
break;
|
break;
|
||||||
result = Path.GetDirectoryName(result);
|
result = Path.GetDirectoryName(result);
|
||||||
}
|
}
|
||||||
|
@ -2,8 +2,10 @@ using Adaptation._Tests.Shared;
|
|||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||||
using System;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
using System.Linq;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
|
||||||
@ -73,7 +75,10 @@ public class BACKLOG : LoggingUnitTesting, IDisposable
|
|||||||
cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{development}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
|
cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{development}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
|
||||||
_ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
|
_ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
|
||||||
}
|
}
|
||||||
File.WriteAllText($"D:/Tmp/{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv", results.ToString());
|
string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber";
|
||||||
|
if (!Directory.Exists(sourceDirectory))
|
||||||
|
_ = Directory.CreateDirectory(sourceDirectory);
|
||||||
|
File.WriteAllText(Path.Combine(sourceDirectory, $"{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv"), results.ToString());
|
||||||
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
|
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
|
||||||
NonThrowTryCatch();
|
NonThrowTryCatch();
|
||||||
}
|
}
|
||||||
@ -86,8 +91,8 @@ public class BACKLOG : LoggingUnitTesting, IDisposable
|
|||||||
StringBuilder results = new();
|
StringBuilder results = new();
|
||||||
(string cellInstanceName, string cellInstanceVersionName)[] collection = new (string, string)[]
|
(string cellInstanceName, string cellInstanceVersionName)[] collection = new (string, string)[]
|
||||||
{
|
{
|
||||||
new("BACKLOG", "v2.49.2"),
|
new("BACKLOG", "v2.52.0"),
|
||||||
new("BACKLOG-EQPT", "v2.49.2"),
|
new("BACKLOG-EQPT", "v2.52.0"),
|
||||||
};
|
};
|
||||||
string staging = "http://mestsa07ec.infineon.com:9003/CellInstanceServiceV2";
|
string staging = "http://mestsa07ec.infineon.com:9003/CellInstanceServiceV2";
|
||||||
Shared.PasteSpecialXml.EAF.XML.API.CellInstance.CellInstanceVersion cellInstanceVersion;
|
Shared.PasteSpecialXml.EAF.XML.API.CellInstance.CellInstanceVersion cellInstanceVersion;
|
||||||
@ -97,7 +102,30 @@ public class BACKLOG : LoggingUnitTesting, IDisposable
|
|||||||
cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{staging}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
|
cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{staging}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
|
||||||
_ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
|
_ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
|
||||||
}
|
}
|
||||||
File.WriteAllText($"D:/Tmp/{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv", results.ToString());
|
string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber";
|
||||||
|
if (!Directory.Exists(sourceDirectory))
|
||||||
|
_ = Directory.CreateDirectory(sourceDirectory);
|
||||||
|
File.WriteAllText(Path.Combine(sourceDirectory, $"{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv"), results.ToString());
|
||||||
|
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
|
||||||
|
NonThrowTryCatch();
|
||||||
|
}
|
||||||
|
|
||||||
|
[TestMethod]
|
||||||
|
public void CellInstanceVersionEdaConnectionPortNumber()
|
||||||
|
{
|
||||||
|
MethodBase methodBase = new StackFrame().GetMethod();
|
||||||
|
string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber";
|
||||||
|
if (Directory.Exists(sourceDirectory))
|
||||||
|
{
|
||||||
|
string destinationDirectory = Path.Combine(sourceDirectory, "All");
|
||||||
|
if (!Directory.Exists(destinationDirectory))
|
||||||
|
_ = Directory.CreateDirectory(destinationDirectory);
|
||||||
|
List<string> lines = new();
|
||||||
|
string[] files = Directory.GetFiles(sourceDirectory, "*.tsv", SearchOption.TopDirectoryOnly);
|
||||||
|
foreach (string file in files)
|
||||||
|
lines.AddRange(File.ReadAllLines(file));
|
||||||
|
File.WriteAllLines(Path.Combine(destinationDirectory, $"{DateTime.Now.Ticks}.tsv"), lines.Distinct().OrderBy(l => l));
|
||||||
|
}
|
||||||
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
|
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
|
||||||
NonThrowTryCatch();
|
NonThrowTryCatch();
|
||||||
}
|
}
|
||||||
|
@ -2,8 +2,10 @@ using Adaptation._Tests.Shared;
|
|||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||||
using System;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
using System.Linq;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
|
||||||
@ -24,6 +26,13 @@ public class MESAFIBACKLOG : LoggingUnitTesting, IDisposable
|
|||||||
throw new Exception();
|
throw new Exception();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static void NonThrowTryCatch()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{ throw new Exception(); }
|
||||||
|
catch (Exception) { }
|
||||||
|
}
|
||||||
|
|
||||||
public MESAFIBACKLOG(TestContext testContext) : base(testContext, new StackFrame().GetMethod().DeclaringType)
|
public MESAFIBACKLOG(TestContext testContext) : base(testContext, new StackFrame().GetMethod().DeclaringType)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@ -55,7 +64,7 @@ public class MESAFIBACKLOG : LoggingUnitTesting, IDisposable
|
|||||||
StringBuilder results = new();
|
StringBuilder results = new();
|
||||||
(string cellInstanceName, string cellInstanceVersionName)[] collection = new (string, string)[]
|
(string cellInstanceName, string cellInstanceVersionName)[] collection = new (string, string)[]
|
||||||
{
|
{
|
||||||
new("MESAFIBACKLOG", "v2.49.2"),
|
new("MESAFIBACKLOG", "v2.52.0"),
|
||||||
};
|
};
|
||||||
string development = "http://eaf-dev.mes.infineon.com:9003/CellInstanceServiceV2";
|
string development = "http://eaf-dev.mes.infineon.com:9003/CellInstanceServiceV2";
|
||||||
Shared.PasteSpecialXml.EAF.XML.API.CellInstance.CellInstanceVersion cellInstanceVersion;
|
Shared.PasteSpecialXml.EAF.XML.API.CellInstance.CellInstanceVersion cellInstanceVersion;
|
||||||
@ -65,7 +74,10 @@ public class MESAFIBACKLOG : LoggingUnitTesting, IDisposable
|
|||||||
cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{development}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
|
cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{development}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
|
||||||
_ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
|
_ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
|
||||||
}
|
}
|
||||||
File.WriteAllText($"D:/Tmp/{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv", results.ToString());
|
string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber";
|
||||||
|
if (!Directory.Exists(sourceDirectory))
|
||||||
|
_ = Directory.CreateDirectory(sourceDirectory);
|
||||||
|
File.WriteAllText(Path.Combine(sourceDirectory, $"{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv"), results.ToString());
|
||||||
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
|
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -87,8 +99,31 @@ public class MESAFIBACKLOG : LoggingUnitTesting, IDisposable
|
|||||||
cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{staging}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
|
cellInstanceVersion = AdaptationTesting.GetCellInstanceVersion($"{staging}/{cellInstanceName}/{cellInstanceVersionName}/configuration");
|
||||||
_ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
|
_ = results.AppendLine($"{cellInstanceName}\t{cellInstanceVersionName}\t{cellInstanceVersion.EdaConnection.PortNumber}");
|
||||||
}
|
}
|
||||||
File.WriteAllText($"D:/Tmp/{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv", results.ToString());
|
string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber";
|
||||||
|
if (!Directory.Exists(sourceDirectory))
|
||||||
|
_ = Directory.CreateDirectory(sourceDirectory);
|
||||||
|
File.WriteAllText(Path.Combine(sourceDirectory, $"{methodBase.Module.Name}-{methodBase.ReflectedType.Name}-{methodBase.Name}.tsv"), results.ToString());
|
||||||
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
|
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[TestMethod]
|
||||||
|
public void CellInstanceVersionEdaConnectionPortNumber()
|
||||||
|
{
|
||||||
|
MethodBase methodBase = new StackFrame().GetMethod();
|
||||||
|
string sourceDirectory = "D:/Tmp/cellInstanceVersion.EdaConnection.PortNumber";
|
||||||
|
if (Directory.Exists(sourceDirectory))
|
||||||
|
{
|
||||||
|
string destinationDirectory = Path.Combine(sourceDirectory, "All");
|
||||||
|
if (!Directory.Exists(destinationDirectory))
|
||||||
|
_ = Directory.CreateDirectory(destinationDirectory);
|
||||||
|
List<string> lines = new();
|
||||||
|
string[] files = Directory.GetFiles(sourceDirectory, "*.tsv", SearchOption.TopDirectoryOnly);
|
||||||
|
foreach (string file in files)
|
||||||
|
lines.AddRange(File.ReadAllLines(file));
|
||||||
|
File.WriteAllLines(Path.Combine(destinationDirectory, $"{DateTime.Now.Ticks}.tsv"), lines.Distinct().OrderBy(l => l));
|
||||||
|
}
|
||||||
|
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
|
||||||
|
NonThrowTryCatch();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -188,9 +188,6 @@
|
|||||||
<PackageReference Include="Microsoft.TeamFoundationServer.Client">
|
<PackageReference Include="Microsoft.TeamFoundationServer.Client">
|
||||||
<Version>16.205.1</Version>
|
<Version>16.205.1</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Microsoft.AspNet.WebApi.SelfHost">
|
|
||||||
<Version>5.2.7</Version>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="System.Text.Json">
|
<PackageReference Include="System.Text.Json">
|
||||||
<Version>6.0.3</Version>
|
<Version>6.0.3</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user