From b943a882cbf1b689c8c7bb5562658b064d44b32e Mon Sep 17 00:00:00 2001 From: Mike Phares Date: Sat, 7 Oct 2023 10:56:15 -0700 Subject: [PATCH] Infineon.EAF.Runtime 2.52.0 Infineon.EAF.Runtime 2.49.3 IDescription.GetDescriptions with body --- .gitignore | 12 +- .vscode/settings.json | 3 + Adaptation/.kanbn/board.css | 21 -- Adaptation/.kanbn/index.md | 7 +- Adaptation/.vscode/settings.json | 3 + Adaptation/.vscode/tasks.json | 66 ++++- .../ConvertExcelToJson/FIBacklogMesa.cs | 10 +- .../ConvertExcelToJson/FileRead.cs | 1 - .../OpenInsightMetrologyViewer/FileRead.cs | 4 +- .../FileHandlers/json/BacklogController.cs | 29 --- Adaptation/FileHandlers/json/FileRead.cs | 23 +- Adaptation/FileHandlers/json/Helper.cs | 21 -- Adaptation/FileHandlers/json/ProcessData.cs | 238 ++++++++++++++---- .../FileHandlers/json/StaticSite/index.html | 16 +- .../FileHandlers/json/StaticSite/js/site.js | 7 +- Adaptation/MESAFIBACKLOG-Development.yml | 2 +- Adaptation/MESAFIBACKLOG.Tests.csproj | 3 +- Adaptation/MESAFIBACKLOG.yml | 2 +- Adaptation/Shared/FileRead.cs | 11 +- .../Development/v2.49.2/BACKLOG-EQPT.cs | 2 - .../Development/v2.49.2/BACKLOG.cs | 2 - .../Development/v2.49.2/MESAFIBACKLOG.cs | 2 - .../Development/v2.52.0/BACKLOG-EQPT.cs | 61 +++++ .../Development/v2.52.0/BACKLOG.cs | 61 +++++ .../Development/v2.52.0/MESAFIBACKLOG.cs | 61 +++++ .../Development/v2.49.2/BACKLOG-EQPT.cs | 4 - .../Extract/Development/v2.49.2/BACKLOG.cs | 4 - .../Development/v2.49.2/MESAFIBACKLOG.cs | 4 - .../Development/v2.52.0/BACKLOG-EQPT.cs | 50 ++++ .../Extract/Development/v2.52.0/BACKLOG.cs | 58 +++++ .../Development/v2.52.0/MESAFIBACKLOG.cs | 94 +++++++ Adaptation/_Tests/Shared/AdaptationTesting.cs | 2 +- Adaptation/_Tests/Static/BACKLOG.cs | 2 +- Adaptation/_Tests/Static/MESAFIBACKLOG.cs | 2 +- Adaptation/package.json | 10 +- MESAFIBACKLOG.csproj | 7 +- Properties/AssemblyInfo.cs | 4 +- 37 files changed, 710 insertions(+), 199 deletions(-) delete mode 100644 Adaptation/FileHandlers/json/BacklogController.cs delete mode 100644 Adaptation/FileHandlers/json/Helper.cs create mode 100644 Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/BACKLOG-EQPT.cs create mode 100644 Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/BACKLOG.cs create mode 100644 Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/MESAFIBACKLOG.cs create mode 100644 Adaptation/_Tests/Extract/Development/v2.52.0/BACKLOG-EQPT.cs create mode 100644 Adaptation/_Tests/Extract/Development/v2.52.0/BACKLOG.cs create mode 100644 Adaptation/_Tests/Extract/Development/v2.52.0/MESAFIBACKLOG.cs diff --git a/.gitignore b/.gitignore index c19d760..e85055c 100644 --- a/.gitignore +++ b/.gitignore @@ -331,11 +331,11 @@ ASALocalRun/ ## ## Visual Studio Code ## -*/!.vscode/extensions.json -*/!.vscode/launch.json -*/!.vscode/settings.json -*/!.vscode/tasks.json -*/.vscode/* -*/.vscode/ReportGenerator/* +**/.vscode/* +!**/.vscode/extensions.json +!**/.vscode/format-report.json +!**/.vscode/launch.json +!**/.vscode/settings.json +!**/.vscode/tasks.json *.lnk diff --git a/.vscode/settings.json b/.vscode/settings.json index 1708c7e..d907fc2 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,4 +1,7 @@ { + "[markdown]": { + "editor.wordWrap": "off" + }, "cSpell.words": [ "Epuipment", "Idrv", diff --git a/Adaptation/.kanbn/board.css b/Adaptation/.kanbn/board.css index 427c0bd..8bc14b6 100644 --- a/Adaptation/.kanbn/board.css +++ b/Adaptation/.kanbn/board.css @@ -1,24 +1,3 @@ -.kanbn-column-wip .kanbn-column-task-list { - border-color: #6929c4; -} -.kanbn-column-next .kanbn-column-task-list { - border-color: #1192e8; -} -.kanbn-column-wait .kanbn-column-task-list { - border-color: #005d5d; -} -.kanbn-column-later .kanbn-column-task-list { - border-color: #9f1853; -} -.kanbn-column-maybe .kanbn-column-task-list { - border-color: #fa4d56; -} -.kanbn-column-friday .kanbn-column-task-list { - border-color: #570408; -} -.kanbn-column-done .kanbn-column-task-list { - border-color: #198038; -} .kanbn-task-data-workload { display: none; } diff --git a/Adaptation/.kanbn/index.md b/Adaptation/.kanbn/index.md index e573aa2..08fa124 100644 --- a/Adaptation/.kanbn/index.md +++ b/Adaptation/.kanbn/index.md @@ -1,11 +1,16 @@ --- +type: "kanbn" +created: 2023-07-07T15:37:56.040Z +updated: 2023-07-18T19:52:59.668Z startedColumns: - 'In Progress' completedColumns: - Done +dateFormat: mm/dd +taskTemplate: '^+^_${overdue ? ''^R'' : ''''}${name}^: ${relations ? (''\n^-^/^g'' + relations.reduce((accumulator, currentValue) => accumulator.task + currentValue.task + '' '', '''')) : ''''}' --- -# Mesa FI Backlog +# MESAFIBACKLOG ## Backlog diff --git a/Adaptation/.vscode/settings.json b/Adaptation/.vscode/settings.json index cf920fe..1d4e80a 100644 --- a/Adaptation/.vscode/settings.json +++ b/Adaptation/.vscode/settings.json @@ -1,4 +1,7 @@ { + "[markdown]": { + "editor.wordWrap": "off" + }, "cSpell.words": [ "datauniqueid", "Epuipment", diff --git a/Adaptation/.vscode/tasks.json b/Adaptation/.vscode/tasks.json index 6219ffa..3fe87f9 100644 --- a/Adaptation/.vscode/tasks.json +++ b/Adaptation/.vscode/tasks.json @@ -2,41 +2,81 @@ "version": "2.0.0", "tasks": [ { - "label": "build", + "label": "Build", "command": "dotnet", "type": "process", "args": [ "build", - "${workspaceFolder}/MESAFIBACKLOG.Tests.csproj", "/property:GenerateFullPaths=true", "/consoleloggerparameters:NoSummary" ], "problemMatcher": "$msCompile" }, { - "label": "publish", + "label": "Format", "command": "dotnet", "type": "process", "args": [ - "publish", - "${workspaceFolder}/MESAFIBACKLOG.Tests.csproj", - "/property:GenerateFullPaths=true", - "/consoleloggerparameters:NoSummary" + "format", + "--report", + ".vscode", + "--verbosity", + "detailed", + "--severity", + "warn" ], "problemMatcher": "$msCompile" }, { - "label": "watch", + "label": "Nuget Clear", "command": "dotnet", "type": "process", "args": [ - "watch", - "run", - "${workspaceFolder}/MESAFIBACKLOG.Tests.csproj", - "/property:GenerateFullPaths=true", - "/consoleloggerparameters:NoSummary" + "nuget", + "locals", + "all", + "--clear" ], "problemMatcher": "$msCompile" + }, + { + "label": "MSBuild for EAF Deployment Packages", + "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe", + "type": "process", + "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", + "/detailedsummary", + "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;", + "/property:Configuration=Debug;TargetFrameworkVersion=v4.8", + "../MESAFIBACKLOG.csproj" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "File-Folder-Helper AOT s M .Kanbn Tasks", + "type": "shell", + "command": "& L:/DevOps/Mesa_FI/File-Folder-Helper/bin/Release/net7.0/win-x64/publish/File-Folder-Helper.exe s M T:/MESAFIBACKLOG/06_SourceCode/MESAFIBACKLOG/Adaptation -s T:/MESAFIBACKLOG/06_SourceCode/MESAFIBACKLOG/Adaptation/.kanbn/tasks", + "problemMatcher": [] + }, + { + "label": "Kanbn Console", + "type": "npm", + "script": "kanbn.board", + "problemMatcher": [] + }, + { + "label": "Kanbn Write Boad", + "type": "shell", + "command": "& kanbn board -j | L:/Git/kanbn2md/kanbn2md.exe >.kanbn/board.md", + "problemMatcher": [] + }, + { + "label": "Kanbn Write json", + "type": "npm", + "script": "kanbn.board.json", + "problemMatcher": [] } ] } \ No newline at end of file diff --git a/Adaptation/FileHandlers/ConvertExcelToJson/FIBacklogMesa.cs b/Adaptation/FileHandlers/ConvertExcelToJson/FIBacklogMesa.cs index 3b7128e..a32635a 100644 --- a/Adaptation/FileHandlers/ConvertExcelToJson/FIBacklogMesa.cs +++ b/Adaptation/FileHandlers/ConvertExcelToJson/FIBacklogMesa.cs @@ -11,6 +11,8 @@ public class FIBacklogMesa string assignedTo, string secondResource, string subject, + string epiLine, + string area, string systemS, string priority, string status, @@ -42,6 +44,8 @@ public class FIBacklogMesa AssignedTo = assignedTo; SecondResource = secondResource; Subject = subject; + EpiLine = epiLine; + Area = area; SystemS = systemS; Priority = priority; Status = status; @@ -81,6 +85,10 @@ public class FIBacklogMesa [JsonPropertyName("Subject - from Requestor")] public string Subject { get; set; } // { init; get; } + [JsonPropertyName("Epi Line")] + public string EpiLine { get; set; } // { init; get; } + public string Area { get; set; } // { init; get; } + [JsonPropertyName("System(s)")] public string SystemS { get; set; } // { init; get; } @@ -103,7 +111,7 @@ public class FIBacklogMesa [JsonPropertyName("UAT as of")] public string UATAsOf { get; set; } // { init; get; } - [JsonPropertyName("CMP_Date")] + [JsonPropertyName("CMP _Date")] public string CMPDate { get; set; } // { init; get; } public string F20 { get; set; } // { init; get; } public string F21 { get; set; } // { init; get; } diff --git a/Adaptation/FileHandlers/ConvertExcelToJson/FileRead.cs b/Adaptation/FileHandlers/ConvertExcelToJson/FileRead.cs index 146378c..c0f16c3 100644 --- a/Adaptation/FileHandlers/ConvertExcelToJson/FileRead.cs +++ b/Adaptation/FileHandlers/ConvertExcelToJson/FileRead.cs @@ -121,7 +121,6 @@ public class FileRead : Shared.FileRead, IFileRead } if (_IsEAFHosted) File.WriteAllText(fileName, json); - File.WriteAllText("D:/Web-sites/Backlog/json/data.json", json); results = iProcessData.GetResults(this, _Logistics, results.Item4); } return results; diff --git a/Adaptation/FileHandlers/OpenInsightMetrologyViewer/FileRead.cs b/Adaptation/FileHandlers/OpenInsightMetrologyViewer/FileRead.cs index 007208f..cc163ab 100644 --- a/Adaptation/FileHandlers/OpenInsightMetrologyViewer/FileRead.cs +++ b/Adaptation/FileHandlers/OpenInsightMetrologyViewer/FileRead.cs @@ -107,7 +107,7 @@ public class FileRead : Shared.FileRead, IFileRead } #pragma warning disable IDE0060 - private void SendData(DateTime dateTime, List descriptions) + private void SendData(string reportFullPath, DateTime dateTime, List descriptions) #pragma warning restore IDE0060 { if (_OpenInsightMetrologyViewerAPI is null) @@ -135,7 +135,7 @@ public class FileRead : Shared.FileRead, IFileRead List descriptions = json.ProcessData.GetDescriptions(jsonElements); Test[] tests = (from l in descriptions select (Test)l.Test).ToArray(); if (_IsEAFHosted && _FileConnectorConfiguration.FileScanningIntervalInSeconds > 0) - SendData(dateTime, descriptions); + SendData(reportFullPath, dateTime, descriptions); results = new Tuple>(pdsf.Item1, tests, jsonElements, new List()); return results; } diff --git a/Adaptation/FileHandlers/json/BacklogController.cs b/Adaptation/FileHandlers/json/BacklogController.cs deleted file mode 100644 index 4ad67b3..0000000 --- a/Adaptation/FileHandlers/json/BacklogController.cs +++ /dev/null @@ -1,29 +0,0 @@ -using Adaptation.FileHandlers.ConvertExcelToJson; -using System.Linq; -using System.Net; -using System.Web.Http; - -namespace Adaptation.FileHandlers.json; - -public class BacklogController : ApiController -{ - -#pragma warning disable CA1822 - public FIBacklogMesa[] GetAllRecords() -#pragma warning restore CA1822 - { - FIBacklogMesa[] results = Helper.GetFIBacklogMesaRecords(FileRead.Json); - return results; - } - -#pragma warning disable CA1822 - public FIBacklogMesa GetRecordById(string id) -#pragma warning restore CA1822 - { - FIBacklogMesa[] fIBacklogMesaRecords = Helper.GetFIBacklogMesaRecords(FileRead.Json); - FIBacklogMesa product = fIBacklogMesaRecords.FirstOrDefault(l => l.Req == id) ?? - throw new HttpResponseException(HttpStatusCode.NotFound); - return product; - } - -} \ No newline at end of file diff --git a/Adaptation/FileHandlers/json/FileRead.cs b/Adaptation/FileHandlers/json/FileRead.cs index f746d98..a9137b8 100644 --- a/Adaptation/FileHandlers/json/FileRead.cs +++ b/Adaptation/FileHandlers/json/FileRead.cs @@ -8,14 +8,13 @@ using Microsoft.VisualStudio.Services.Common; using Microsoft.VisualStudio.Services.WebApi; using System; using System.Collections.Generic; +using System.Collections.ObjectModel; using System.IO; using System.Linq; using System.Net.Http; using System.Net.Http.Headers; using System.Text; using System.Text.Json; -//using System.Web.Http; -//using System.Web.Http.SelfHost; namespace Adaptation.FileHandlers.json; @@ -29,7 +28,8 @@ public class FileRead : Shared.FileRead, IFileRead private readonly string _Project; private readonly string _BasePage; private readonly HttpClient _HttpClient; - //private readonly HttpSelfHostServer _HttpSelfHostServer; + private readonly ReadOnlyDictionary _RequestorNameToUser; + private readonly ReadOnlyDictionary _AssignedToNameToUser; private readonly WorkItemTrackingHttpClient _WorkItemTrackingHttpClient; public FileRead(ISMTP smtp, Dictionary fileParameter, string cellInstanceName, int? connectionCount, string cellInstanceConnectionName, FileConnectorConfiguration fileConnectorConfiguration, string equipmentTypeName, string parameterizedModelObjectDefinitionType, IList modelObjectParameters, string equipmentDictionaryName, Dictionary> dummyRuns, Dictionary> staticRuns, bool useCyclicalForDescription, bool isEAFHosted) : @@ -45,6 +45,8 @@ public class FileRead : Shared.FileRead, IFileRead throw new Exception(cellInstanceConnectionName); if (!_IsDuplicator) throw new Exception(cellInstanceConnectionName); + Dictionary requestorNameToUser = new(); + Dictionary assignedToNameToUser = new(); string cellInstanceNamed = string.Concat("CellInstance.", cellInstanceName); MediaTypeWithQualityHeaderValue mediaTypeWithQualityHeaderValue = new("application/json"); _API = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, $"{cellInstanceNamed}.HttpClient.API"); @@ -53,6 +55,14 @@ public class FileRead : Shared.FileRead, IFileRead _Project = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, $"{cellInstanceNamed}.HttpClient.Project"); string basePage = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, $"{cellInstanceNamed}.HttpClient.BasePage"); string baseAddress = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, $"{cellInstanceNamed}.HttpClient.BaseAddress"); + ModelObjectParameterDefinition[] assignedTo = GetProperties(cellInstanceConnectionName, modelObjectParameters, "Assinged.To."); + foreach (ModelObjectParameterDefinition modelObjectParameterDefinition in assignedTo) + assignedToNameToUser.Add(modelObjectParameterDefinition.Name.Split('.')[2], modelObjectParameterDefinition.Value); + _AssignedToNameToUser = new(assignedToNameToUser); + ModelObjectParameterDefinition[] requestor = GetProperties(cellInstanceConnectionName, modelObjectParameters, "Requestor."); + foreach (ModelObjectParameterDefinition modelObjectParameterDefinition in requestor) + requestorNameToUser.Add(modelObjectParameterDefinition.Name.Split('.')[1], modelObjectParameterDefinition.Value); + _RequestorNameToUser = new(requestorNameToUser); byte[] bytes = Encoding.ASCII.GetBytes($":{pat}"); string base64 = Convert.ToBase64String(bytes); _HttpClient = new(new HttpClientHandler() { UseDefaultCredentials = true }) { BaseAddress = new(baseAddress) }; @@ -62,11 +72,6 @@ public class FileRead : Shared.FileRead, IFileRead VssConnection connection = new(new(string.Concat(baseAddress, basePage)), credential); _WorkItemTrackingHttpClient = connection.GetClient(); _BasePage = basePage; - //string httpSelfHostConfigurationBaseAddress = "http://localhost:5159"; // GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, string.Concat("CellInstance.", cellInstanceName, ".HttpSelfHostConfiguration.BaseAddress")); - //HttpSelfHostConfiguration config = new(httpSelfHostConfigurationBaseAddress); - //_ = config.Routes.MapHttpRoute("API Default", "api/{controller}/{id}", new { id = RouteParameter.Optional }); - //_HttpSelfHostServer = new(config); - //_HttpSelfHostServer.OpenAsync().Wait(); } void IFileRead.Move(Tuple> extractResults, Exception exception) => Move(extractResults); @@ -143,7 +148,7 @@ public class FileRead : Shared.FileRead, IFileRead results.Item4.Add(_Logistics.FileInfo); else { - IProcessData iProcessData = new ProcessData(this, _Logistics, results.Item4, _HttpClient, _BasePage, _API, _Query, _WorkItemTrackingHttpClient, _Project, json); + IProcessData iProcessData = new ProcessData(this, _Logistics, results.Item4, _HttpClient, _BasePage, _API, _Query, _WorkItemTrackingHttpClient, _Project, _AssignedToNameToUser, _RequestorNameToUser, json); if (iProcessData is not ProcessData _) throw new Exception(string.Concat("A) No Data - ", dateTime.Ticks)); if (!iProcessData.Details.Any()) diff --git a/Adaptation/FileHandlers/json/Helper.cs b/Adaptation/FileHandlers/json/Helper.cs deleted file mode 100644 index d52869c..0000000 --- a/Adaptation/FileHandlers/json/Helper.cs +++ /dev/null @@ -1,21 +0,0 @@ -using Adaptation.FileHandlers.ConvertExcelToJson; -using System; -using System.Text.Json; - -namespace Adaptation.FileHandlers.json; - -public class Helper -{ - -#nullable enable - - internal static FIBacklogMesa[] GetFIBacklogMesaRecords(string json) - { - FIBacklogMesa[]? results; - results = JsonSerializer.Deserialize(json, new JsonSerializerOptions() { PropertyNameCaseInsensitive = true }); - if (results is null) - throw new NullReferenceException(); - return results; - } - -} \ No newline at end of file diff --git a/Adaptation/FileHandlers/json/ProcessData.cs b/Adaptation/FileHandlers/json/ProcessData.cs index 72229de..bfd6753 100644 --- a/Adaptation/FileHandlers/json/ProcessData.cs +++ b/Adaptation/FileHandlers/json/ProcessData.cs @@ -4,10 +4,13 @@ using Adaptation.Shared; using Adaptation.Shared.Duplicator; using Adaptation.Shared.Methods; using Microsoft.TeamFoundation.WorkItemTracking.WebApi; +using Microsoft.TeamFoundation.WorkItemTracking.WebApi.Models; using Microsoft.VisualStudio.Services.WebApi.Patch; using Microsoft.VisualStudio.Services.WebApi.Patch.Json; using System; using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Globalization; using System.IO; using System.Linq; using System.Net.Http; @@ -24,11 +27,11 @@ public class ProcessData : IProcessData List Shared.Properties.IProcessData.Details => _Details; - public ProcessData(IFileRead fileRead, Logistics logistics, List fileInfoCollection, HttpClient httpClient, string basePage, string api, string query, WorkItemTrackingHttpClient workItemTrackingHttpClient, string project, string json) + public ProcessData(IFileRead fileRead, Logistics logistics, List fileInfoCollection, HttpClient httpClient, string basePage, string api, string query, WorkItemTrackingHttpClient workItemTrackingHttpClient, string project, ReadOnlyDictionary assignedToNameToUser, ReadOnlyDictionary requestorNameToUser, string json) { fileInfoCollection.Clear(); _Details = new List(); - Parse(fileRead, logistics, fileInfoCollection, httpClient, basePage, api, query, workItemTrackingHttpClient, project, json); + Parse(fileRead, logistics, fileInfoCollection, httpClient, basePage, api, query, workItemTrackingHttpClient, project, assignedToNameToUser, requestorNameToUser, json); } string IProcessData.GetCurrentReactor(IFileRead fileRead, Logistics logistics, Dictionary reactors) @@ -43,7 +46,7 @@ public class ProcessData : IProcessData private static void AddPatch(JsonPatchDocument document, string path, object value) => document.Add(new JsonPatchOperation { From = null, Operation = Operation.Add, Path = path, Value = value }); - private static Dictionary GetFIBacklogMesaCollection(string json, string keySection) + private static Dictionary GetFIBacklogMesaCollection(string json) { Dictionary results = new(); string key; @@ -59,7 +62,7 @@ public class ProcessData : IProcessData continue; if (string.IsNullOrEmpty(fIBacklogMesa.Requestor)) continue; - key = $"{fIBacklogMesa.Requestor.Split(' ').First()}{keySection}{fIBacklogMesa.Req}"; + key = $"{fIBacklogMesa.Req} - "; if (results.ContainsKey(key)) continue; results.Add(key, fIBacklogMesa); @@ -109,12 +112,12 @@ public class ProcessData : IProcessData return results; } - private static Value[] GetExtra(string keySection, IReadOnlyList workItems, Dictionary keyToFIBacklogMesa) + private static Value[] GetExtra(IReadOnlyList workItems, Dictionary keyToFIBacklogMesa) { List results = new(); foreach (Value value in workItems) { - if (!value.Fields.SystemTitle.Contains(keySection)) + if (!value.Fields.SystemTitle.Contains(" - ")) continue; if (keyToFIBacklogMesa.Remove(value.Fields.SystemTitle)) continue; @@ -180,7 +183,188 @@ public class ProcessData : IProcessData } } - private void Parse(IFileRead fileRead, Logistics logistics, List fileInfoCollection, HttpClient httpClient, string basePage, string api, string query, WorkItemTrackingHttpClient workItemTrackingHttpClient, string project, string json) + private static JsonPatchDocument GetUATDocument(string project, ReadOnlyDictionary requestorNameToUser, DateTime dateTime, string key, FIBacklogMesa fiBacklogMesa) + { + JsonPatchDocument result = new(); + AddPatch(result, "/fields/System.AreaPath", project); + string description = GetDescription(fiBacklogMesa, dateTime); + AddPatch(result, "/fields/System.IterationPath", project); + AddPatch(result, "/fields/System.Title", key); + AddPatch(result, "/fields/System.Description", description); + if (requestorNameToUser.TryGetValue(fiBacklogMesa.AssignedTo, out string? requestorUser)) + AddPatch(result, "/fields/System.AssignedTo", requestorUser); + return result; + } + + private static JsonPatchDocument GetBugDocument(string project, ReadOnlyDictionary assignedToNameToUser, Task uatWorkItemTask, FIBacklogMesa fiBacklogMesa) + { + JsonPatchDocument result = new(); + if (uatWorkItemTask.Result.Id is null) + throw new NotSupportedException(); + AddPatch(result, "/relations/-", new WorkItemRelation() { Rel = "System.LinkTypes.Hierarchy-Forward", Url = uatWorkItemTask.Result.Url }); + AddPatch(result, "/fields/System.AreaPath", project); + AddPatch(result, "/fields/System.IterationPath", project); + AddPatch(result, "/fields/System.Title", $"{fiBacklogMesa.Req} - {fiBacklogMesa.Subject}"); + if (!string.IsNullOrEmpty(fiBacklogMesa.Definition)) + AddPatch(result, "/fields/System.Description", fiBacklogMesa.Definition); + if (assignedToNameToUser.TryGetValue(fiBacklogMesa.Requestor, out string? requestorUser)) + AddPatch(result, "/fields/System.AssignedTo", requestorUser); + return result; + } + + private static JsonPatchDocument GetDeveloperTaskDocument(string project, ReadOnlyDictionary assignedToNameToUser, FIBacklogMesa fiBacklogMesa) + { + JsonPatchDocument result = new(); + AddPatch(result, "/fields/System.AreaPath", project); + AddPatch(result, "/fields/System.IterationPath", project); + AddPatch(result, "/fields/System.Title", $"{fiBacklogMesa.Req} - Developer Task"); + if (assignedToNameToUser.TryGetValue(fiBacklogMesa.AssignedTo, out string? assignedToUser)) + AddPatch(result, "/fields/System.AssignedTo", assignedToUser); + return result; + } + + private static JsonPatchDocument GetSecondDeveloperTaskDocument(string project, ReadOnlyDictionary assignedToNameToUser, FIBacklogMesa fiBacklogMesa) + { + JsonPatchDocument result = new(); + AddPatch(result, "/fields/System.AreaPath", project); + AddPatch(result, "/fields/System.IterationPath", project); + AddPatch(result, "/fields/System.Title", $"{fiBacklogMesa.Req} - Developer Task"); + if (assignedToNameToUser.TryGetValue(fiBacklogMesa.SecondResource, out string? assignedToUser)) + AddPatch(result, "/fields/System.AssignedTo", assignedToUser); + return result; + } + + private static JsonPatchDocument GetUserStoryDocument(string project, ReadOnlyDictionary requestorNameToUser, Task uatWorkItemTask, FIBacklogMesa fiBacklogMesa) + { + JsonPatchDocument result = new(); + if (uatWorkItemTask?.Result.Id is null) + throw new NotSupportedException(); + AddPatch(result, "/relations/-", new WorkItemRelation() { Rel = "System.LinkTypes.Hierarchy-Forward", Url = uatWorkItemTask.Result.Url }); + AddPatch(result, "/fields/System.AreaPath", project); + AddPatch(result, "/fields/System.IterationPath", project); + AddPatch(result, "/fields/System.Title", $"{fiBacklogMesa.Req} - User Story"); + if (requestorNameToUser.TryGetValue(fiBacklogMesa.Requestor, out string? requestorUser)) + AddPatch(result, "/fields/System.AssignedTo", requestorUser); + return result; + } + + private static JsonPatchDocument GetAssignedToRelationDocument(Task assignedToWorkItemTask) + { + JsonPatchDocument result = new(); + if (assignedToWorkItemTask.Result.Id is null) + throw new NotSupportedException(); + AddPatch(result, "/relations/-", new WorkItemRelation() { Rel = "System.LinkTypes.Hierarchy-Forward", Url = assignedToWorkItemTask.Result.Url }); + return result; + } + + private static JsonPatchDocument GetSecondResourceDocument(Task secondResourceWorkItemTask) + { + JsonPatchDocument result = new(); + if (secondResourceWorkItemTask?.Result.Id is null) + throw new NotSupportedException(); + AddPatch(result, "/relations/-", new WorkItemRelation() { Rel = "System.LinkTypes.Hierarchy-Forward", Url = secondResourceWorkItemTask.Result.Url }); + return result; + } + + private static JsonPatchDocument GetFeatureDocument(string project, ReadOnlyDictionary requestorNameToUser, List tags, Task? userStoryWorkItemTask, FIBacklogMesa fiBacklogMesa) + { + JsonPatchDocument result = new(); + if (userStoryWorkItemTask?.Result.Id is null) + throw new NotSupportedException(); + AddPatch(result, "/relations/-", new WorkItemRelation() { Rel = "System.LinkTypes.Hierarchy-Forward", Url = userStoryWorkItemTask.Result.Url }); + AddPatch(result, "/fields/System.AreaPath", project); + if (tags.Count > 0) + { + AddPatch(result, "/fields/System.Tags", tags.Last()); + tags.RemoveAt(tags.Count - 1); + } + AddPatch(result, "/fields/System.IterationPath", project); + if (!string.IsNullOrEmpty(fiBacklogMesa.Definition)) + AddPatch(result, "/fields/System.Description", fiBacklogMesa.Definition); + if (int.TryParse(fiBacklogMesa.Priority.Substring(0, 1), out int priority) && priority != 0) + AddPatch(result, "/fields/Microsoft.VSTS.Common.Priority", priority); + if (!string.IsNullOrEmpty(fiBacklogMesa.EstEffortDays) && int.TryParse(fiBacklogMesa.EstEffortDays, out int estEffortDays) && estEffortDays != 0) + AddPatch(result, "/fields/Microsoft.VSTS.Scheduling.Effort", estEffortDays); + if (!string.IsNullOrEmpty(fiBacklogMesa.CommitDate) && DateTime.TryParseExact(fiBacklogMesa.CommitDate.Split(' ').First(), "MM/dd/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime commitDate) && commitDate != DateTime.MinValue) + AddPatch(result, "/fields/Microsoft.VSTS.Scheduling.TargetDate", commitDate.AddHours(12).ToUniversalTime()); + if (!string.IsNullOrEmpty(fiBacklogMesa.Updates)) + AddPatch(result, "/fields/System.History", fiBacklogMesa.Updates); + AddPatch(result, "/fields/System.Title", $"{fiBacklogMesa.Req} - {fiBacklogMesa.Subject}"); + if (requestorNameToUser.TryGetValue(fiBacklogMesa.Requestor, out string? requestorUser)) + AddPatch(result, "/fields/System.AssignedTo", requestorUser); + // https://tfs.intra.infineon.com/tfs/ManufacturingIT/Mesa_FI/_apis/wit/workitemtypes/feature/fields?api-version=7.0 + return result; + } + + private static void DoWork(WorkItemTrackingHttpClient workItemTrackingHttpClient, string project, ReadOnlyDictionary assignedToNameToUser, ReadOnlyDictionary requestorNameToUser, string key, FIBacklogMesa fiBacklogMesa) + { + DateTime dateTime; + List tags = new(); + JsonPatchDocument tagDocument; + Task? secondResourceWorkItemTask = null; + bool isBugFix = fiBacklogMesa.Priority == "0 - BugFix"; + if (!DateTime.TryParse(fiBacklogMesa.Submitted, out dateTime)) + dateTime = DateTime.MinValue; + foreach (string tag in fiBacklogMesa.SystemS.Split('/')) + { + if (string.IsNullOrEmpty(tag.Trim())) + continue; + tags.Add(tag.Trim()); + } + tags.Reverse(); + JsonPatchDocument uatDocument = GetUATDocument(project, requestorNameToUser, dateTime, key, fiBacklogMesa); + Task uatWorkItemTask = workItemTrackingHttpClient.CreateWorkItemAsync(uatDocument, project, "Task"); + uatWorkItemTask.Wait(); + if (isBugFix) + { + JsonPatchDocument bugDocument = GetBugDocument(project, assignedToNameToUser, uatWorkItemTask, fiBacklogMesa); + Task bugWorkItemTask = workItemTrackingHttpClient.CreateWorkItemAsync(bugDocument, project, "Bug"); + bugWorkItemTask.Wait(); + } + if (!isBugFix) + { + JsonPatchDocument developerTaskDocument = GetDeveloperTaskDocument(project, assignedToNameToUser, fiBacklogMesa); + Task assignedToWorkItemTask = workItemTrackingHttpClient.CreateWorkItemAsync(developerTaskDocument, project, "Task"); + assignedToWorkItemTask.Wait(); + if (!string.IsNullOrEmpty(fiBacklogMesa.SecondResource)) + { + JsonPatchDocument secondDeveloperTaskDocument = GetSecondDeveloperTaskDocument(project, assignedToNameToUser, fiBacklogMesa); + secondResourceWorkItemTask = workItemTrackingHttpClient.CreateWorkItemAsync(secondDeveloperTaskDocument, project, "Task"); + secondResourceWorkItemTask.Wait(); + } + JsonPatchDocument userStoryDocument = GetUserStoryDocument(project, requestorNameToUser, uatWorkItemTask, fiBacklogMesa); + Task userStoryWorkItemTask = workItemTrackingHttpClient.CreateWorkItemAsync(userStoryDocument, project, "User Story"); + userStoryWorkItemTask.Wait(); + if (userStoryWorkItemTask?.Result.Id is null) + throw new NotSupportedException(); + JsonPatchDocument assignedToRelationDocument = GetAssignedToRelationDocument(assignedToWorkItemTask); + userStoryWorkItemTask = workItemTrackingHttpClient.UpdateWorkItemAsync(assignedToRelationDocument, userStoryWorkItemTask.Result.Id.Value); + userStoryWorkItemTask.Wait(); + if (secondResourceWorkItemTask is not null) + { + if (userStoryWorkItemTask.Result.Id is null) + throw new NotSupportedException(); + JsonPatchDocument secondResourceDocument = GetSecondResourceDocument(secondResourceWorkItemTask); + userStoryWorkItemTask = workItemTrackingHttpClient.UpdateWorkItemAsync(secondResourceDocument, userStoryWorkItemTask.Result.Id.Value); + userStoryWorkItemTask.Wait(); + } + JsonPatchDocument featureDocument = GetFeatureDocument(project, requestorNameToUser, tags, userStoryWorkItemTask, fiBacklogMesa); + Task featureWorkItemTask = workItemTrackingHttpClient.CreateWorkItemAsync(featureDocument, project, "Feature"); + featureWorkItemTask.Wait(); + for (int i = tags.Count - 1; i > -1; i--) + { + if (featureWorkItemTask.Result.Id is null) + throw new NotSupportedException(); + tagDocument = new(); + AddPatch(tagDocument, "/fields/System.Tags", tags[i]); + tags.RemoveAt(i); + featureWorkItemTask = workItemTrackingHttpClient.UpdateWorkItemAsync(tagDocument, featureWorkItemTask.Result.Id.Value); + featureWorkItemTask.Wait(); + } + } + } + + private void Parse(IFileRead fileRead, Logistics logistics, List fileInfoCollection, HttpClient httpClient, string basePage, string api, string query, WorkItemTrackingHttpClient workItemTrackingHttpClient, string project, ReadOnlyDictionary assignedToNameToUser, ReadOnlyDictionary requestorNameToUser, string json) { if (fileRead is null) throw new NullReferenceException(); @@ -189,24 +373,17 @@ public class ProcessData : IProcessData if (fileInfoCollection is null) throw new NullReferenceException(); int counter = 0; - DateTime dateTime; - string description; - string keySection = " UAT for "; - string? directory = Path.GetDirectoryName(fileRead.ReportFullPath); - if (directory is null) - throw new Exception(); + string? directory = Path.GetDirectoryName(fileRead.ReportFullPath) ?? throw new Exception(); string[] checkFiles = Directory.GetFiles(directory, "*.csv", SearchOption.TopDirectoryOnly); if (checkFiles.Any()) UpdateIds(httpClient, basePage, api, checkFiles); else { - JsonPatchDocument document; string ids = GetIds(httpClient, basePage, api, query); - Value[] workItems = GetWorkItems(httpClient, basePage, api, ids); - Task workItemTask; - Dictionary keyToFIBacklogMesa = GetFIBacklogMesaCollection(json, keySection); + Dictionary keyToFIBacklogMesa = GetFIBacklogMesaCollection(json); + Value[] workItems = string.IsNullOrEmpty(ids) ? Array.Empty() : GetWorkItems(httpClient, basePage, api, ids); int count = keyToFIBacklogMesa.Count; - Value[] extra = GetExtra(keySection, workItems, keyToFIBacklogMesa); + Value[] extra = GetExtra(workItems, keyToFIBacklogMesa); if (count != extra.Length) { } if (count != keyToFIBacklogMesa.Count) @@ -216,33 +393,10 @@ public class ProcessData : IProcessData { if (counter > 5) break; - document = new(); - if (!DateTime.TryParse(keyValuePair.Value.Submitted, out dateTime)) - dateTime = DateTime.MinValue; - AddPatch(document, "/fields/System.AreaPath", project); - description = GetDescription(keyValuePair.Value, dateTime); - AddPatch(document, "/fields/System.IterationPath", project); - AddPatch(document, "/fields/System.Title", keyValuePair.Key); - AddPatch(document, "/fields/System.Description", description); - // AddPatch(document, "/fields/System.AssignedTo", "Mike.Phares@infineon.com"); if (!fileRead.IsEAFHosted) continue; - workItemTask = workItemTrackingHttpClient.CreateWorkItemAsync(document, project, "Task"); - workItemTask.Wait(); + DoWork(workItemTrackingHttpClient, project, assignedToNameToUser, requestorNameToUser, keyValuePair.Key, keyValuePair.Value); counter++; - if (workItemTask.Result is null) - continue; - if (keyValuePair.Value.Priority == "0 - BugFix") - { - document = new(); - AddPatch(document, "/fields/System.AreaPath", project); - AddPatch(document, "/fields/System.IterationPath", project); - AddPatch(document, "/fields/System.Title", keyValuePair.Value.Subject); - AddPatch(document, "/fields/System.Description", $"{description}
{keyValuePair.Value.Definition}"); - // AddPatch(document, "/fields/System.AssignedTo", "Mike.Phares@infineon.com"); - workItemTask = workItemTrackingHttpClient.CreateWorkItemAsync(document, project, "Bug"); - workItemTask.Wait(); - } } } } diff --git a/Adaptation/FileHandlers/json/StaticSite/index.html b/Adaptation/FileHandlers/json/StaticSite/index.html index 94d478e..eeeed8d 100644 --- a/Adaptation/FileHandlers/json/StaticSite/index.html +++ b/Adaptation/FileHandlers/json/StaticSite/index.html @@ -5,14 +5,14 @@ FI Backlog Mesa - - - - - - - - + + + + + + + +

