244 lines
12 KiB
C#
244 lines
12 KiB
C#
using Adaptation._Tests.Shared;
|
|
using Adaptation.FileHandlers.QS408M;
|
|
using Microsoft.Extensions.Logging;
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Diagnostics;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Reflection;
|
|
using System.Text;
|
|
|
|
namespace Adaptation._Tests.Static;
|
|
|
|
[TestClass]
|
|
public class QS408M : LoggingUnitTesting, IDisposable
|
|
{
|
|
|
|
#pragma warning disable CA2254
|
|
#pragma warning disable IDE0060
|
|
|
|
internal static QS408M LoggingUnitTesting { get; private set; }
|
|
|
|
public QS408M() : base(testContext: null, declaringType: null)
|
|
{
|
|
if (LoggingUnitTesting is null)
|
|
throw new Exception();
|
|
}
|
|
|
|
public QS408M(TestContext testContext) : base(testContext, new StackFrame().GetMethod().DeclaringType)
|
|
{
|
|
}
|
|
|
|
[ClassInitialize]
|
|
public static void ClassInitialize(TestContext testContext) => LoggingUnitTesting ??= new QS408M(testContext);
|
|
|
|
[ClassCleanup()]
|
|
public static void ClassCleanup()
|
|
{
|
|
LoggingUnitTesting?.Logger?.LogInformation("Cleanup");
|
|
LoggingUnitTesting?.Dispose();
|
|
}
|
|
|
|
private static void NonThrowTryCatch()
|
|
{
|
|
try
|
|
{ throw new Exception(); }
|
|
catch (Exception) { }
|
|
}
|
|
|
|
[TestMethod]
|
|
public void TestDateTime()
|
|
{
|
|
DateTime dateTime = DateTime.Now;
|
|
Assert.AreEqual(dateTime.ToString(), dateTime.ToString("M/d/yyyy h:mm:ss tt"));
|
|
}
|
|
|
|
[TestMethod]
|
|
public void TestDescriptor()
|
|
{
|
|
Descriptor descriptor;
|
|
MethodBase methodBase = new StackFrame().GetMethod();
|
|
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration"));
|
|
descriptor = ProcessData.GetDescriptor(string.Empty);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("12-123456-1234");
|
|
Assert.AreEqual("12", descriptor.Reactor);
|
|
Assert.AreEqual("123456", descriptor.RDS);
|
|
Assert.AreEqual("1234", descriptor.PSN);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("123456");
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor));
|
|
Assert.AreEqual("123456", descriptor.RDS);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("1T123456");
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor));
|
|
Assert.AreEqual("123456", descriptor.RDS);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("MP");
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.AreEqual("MP", descriptor.Employee);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
descriptor = ProcessData.GetDescriptor("12-123456-1234.2-1");
|
|
Assert.AreEqual("12", descriptor.Reactor);
|
|
Assert.AreEqual("123456", descriptor.RDS);
|
|
Assert.AreEqual("1234", descriptor.PSN);
|
|
Assert.AreEqual("2", descriptor.Layer);
|
|
Assert.AreEqual("1", descriptor.Zone);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("12-123456-1234.02-1");
|
|
Assert.AreEqual("12", descriptor.Reactor);
|
|
Assert.AreEqual("123456", descriptor.RDS);
|
|
Assert.AreEqual("1234", descriptor.PSN);
|
|
Assert.AreEqual("2", descriptor.Layer);
|
|
Assert.AreEqual("1", descriptor.Zone);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("20");
|
|
Assert.AreEqual("20", descriptor.Reactor);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("20.2");
|
|
Assert.AreEqual("20", descriptor.Reactor);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.AreEqual("2", descriptor.Layer);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("20.2.1");
|
|
Assert.AreEqual("2", descriptor.Layer);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS));
|
|
Assert.AreEqual("20", descriptor.Reactor);
|
|
Assert.AreEqual("1", descriptor.Zone);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("20.1.1");
|
|
Assert.AreEqual("1", descriptor.Layer);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS));
|
|
Assert.AreEqual("20", descriptor.Reactor);
|
|
Assert.AreEqual("1", descriptor.Zone);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("P2-LOW-RR");
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.AreEqual("RR", descriptor.PSN);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS));
|
|
Assert.AreEqual("P2", descriptor.Reactor);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("i171308.1.51");
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.AreEqual("i171308.1.51", descriptor.RDS);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("o171308.1.51");
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.AreEqual("o171308.1.51", descriptor.RDS);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("O171308.1.51");
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.AreEqual("O171308.1.51", descriptor.RDS);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("171308.1.51");
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.AreEqual("171308.1.51", descriptor.RDS);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("75-QP1414-SPLIT4");
|
|
// Assert.IsFalse(string.IsNullOrEmpty(descriptor.Lot));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.AreEqual("SPLIT4", descriptor.PSN);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.RDS));
|
|
Assert.AreEqual("75", descriptor.Reactor);
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
descriptor = ProcessData.GetDescriptor("B48");
|
|
// Assert.IsTrue(descriptor.Lot == "B48");
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Layer));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.PSN));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Reactor));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Zone));
|
|
Assert.IsTrue(string.IsNullOrEmpty(descriptor.Employee));
|
|
LoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit"));
|
|
NonThrowTryCatch();
|
|
}
|
|
|
|
#if DEBUG
|
|
[Ignore]
|
|
#endif
|
|
[TestMethod]
|
|
public void Production()
|
|
{
|
|
MethodBase methodBase = new StackFrame().GetMethod();
|
|
StringBuilder results = new();
|
|
(string cellInstanceName, string cellInstanceVersionName)[] collection = new (string, string)[]
|
|
{
|
|
new("BIORAD2", "v2.60.0"),
|
|
new("BIORAD3", "v2.60.0"),
|
|
};
|
|
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($"{production}/{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"));
|
|
}
|
|
|
|
[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();
|
|
}
|
|
|
|
} |