FI Backlog Mesa

diff --git a/Adaptation/FileHandlers/json/StaticSite/js/site.js b/Adaptation/FileHandlers/json/StaticSite/js/site.js index 0bd2680..702ed07 100644 --- a/Adaptation/FileHandlers/json/StaticSite/js/site.js +++ b/Adaptation/FileHandlers/json/StaticSite/js/site.js @@ -1,12 +1,10 @@ function compareFunction(a, b) { - return a.Priority[0] - b.Priority[0] || a.Req.length - b.Req.length || a.Req - b.Req; + return a['Priority'][0] - b['Priority'][0] || a['Req '].length - b['Req '].length || a['Req '] - b['Req ']; } function initIndex(url) { $.getJSON(url, function (data) { for (var i = data.length - 1; i > -1; i--) { - if (data[i]['Subject - from Requestor'].length > 255) - data[i]['Subject - from Requestor'] = data[i]['Subject - from Requestor'].substring(0, 255) + '...'; if (data[i].Submitted !== '') continue; data.splice(i, 1); @@ -23,7 +21,8 @@ function initIndex(url) { { key: "Requestor", dataType: "string" }, { key: "Assigned To", dataType: "string" }, { key: "Second Resource", dataType: "string" }, - { key: "Subject - from Requestor", dataType: "string", width: "30%" }, + { key: "Subject - from Requestor", dataType: "string" }, + { key: "System(s)", dataType: "string" }, { key: "Priority", dataType: "string" }, ], features: [ diff --git a/Adaptation/MESAFIBACKLOG-Development.yml b/Adaptation/MESAFIBACKLOG-Development.yml index 32f3b87..1c1a388 100644 --- a/Adaptation/MESAFIBACKLOG-Development.yml +++ b/Adaptation/MESAFIBACKLOG-Development.yml @@ -7,7 +7,7 @@ trigger: - "Adaptation/*" pool: - name: Mesa-Windows-Service + name: eaf demands: MESAFIBACKLOG-Development steps: diff --git a/Adaptation/MESAFIBACKLOG.Tests.csproj b/Adaptation/MESAFIBACKLOG.Tests.csproj index ff044a4..fe18da2 100644 --- a/Adaptation/MESAFIBACKLOG.Tests.csproj +++ b/Adaptation/MESAFIBACKLOG.Tests.csproj @@ -44,7 +44,6 @@ NU1701 - @@ -70,8 +69,8 @@ - + NU1701 diff --git a/Adaptation/MESAFIBACKLOG.yml b/Adaptation/MESAFIBACKLOG.yml index 56c140e..58f4890 100644 --- a/Adaptation/MESAFIBACKLOG.yml +++ b/Adaptation/MESAFIBACKLOG.yml @@ -7,7 +7,7 @@ trigger: - "Adaptation/*" pool: - name: Mesa-Windows-Service + name: eaf demands: MESAFIBACKLOG steps: diff --git a/Adaptation/Shared/FileRead.cs b/Adaptation/Shared/FileRead.cs index 90ed6e6..f66b29b 100644 --- a/Adaptation/Shared/FileRead.cs +++ b/Adaptation/Shared/FileRead.cs @@ -260,10 +260,11 @@ public class FileRead : Properties.IFileRead return results; } - protected static string GetTupleFile(Logistics logistics, List descriptions, Properties.IScopeInfo scopeInfo, string duplicateDirectory) where T : Properties.IDescription + protected static string GetTupleFile(Logistics logistics, List descriptions, Properties.IScopeInfo scopeInfo, string duplicateDirectory, string duplicateFile) where T : Properties.IDescription { string result; string rds; + string fileName; string dateValue; string rdsPlaceholder = "%RDS%"; string mesEntityPlaceholder = "%MesEntity%"; @@ -285,7 +286,11 @@ public class FileRead : Properties.IFileRead continue; datePlaceholder = string.Concat('%', segment, '%'); } - result = string.Concat(duplicateDirectory, @"\", scopeInfo.FileName.Replace(rdsPlaceholder, rds).Replace(mesEntityPlaceholder, logistics.MesEntity).Replace(datePlaceholder, dateValue)); + fileName = scopeInfo.FileName.Replace(rdsPlaceholder, rds).Replace(mesEntityPlaceholder, logistics.MesEntity).Replace(datePlaceholder, dateValue); + if (!duplicateFile.Contains("Viewer")) + result = Path.Combine(duplicateDirectory, fileName); + else + result = Path.Combine(duplicateDirectory, $"Viewer_{fileName}"); } if (result.Contains('%')) throw new Exception("Placeholder exists!"); @@ -318,7 +323,7 @@ public class FileRead : Properties.IFileRead else if (!scopeInfo.FileName.Contains('%')) tupleFile = string.Concat(duplicateDirectory, @"\", fileName, "_", scopeInfo.FileNameWithoutExtension, ".pdsfc"); else - tupleFile = GetTupleFile(logistics, descriptions, scopeInfo, duplicateDirectory); + tupleFile = GetTupleFile(logistics, descriptions, scopeInfo, duplicateDirectory, duplicateFile); tupleFileName = Path.GetFileNameWithoutExtension(tupleFile).Split('.')[0]; duplicateFiles.Add(tupleFile); if (_IsEAFHosted) diff --git a/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/BACKLOG-EQPT.cs b/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/BACKLOG-EQPT.cs index 3b5510b..03480bf 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/BACKLOG-EQPT.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/BACKLOG-EQPT.cs @@ -47,9 +47,7 @@ public class BACKLOG_EQPT : EAFLoggingUnitTesting EAFLoggingUnitTesting?.Dispose(); } -#if DEBUG [Ignore] -#endif [TestMethod] public void Development__v2_49_2__BACKLOG_EQPT__DownloadExcelFile() { diff --git a/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/BACKLOG.cs b/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/BACKLOG.cs index 5e3d891..21c9aa8 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/BACKLOG.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/BACKLOG.cs @@ -47,9 +47,7 @@ public class BACKLOG : EAFLoggingUnitTesting EAFLoggingUnitTesting?.Dispose(); } -#if DEBUG [Ignore] -#endif [TestMethod] public void Development__v2_49_2__BACKLOG__ConvertExcelToJson() { diff --git a/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/MESAFIBACKLOG.cs b/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/MESAFIBACKLOG.cs index 79a08eb..3fb488c 100644 --- a/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/MESAFIBACKLOG.cs +++ b/Adaptation/_Tests/CreateSelfDescription/Development/v2.49.2/MESAFIBACKLOG.cs @@ -47,9 +47,7 @@ public class MESAFIBACKLOG : EAFLoggingUnitTesting EAFLoggingUnitTesting?.Dispose(); } -#if DEBUG [Ignore] -#endif [TestMethod] public void Development__v2_49_2__MESAFIBACKLOG__json() { diff --git a/Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/BACKLOG-EQPT.cs b/Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/BACKLOG-EQPT.cs new file mode 100644 index 0000000..e0fb3e7 --- /dev/null +++ b/Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/BACKLOG-EQPT.cs @@ -0,0 +1,61 @@ +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.Development.v2_52_0; + +[TestClass] +public class BACKLOG_EQPT : EAFLoggingUnitTesting +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + internal static string DummyRoot { get; private set; } + internal static BACKLOG_EQPT EAFLoggingUnitTesting { get; private set; } + + static BACKLOG_EQPT() => DummyRoot = @"\\messdv002.na.infineon.com\Candela\EC_Characterization_Si\Dummy"; + + public BACKLOG_EQPT() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false) + { + if (EAFLoggingUnitTesting is null) + throw new Exception(); + } + + public BACKLOG_EQPT(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false) + { + } + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + EAFLoggingUnitTesting ??= new BACKLOG_EQPT(testContext); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(testContext.TestName, " - ClassInitialize")); + string[] fileNameAndText = EAFLoggingUnitTesting.AdaptationTesting.GetCSharpText(testContext.TestName); + File.WriteAllText(fileNameAndText[0], fileNameAndText[1]); + File.WriteAllText(fileNameAndText[2], fileNameAndText[3]); + } + + [ClassCleanup()] + public static void ClassCleanup() + { + EAFLoggingUnitTesting.Logger?.LogInformation("Cleanup"); + EAFLoggingUnitTesting?.Dispose(); + } + + [Ignore] + [TestMethod] + public void Development__v2_52_0__BACKLOG_EQPT__DownloadExcelFile() + { + string check = ".xlsx"; + 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")); + } + +} \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/BACKLOG.cs b/Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/BACKLOG.cs new file mode 100644 index 0000000..e912f5f --- /dev/null +++ b/Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/BACKLOG.cs @@ -0,0 +1,61 @@ +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.Development.v2_52_0; + +[TestClass] +public class BACKLOG : EAFLoggingUnitTesting +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + internal static string DummyRoot { get; private set; } + internal static BACKLOG EAFLoggingUnitTesting { get; private set; } + + static BACKLOG() => DummyRoot = @"\\messdv002.na.infineon.com\Candela\EC_Characterization_Si\Dummy"; + + public BACKLOG() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false) + { + if (EAFLoggingUnitTesting is null) + throw new Exception(); + } + + public BACKLOG(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false) + { + } + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + EAFLoggingUnitTesting ??= new BACKLOG(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 Development__v2_52_0__BACKLOG__ConvertExcelToJson() + { + string check = "*.xlsx"; + 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")); + } + +} \ No newline at end of file diff --git a/Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/MESAFIBACKLOG.cs b/Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/MESAFIBACKLOG.cs new file mode 100644 index 0000000..7bd145d --- /dev/null +++ b/Adaptation/_Tests/CreateSelfDescription/Development/v2.52.0/MESAFIBACKLOG.cs @@ -0,0 +1,61 @@ +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.Development.v2_52_0; + +[TestClass] +public class MESAFIBACKLOG : EAFLoggingUnitTesting +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + internal static string DummyRoot { get; private set; } + internal static MESAFIBACKLOG EAFLoggingUnitTesting { get; private set; } + + static MESAFIBACKLOG() => DummyRoot = @"\\messdv002.na.infineon.com\Candela\EC_Characterization_Si\Dummy"; + + public MESAFIBACKLOG() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false) + { + if (EAFLoggingUnitTesting is null) + throw new Exception(); + } + + public MESAFIBACKLOG(TestContext testContext) : base(DummyRoot, testContext, new StackFrame().GetMethod().DeclaringType, skipEquipmentDictionary: false) + { + } + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + EAFLoggingUnitTesting ??= new MESAFIBACKLOG(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 Development__v2_52_0__MESAFIBACKLOG__json() + { + string check = "*.json"; + MethodBase methodBase = new StackFrame().GetMethod(); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Getting configuration")); + _ = AdaptationTesting.GetWriteConfigurationGetFileRead(methodBase, check, EAFLoggingUnitTesting.AdaptationTesting); + EAFLoggingUnitTesting.Logger.LogInformation(string.Concat(methodBase.Name, " - Exit")); + } + +} \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Development/v2.49.2/BACKLOG-EQPT.cs b/Adaptation/_Tests/Extract/Development/v2.49.2/BACKLOG-EQPT.cs index 0c7b818..4970a9f 100644 --- a/Adaptation/_Tests/Extract/Development/v2.49.2/BACKLOG-EQPT.cs +++ b/Adaptation/_Tests/Extract/Development/v2.49.2/BACKLOG-EQPT.cs @@ -29,15 +29,11 @@ public class BACKLOG_EQPT catch (Exception) { } } -#if DEBUG [Ignore] -#endif [TestMethod] public void Development__v2_49_2__BACKLOG_EQPT__DownloadExcelFile() => _BACKLOG_EQPT.Development__v2_49_2__BACKLOG_EQPT__DownloadExcelFile(); -#if DEBUG [Ignore] -#endif [TestMethod] public void Development__v2_49_2__BACKLOG_EQPT__DownloadExcelFile637961178824025822__Normal() { diff --git a/Adaptation/_Tests/Extract/Development/v2.49.2/BACKLOG.cs b/Adaptation/_Tests/Extract/Development/v2.49.2/BACKLOG.cs index c6537b2..79e1854 100644 --- a/Adaptation/_Tests/Extract/Development/v2.49.2/BACKLOG.cs +++ b/Adaptation/_Tests/Extract/Development/v2.49.2/BACKLOG.cs @@ -33,15 +33,11 @@ public class BACKLOG catch (Exception) { } } -#if DEBUG [Ignore] -#endif [TestMethod] public void Development__v2_49_2__BACKLOG__ConvertExcelToJson() => _BACKLOG.Development__v2_49_2__BACKLOG__ConvertExcelToJson(); -#if DEBUG [Ignore] -#endif [TestMethod] public void Development__v2_49_2__BACKLOG__ConvertExcelToJson637961178824025822__Normal() { diff --git a/Adaptation/_Tests/Extract/Development/v2.49.2/MESAFIBACKLOG.cs b/Adaptation/_Tests/Extract/Development/v2.49.2/MESAFIBACKLOG.cs index 0d4724a..73fee7f 100644 --- a/Adaptation/_Tests/Extract/Development/v2.49.2/MESAFIBACKLOG.cs +++ b/Adaptation/_Tests/Extract/Development/v2.49.2/MESAFIBACKLOG.cs @@ -33,15 +33,11 @@ public class MESAFIBACKLOG catch (Exception) { } } -#if DEBUG [Ignore] -#endif [TestMethod] public void Development__v2_49_2__MESAFIBACKLOG__json() => _MESAFIBACKLOG.Development__v2_49_2__MESAFIBACKLOG__json(); -#if DEBUG [Ignore] -#endif [TestMethod] public void Development__v2_49_2__MESAFIBACKLOG__json637961251829737445__Normal() { diff --git a/Adaptation/_Tests/Extract/Development/v2.52.0/BACKLOG-EQPT.cs b/Adaptation/_Tests/Extract/Development/v2.52.0/BACKLOG-EQPT.cs new file mode 100644 index 0000000..8217ebd --- /dev/null +++ b/Adaptation/_Tests/Extract/Development/v2.52.0/BACKLOG-EQPT.cs @@ -0,0 +1,50 @@ +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Diagnostics; +using System.Reflection; +using System.Threading; + +namespace Adaptation._Tests.Extract.Development.v2_52_0; + +[TestClass] +public class BACKLOG_EQPT +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + private static CreateSelfDescription.Development.v2_52_0.BACKLOG_EQPT _BACKLOG_EQPT; + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + CreateSelfDescription.Development.v2_52_0.BACKLOG_EQPT.ClassInitialize(testContext); + _BACKLOG_EQPT = CreateSelfDescription.Development.v2_52_0.BACKLOG_EQPT.EAFLoggingUnitTesting; + } + + private static void NonThrowTryCatch() + { + try + { throw new Exception(); } + catch (Exception) { } + } + + [Ignore] + [TestMethod] + public void Development__v2_52_0__BACKLOG_EQPT__DownloadExcelFile() => _BACKLOG_EQPT.Development__v2_52_0__BACKLOG_EQPT__DownloadExcelFile(); + + [Ignore] + [TestMethod] + public void Development__v2_52_0__BACKLOG_EQPT__DownloadExcelFile637961178824025822__Normal() + { + string check = ".xlsx"; + bool validatePDSF = false; + MethodBase methodBase = new StackFrame().GetMethod(); + _BACKLOG_EQPT.Development__v2_52_0__BACKLOG_EQPT__DownloadExcelFile(); + _ = _BACKLOG_EQPT.AdaptationTesting.GetVariables(methodBase, check, validatePDSF); + for (int i = 0; i < int.MinValue; i++) + Thread.Sleep(500); + NonThrowTryCatch(); + } + +} \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Development/v2.52.0/BACKLOG.cs b/Adaptation/_Tests/Extract/Development/v2.52.0/BACKLOG.cs new file mode 100644 index 0000000..0665d86 --- /dev/null +++ b/Adaptation/_Tests/Extract/Development/v2.52.0/BACKLOG.cs @@ -0,0 +1,58 @@ +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.Development.v2_52_0; + +[TestClass] +public class BACKLOG +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + private static CreateSelfDescription.Development.v2_52_0.BACKLOG _BACKLOG; + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + CreateSelfDescription.Development.v2_52_0.BACKLOG.ClassInitialize(testContext); + _BACKLOG = CreateSelfDescription.Development.v2_52_0.BACKLOG.EAFLoggingUnitTesting; + } + + private static void NonThrowTryCatch() + { + try + { throw new Exception(); } + catch (Exception) { } + } + + [Ignore] + [TestMethod] + public void Development__v2_52_0__BACKLOG__ConvertExcelToJson() => _BACKLOG.Development__v2_52_0__BACKLOG__ConvertExcelToJson(); + + [Ignore] + [TestMethod] + public void Development__v2_52_0__BACKLOG__ConvertExcelToJson637961178824025822__Normal() + { + string check = "*.xlsx"; + bool validatePDSF = false; + MethodBase methodBase = new StackFrame().GetMethod(); + _BACKLOG.Development__v2_52_0__BACKLOG__ConvertExcelToJson(); + Assert.IsFalse(string.IsNullOrEmpty(_BACKLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName)); + string[] variables = _BACKLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF); + IFileRead fileRead = _BACKLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Tuple> extractResult = fileRead.ReExtract(); + Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1)); + Assert.IsNotNull(extractResult.Item3); + Assert.IsNotNull(extractResult.Item4); + NonThrowTryCatch(); + } + +} \ No newline at end of file diff --git a/Adaptation/_Tests/Extract/Development/v2.52.0/MESAFIBACKLOG.cs b/Adaptation/_Tests/Extract/Development/v2.52.0/MESAFIBACKLOG.cs new file mode 100644 index 0000000..f95f3f2 --- /dev/null +++ b/Adaptation/_Tests/Extract/Development/v2.52.0/MESAFIBACKLOG.cs @@ -0,0 +1,94 @@ +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.Development.v2_52_0; + +[TestClass] +public class MESAFIBACKLOG +{ + +#pragma warning disable CA2254 +#pragma warning disable IDE0060 + + private static CreateSelfDescription.Development.v2_52_0.MESAFIBACKLOG _MESAFIBACKLOG; + + [ClassInitialize] + public static void ClassInitialize(TestContext testContext) + { + CreateSelfDescription.Development.v2_52_0.MESAFIBACKLOG.ClassInitialize(testContext); + _MESAFIBACKLOG = CreateSelfDescription.Development.v2_52_0.MESAFIBACKLOG.EAFLoggingUnitTesting; + } + + private static void NonThrowTryCatch() + { + try + { throw new Exception(); } + catch (Exception) { } + } + + [Ignore] + [TestMethod] + public void Development__v2_52_0__MESAFIBACKLOG__json() => _MESAFIBACKLOG.Development__v2_52_0__MESAFIBACKLOG__json(); + + [Ignore] + [TestMethod] + public void Development__v2_52_0__MESAFIBACKLOG__json637961251829737445__Normal() + { + string check = "*.json"; + bool validatePDSF = false; + _MESAFIBACKLOG.Development__v2_52_0__MESAFIBACKLOG__json(); + MethodBase methodBase = new StackFrame().GetMethod(); + Assert.IsFalse(string.IsNullOrEmpty(_MESAFIBACKLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName)); + string[] variables = _MESAFIBACKLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF); + IFileRead fileRead = _MESAFIBACKLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Tuple> extractResult = fileRead.ReExtract(); + Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1)); + Assert.IsNotNull(extractResult.Item3); + Assert.IsNotNull(extractResult.Item4); + NonThrowTryCatch(); + } + + [Ignore] + [TestMethod] + public void Development__v2_52_0__MESAFIBACKLOG__json637961251829737449__Normal() + { + string check = "*.json"; + bool validatePDSF = false; + _MESAFIBACKLOG.Development__v2_52_0__MESAFIBACKLOG__json(); + MethodBase methodBase = new StackFrame().GetMethod(); + Assert.IsFalse(string.IsNullOrEmpty(_MESAFIBACKLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName)); + string[] variables = _MESAFIBACKLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF); + IFileRead fileRead = _MESAFIBACKLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Tuple> extractResult = fileRead.ReExtract(); + Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1)); + Assert.IsNotNull(extractResult.Item3); + Assert.IsNotNull(extractResult.Item4); + NonThrowTryCatch(); + } + + [Ignore] + [TestMethod] + public void Development__v2_52_0__MESAFIBACKLOG__json638321988963117280__Normal() + { + string check = "*.json"; + bool validatePDSF = false; + _MESAFIBACKLOG.Development__v2_52_0__MESAFIBACKLOG__json(); + MethodBase methodBase = new StackFrame().GetMethod(); + Assert.IsFalse(string.IsNullOrEmpty(_MESAFIBACKLOG.AdaptationTesting.TestContext.FullyQualifiedTestClassName)); + string[] variables = _MESAFIBACKLOG.AdaptationTesting.GetVariables(methodBase, check, validatePDSF); + IFileRead fileRead = _MESAFIBACKLOG.AdaptationTesting.Get(methodBase, sourceFileLocation: variables[2], sourceFileFilter: variables[3], useCyclicalForDescription: false); + Tuple> extractResult = fileRead.ReExtract(); + Assert.IsFalse(string.IsNullOrEmpty(extractResult?.Item1)); + Assert.IsNotNull(extractResult.Item3); + Assert.IsNotNull(extractResult.Item4); + NonThrowTryCatch(); + } + +} \ No newline at end of file diff --git a/Adaptation/_Tests/Shared/AdaptationTesting.cs b/Adaptation/_Tests/Shared/AdaptationTesting.cs index e55beee..0771b8b 100644 --- a/Adaptation/_Tests/Shared/AdaptationTesting.cs +++ b/Adaptation/_Tests/Shared/AdaptationTesting.cs @@ -487,7 +487,7 @@ public class AdaptationTesting : ISMTP else if (i == 1) _ = stringBuilder. AppendLine(). - Append("static ").Append(cellInstanceNameWithoutHyphen).AppendLine("() => DummyRoot = @\"\\\\messv02ecc1.ec.local\\EC_Characterization_Si\\Dummy\";"). + Append("static ").Append(cellInstanceNameWithoutHyphen).AppendLine("() => DummyRoot = @\"\\\\mesfs.infineon.com\\EC_Characterization_Si\\Dummy\";"). AppendLine(). Append("public ").Append(cellInstanceNameWithoutHyphen).AppendLine("() : base(DummyRoot, testContext: null, declaringType: null, skipEquipmentDictionary: false)"). AppendLine("{"). diff --git a/Adaptation/_Tests/Static/BACKLOG.cs b/Adaptation/_Tests/Static/BACKLOG.cs index 3598211..8ad0532 100644 --- a/Adaptation/_Tests/Static/BACKLOG.cs +++ b/Adaptation/_Tests/Static/BACKLOG.cs @@ -89,7 +89,7 @@ public class BACKLOG : LoggingUnitTesting, IDisposable new("BACKLOG", "v2.49.2"), new("BACKLOG-EQPT", "v2.49.2"), }; - string staging = "http://mestsa07ec.ec.local:9003/CellInstanceServiceV2"; + 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) diff --git a/Adaptation/_Tests/Static/MESAFIBACKLOG.cs b/Adaptation/_Tests/Static/MESAFIBACKLOG.cs index c922633..5edd2b4 100644 --- a/Adaptation/_Tests/Static/MESAFIBACKLOG.cs +++ b/Adaptation/_Tests/Static/MESAFIBACKLOG.cs @@ -79,7 +79,7 @@ public class MESAFIBACKLOG : LoggingUnitTesting, IDisposable { new("MESAFIBACKLOG", "v2.49.2"), }; - string staging = "http://mestsa07ec.ec.local:9003/CellInstanceServiceV2"; + 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) diff --git a/Adaptation/package.json b/Adaptation/package.json index e49a3f9..854c2dc 100644 --- a/Adaptation/package.json +++ b/Adaptation/package.json @@ -9,14 +9,8 @@ "GA-Extract.Staging.v2_43_0-MESAFIBACKLOG-Staging__v2_43_0__MESAFIBACKLOG__MoveMatchingFiles637953064190000000__Normal": "dotnet test --runtime win-x64 --no-build --filter \"FullyQualifiedName~Adaptation._Tests.Extract.Staging.v2_43_0 & ClassName~MESAFIBACKLOG & Name~Staging__v2_43_0__MESAFIBACKLOG__MoveMatchingFiles637953064190000000__Normal\" -- TestRunParameters.Parameter(name=\\\"WaitFor\\\", value=\\\"Debugger.IsAttached\\\")", "HA-Extract.Staging.v2_43_0-BACKLOG-Staging__v2_43_0__BACKLOG__pcl637812984345592512__MinFileLength": "dotnet test --filter \"FullyQualifiedName~Adaptation._Tests.Extract.Staging.v2_43_0 & ClassName~BACKLOG & Name~Staging__v2_43_0__BACKLOG__pcl637812984345592512__MinFileLength\" -- TestRunParameters.Parameter(name=\\\"WaitFor\\\", value=\\\"Debugger.IsAttached\\\")", "Alpha": "ABCDEFGHIJKLMNOPQRSTUVWXYZ", - "nuget-clear": "dotnet nuget locals all --clear", - "build": "dotnet build --runtime win-x64 --self-contained", - "build-Package-Management": "dotnet build --runtime win-x64 --self-contained --source https://packagemanagement.eu.infineon.com:4430/api/v2/", - "build-nuget-And-Package-Management": "dotnet build --runtime win-x64 --self-contained --source https://api.nuget.org/v3/index.json --source https://packagemanagement.eu.infineon.com:4430/api/v2/", - "build-All-Sources": "dotnet build --runtime win-x64 --self-contained --source https://api.nuget.org/v3/index.json --source https://packagemanagement.eu.infineon.com:4430/api/v2/ --source https://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json --source http://192.168.0.73:5002/v3/index.json", - "dotnet-format": "dotnet format --report .vscode --verbosity detailed --severity warn", - "MSBuild": "\"C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe\" /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 /detailedsummary /consoleloggerparameters:PerformanceSummary;ErrorsOnly; /property:Configuration=Debug;TargetFrameworkVersion=v4.8 ../MESAFIBACKLOG.csproj", - "pull": "git pull", + "kanbn.board": "kanbn board", + "kanbn.board.json": "kanbn board -j > .kanbn/board.json", "garbage-collect": "git gc" } } \ No newline at end of file diff --git a/MESAFIBACKLOG.csproj b/MESAFIBACKLOG.csproj index 75488cb..8783039 100644 --- a/MESAFIBACKLOG.csproj +++ b/MESAFIBACKLOG.csproj @@ -107,9 +107,7 @@ - - @@ -177,11 +175,14 @@ - 2.49.2 + 2.52.0 16.205.1 + + 5.2.7 + 6.0.3 diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs index 3db86fa..3fdf4eb 100644 --- a/Properties/AssemblyInfo.cs +++ b/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("2.49.2.0")] -[assembly: AssemblyFileVersion("2.49.2.0")] +[assembly: AssemblyVersion("2.52.2.0")] +[assembly: AssemblyFileVersion("2.52.2.0")]