aboutsummaryrefslogtreecommitdiff
path: root/sandbox/testAppNevena/Front/node_modules/node-gyp/test
diff options
context:
space:
mode:
Diffstat (limited to 'sandbox/testAppNevena/Front/node_modules/node-gyp/test')
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/common.js3
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_BuildTools_minimal.txt1
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Community_workload.txt1
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Express.txt1
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Unusable.txt1
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_BuildTools_minimal.txt1
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_Community_workload.txt1
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_Preview.txt1
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/ca-bundle.crt40
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/ca.crt21
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/nodedir/include/node/config.gypi6
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/server.crt21
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/server.key27
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/test-charmap.py31
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/process-exec-sync.js140
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/simple-proxy.js27
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-addon.js150
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-configure-python.js82
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-create-config-gypi.js70
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-download.js207
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-accessible-sync.js84
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-node-directory.js119
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-python.js226
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-visualstudio.js676
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-install.js46
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-options.js31
-rw-r--r--sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-process-release.js434
27 files changed, 2448 insertions, 0 deletions
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/common.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/common.js
new file mode 100644
index 00000000..b714ee29
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/common.js
@@ -0,0 +1,3 @@
+const envPaths = require('env-paths')
+
+module.exports.devDir = () => envPaths('node-gyp', { suffix: '' }).cache
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_BuildTools_minimal.txt b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_BuildTools_minimal.txt
new file mode 100644
index 00000000..244f6b07
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_BuildTools_minimal.txt
@@ -0,0 +1 @@
+[{"path":"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\BuildTools","version":"15.9.28307.665","packages":["Microsoft.VisualStudio.Product.BuildTools","Microsoft.VisualStudio.Component.VC.CoreIde","Microsoft.VisualStudio.VC.Ide.Pro","Microsoft.VisualStudio.VC.Ide.Pro.Resources","Microsoft.VisualStudio.VC.Templates.Pro","Microsoft.VisualStudio.VC.Templates.Pro.Resources","Microsoft.VisualStudio.VC.Items.Pro","Microsoft.VisualStudio.PackageGroup.VC.CoreIDE.Reduced","Microsoft.VisualStudio.VC.Ide.MDD","Microsoft.VisualStudio.VC.Ide.x64","Microsoft.VisualStudio.PackageGroup.VC.CoreIDE.Express","Microsoft.VisualStudio.PackageGroup.Debugger.Script","Microsoft.VisualStudio.JavaScript.LanguageService","Microsoft.VisualStudio.JavaScript.LanguageService.Resources","Microsoft.VisualStudio.Debugger.Script.Msi","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualStudio.VC.Ide.WinXPlus","Microsoft.VisualStudio.VC.Ide.Dskx","Microsoft.VisualStudio.VC.Ide.Dskx.Resources","Microsoft.VisualStudio.VC.Ide.Core","Microsoft.VisualStudio.VC.Ide.Core.Resources","Microsoft.VisualStudio.VC.Ide.Base","Microsoft.VisualStudio.VC.Ide.LanguageService","Microsoft.VisualStudio.VC.Ide.ResourceEditor","Microsoft.VisualStudio.VC.Ide.ResourceEditor.Resources","Microsoft.VisualStudio.VC.Ide.ProjectSystem","Microsoft.VisualStudio.VC.Ide.ProjectSystem.Resources","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine.Resources","Microsoft.VisualStudio.VC.Ide.LanguageService.Resources","Microsoft.VisualStudio.VC.Ide.Base.Resources","Microsoft.VisualStudio.PackageGroup.Core","Microsoft.VisualStudio.TestTools.TeamFoundationClient","Microsoft.VisualStudio.PackageGroup.Debugger.Core","Microsoft.VisualStudio.Debugger.VSCodeDebuggerHost","Microsoft.VisualStudio.VC.Ide.Debugger","Microsoft.VisualStudio.VC.Ide.Debugger.Resources","Microsoft.VisualStudio.VC.Ide.Common","Microsoft.VisualStudio.VC.Ide.Common.Resources","Microsoft.VisualStudio.Debugger.Parallel","Microsoft.VisualStudio.Debugger.Parallel.Resources","Microsoft.VisualStudio.Debugger.CollectionAgents","Microsoft.VisualStudio.Debugger.Managed","Microsoft.CodeAnalysis.VisualStudio.Setup.Resources","Microsoft.CodeAnalysis.VisualStudio.Setup","Microsoft.CodeAnalysis.ExpressionEvaluator.Resources","Microsoft.CodeAnalysis.ExpressionEvaluator","Microsoft.VisualStudio.Debugger.Managed.Resources","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.Debugger","Microsoft.VisualStudio.VC.MSVCDis","Microsoft.VisualStudio.ScriptedHost","Microsoft.VisualStudio.ScriptedHost.Targeted","Microsoft.VisualStudio.ScriptedHost.Resources","Microsoft.IntelliTrace.DiagnosticsHub","Microsoft.VisualStudio.Debugger.Resources","Microsoft.PackageGroup.ClientDiagnostics","Microsoft.VisualStudio.AppResponsiveness","Microsoft.VisualStudio.AppResponsiveness.Targeted","Microsoft.VisualStudio.AppResponsiveness.Resources","Microsoft.VisualStudio.ClientDiagnostics","Microsoft.VisualStudio.ClientDiagnostics.Targeted","Microsoft.VisualStudio.ClientDiagnostics.Resources","Microsoft.VisualStudio.PackageGroup.CommunityCore","Microsoft.VisualStudio.ProjectSystem.Full","Microsoft.VisualStudio.ProjectSystem","Microsoft.VisualStudio.Community.x86","Microsoft.VisualStudio.Community.x64","Microsoft.VisualStudio.Community","Microsoft.IntelliTrace.CollectorCab","Microsoft.VisualStudio.Community.Resources","Microsoft.VisualStudio.WebSiteProject.DTE","Microsoft.MSHtml","Microsoft.VisualStudio.Community.Msi.Resources","Microsoft.VisualStudio.Community.Msi","Microsoft.VisualStudio.MinShell.Interop.Msi","Microsoft.VisualStudio.PackageGroup.CoreEditor","PortableFacades","Microsoft.VisualStudio.VirtualTree","Microsoft.VisualStudio.PackageGroup.Progression","Microsoft.VisualStudio.PerformanceProvider","Microsoft.VisualStudio.GraphModel","Microsoft.VisualStudio.GraphProvider","Microsoft.DiaSymReader","Microsoft.VisualStudio.TextMateGrammars","Microsoft.VisualStudio.PackageGroup.TeamExplorer","Microsoft.TeamFoundation.OfficeIntegration","Microsoft.TeamFoundation.OfficeIntegration.Resources","Microsoft.VisualStudio.TeamExplorer","Microsoft.ServiceHub","Microsoft.VisualStudio.ProjectServices","Microsoft.VisualStudio.SLNX.VSIX","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.PackageGroup.MinShell","Microsoft.VisualStudio.MinShell.Msi","Microsoft.VisualStudio.MinShell.Msi.Resources","Microsoft.VisualStudio.MinShell.Interop","Microsoft.VisualStudio.Log","Microsoft.VisualStudio.Log.Targeted","Microsoft.VisualStudio.Log.Resources","Microsoft.VisualStudio.Finalizer","Microsoft.VisualStudio.CoreEditor","Microsoft.VisualStudio.Connected","Microsoft.VisualStudio.Connected.Resources","Microsoft.VisualStudio.MinShell","Microsoft.VisualStudio.MinShell.Platform","Microsoft.VisualStudio.MinShell.Platform.Resources","Microsoft.VisualStudio.MefHosting","Microsoft.VisualStudio.MefHosting.Resources","Microsoft.VisualStudio.Initializer","Microsoft.VisualStudio.ExtensionManager","Microsoft.VisualStudio.Editors","Microsoft.Net.4.TargetingPack","Microsoft.VisualStudio.Component.Windows10SDK.17134","Win10SDK_10.0.17134","Microsoft.VisualStudio.Component.VC.Tools.x86.x64","Microsoft.VisualCpp.CodeAnalysis.Extensions","Microsoft.VisualCpp.CodeAnalysis.Extensions.X86","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86.Resources","Microsoft.VisualCpp.CodeAnalysis.Extensions.X64","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64.Resources","Microsoft.VisualStudio.Component.Static.Analysis.Tools","Microsoft.VisualStudio.StaticAnalysis","Microsoft.VisualStudio.StaticAnalysis.Resources","Microsoft.VisualCpp.Tools.HostX64.TargetX86","Microsoft.VisualCpp.VCTip.HostX64.TargetX86","Microsoft.VisualCpp.Tools.HostX64.TargetX86.Resources","Microsoft.VisualCpp.Tools.HostX64.TargetX64","Microsoft.VisualCpp.VCTip.HostX64.TargetX64","Microsoft.VisualCpp.Tools.HostX64.TargetX64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX64","Microsoft.VisualCpp.Premium.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64.Resources","Microsoft.VisualCpp.PGO.X86","Microsoft.VisualCpp.PGO.X64","Microsoft.VisualCpp.PGO.Headers","Microsoft.VisualCpp.CRT.x86.Store","Microsoft.VisualCpp.CRT.x86.OneCore.Desktop","Microsoft.VisualCpp.CRT.x64.Store","Microsoft.VisualCpp.CRT.x64.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.x86.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.x64.OneCore.Desktop","Microsoft.VisualCpp.CRT.ClickOnce.Msi","Microsoft.VisualStudio.PackageGroup.VC.Tools.x86","Microsoft.VisualCpp.Tools.HostX86.TargetX64","Microsoft.VisualCpp.VCTip.hostX86.targetX64","Microsoft.VisualCpp.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Tools.HostX86.TargetX86","Microsoft.VisualCpp.VCTip.hostX86.targetX86","Microsoft.VisualCpp.Tools.HostX86.TargetX86.Resources","Microsoft.VisualCpp.Tools.Core.Resources","Microsoft.VisualCpp.Tools.Core.x86","Microsoft.VisualCpp.Tools.Common.Utils","Microsoft.VisualCpp.Tools.Common.Utils.Resources","Microsoft.VisualCpp.DIA.SDK","Microsoft.VisualCpp.CRT.x86.Desktop","Microsoft.VisualCpp.CRT.x64.Desktop","Microsoft.VisualCpp.CRT.Source","Microsoft.VisualCpp.CRT.Redist.X86","Microsoft.VisualCpp.CRT.Redist.X64","Microsoft.VisualCpp.CRT.Redist.Resources","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.Redist.14","Microsoft.VisualCpp.Redist.14","Microsoft.VisualCpp.CRT.Headers","Microsoft.VisualStudio.VC.MSBuild.X86","Microsoft.VisualStudio.VC.MSBuild.X64","Microsoft.VS.VC.MSBuild.X64.Resources","Microsoft.VisualStudio.VC.MSBuild.Base","Microsoft.VisualStudio.VC.MSBuild.Base.Resources","Microsoft.VisualStudio.VC.MSBuild.ARM","Microsoft.VisualStudio.Workload.MSBuildTools","Microsoft.VisualStudio.Component.CoreBuildTools","Microsoft.VisualStudio.Setup.Configuration","Microsoft.VisualStudio.PackageGroup.VsDevCmd","Microsoft.VisualStudio.VsDevCmd.Ext.NetFxSdk","Microsoft.VisualStudio.VsDevCmd.Core.WinSdk","Microsoft.VisualStudio.VsDevCmd.Core.DotNet","Microsoft.VisualStudio.VC.DevCmd","Microsoft.VisualStudio.VC.DevCmd.Resources","Microsoft.VisualStudio.BuildTools.Resources","Microsoft.VisualStudio.Net.Eula.Resources","Microsoft.Build.Dependencies","Microsoft.Build.FileTracker.Msi","Microsoft.Component.MSBuild","Microsoft.PythonTools.BuildCore.Vsix","Microsoft.NuGet.Build.Tasks","Microsoft.VisualStudio.Component.Roslyn.Compiler","Microsoft.CodeAnalysis.Compilers.Resources","Microsoft.CodeAnalysis.Compilers","Microsoft.Net.PackageGroup.4.6.1.Redist","Microsoft.VisualStudio.NativeImageSupport","Microsoft.Build"]}]
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Community_workload.txt b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Community_workload.txt
new file mode 100644
index 00000000..dd5e77da
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Community_workload.txt
@@ -0,0 +1 @@
+[{"path":"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community","version":"15.9.28307.665","packages":["Microsoft.VisualStudio.Component.Windows10SDK.IpOverUsb","Win10SDK_IpOverUsb","Microsoft.VisualStudio.Component.VC.ATL.ARM64","Microsoft.VisualCpp.ATL.ARM64","Microsoft.VisualStudio.Component.VC.ATL.ARM","Microsoft.VisualCpp.ATL.ARM","Microsoft.VisualStudio.Component.VC.Tools.ARM","Microsoft.VisualCpp.Tools.HostX64.TargetX86.Resources","Microsoft.VisualStudio.Graphics.Analyzer.Resources","Microsoft.Icecap.Analysis","Microsoft.VisualCpp.CRT.Redist.arm.OneCore.Desktop","Microsoft.VisualCpp.CRT.arm.Store","Microsoft.VisualCpp.CRT.arm.Desktop","Microsoft.VisualStudio.PackageGroup.VC.Tools.x64.ARM","Microsoft.VisualCpp.Premium.Tools.Hostx86.Targetarm","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetARM.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetARM","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetARM.Resources","Microsoft.VisualCpp.Premium.Tools.ARM.Base","Microsoft.VisualCpp.Premium.Tools.ARM.Base.Resources","Microsoft.VisualCpp.PGO.ARM","Microsoft.VisualCpp.Tools.HostX64.TargetX64","Microsoft.VisualStudio.Product.Community","Microsoft.VisualCpp.Tools.Hostx86.Targetarm","Microsoft.VisualStudio.Component.VC.Tools.ARM64","Microsoft.VisualStudio.VC.MSBuild.Arm64","Microsoft.VisualCpp.CRT.Redist.ARM64.OneCore.Desktop","Microsoft.VisualCpp.VCTip.HostX64.TargetX64","Microsoft.VisualCpp.CRT.ARM64.OneCore.Desktop","Microsoft.VisualCpp.CRT.ARM64.Store","Microsoft.VisualCpp.CRT.ARM64.Desktop","Microsoft.VisualCpp.Tools.HostX64.TargetX64.Resources","Microsoft.Icecap.Analysis.Resources","Microsoft.VisualCpp.VCTip.hostX86.targetARM","Microsoft.VisualStudio.PackageGroup.VC.Tools.x64.ARM64","Microsoft.VisualCpp.Tools.Core","Microsoft.VisualCpp.PGO.ARM64","Microsoft.VisualCpp.Premium.Tools.Hostx86.Targetarm64","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetARM64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetARM64","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetARM64.Resources","Microsoft.VisualCpp.Premium.Tools.ARM64.Base","Microsoft.VisualCpp.Tools.HostX86.TargetX64","Microsoft.VisualCpp.Tools.HostX86.TargetARM.Resources","Microsoft.VisualCpp.CRT.Redist.ARM64","Microsoft.VisualCpp.CRT.arm.OneCore.Desktop","Microsoft.VisualCpp.CodeAnalysis.Extensions.X86","Microsoft.VisualCpp.CodeAnalysis.Extensions.X64","Microsoft.VisualCpp.VCTip.HostX64.TargetX86","Component.WixToolset.VisualStudioExtension.Dev15","WixToolset.VisualStudioExtension.Dev15","Microsoft.VisualCpp.MFC.X64","Microsoft.VisualCpp.ATL.Headers","Microsoft.VisualStudio.Component.VC.CMake.Project","Microsoft.VisualStudio.VC.CMake","Microsoft.VisualStudio.VC.CMake.Project","Microsoft.VisualStudio.Component.Windows10SDK.17763","Microsoft.VisualStudio.VC.MSBuild.Base.Resources","MLGen","Microsoft.VisualStudio.Graphics.Analyzer","Microsoft.VisualStudio.Component.TestTools.Core","Microsoft.VisualCpp.Tools.Core.x86","Microsoft.VisualCpp.CRT.x86.OneCore.Desktop","Microsoft.VisualCpp.DIA.SDK","Microsoft.VisualCpp.CRT.x64.OneCore.Desktop","Microsoft.VisualCpp.CRT.ClickOnce.Msi","Microsoft.VisualStudio.NuGet.Licenses","SQLCommon","Microsoft.VisualStudio.VC.MSBuild.X86","Microsoft.VisualCpp.Tools.HostX64.TargetARM","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64.Resources","Microsoft.VisualCpp.HTMLHelpWorkshop.Msi","Microsoft.Icecap.Collection.Msi.Resources","Microsoft.VisualCpp.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.VCTip.hostX64.targetARM","Microsoft.VisualStudio.VC.Ide.Dskx.Resources","Microsoft.VisualStudio.VC.Templates.UnitTest","Microsoft.VisualStudio.TestTools.TestPlatform.V1.CPP","Microsoft.VisualStudio.VC.Ide.Core","Microsoft.VisualStudio.Graphics.Appid","Microsoft.VisualCpp.ATL.Source","Microsoft.VisualStudio.VC.Ide.Core.Resources","Microsoft.VisualStudio.Debugger.ImmersiveActivateHelper.Msi","Microsoft.VisualStudio.Debugger.JustInTime","Microsoft.DiagnosticsHub.CpuSampling","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Common","Microsoft.VisualStudio.TestTools.TP.Legacy.Common.Res","Microsoft.VisualStudio.ProTools.Resources","Microsoft.VisualStudio.Community.Msi","Microsoft.VisualCpp.Tools.HostX64.TargetARM.Resources","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Agent","Microsoft.Component.MSBuild","Microsoft.VisualStudio.Graphics.Msi","Microsoft.VisualStudio.WebToolsExtensions","Microsoft.VisualCpp.Tools.Hostx86.Targetarm64","Microsoft.VisualStudio.TextTemplating.MSBuild","Microsoft.VisualCpp.VCTip.hostX86.targetARM64","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine","Microsoft.VisualCpp.Tools.HostX86.TargetARM64.Resources","Microsoft.VisualStudio.RazorExtension","Microsoft.VisualCpp.CRT.x86.Store","Microsoft.VisualCpp.Tools.Core.Resources","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualCpp.MFC.Source","Microsoft.VisualCpp.CRT.x86.Desktop","Microsoft.VisualStudio.VC.MSBuild.X64","Microsoft.VisualStudio.VC.Items.Pro","Microsoft.VisualStudio.Graphics.Viewers","Microsoft.VisualCpp.CRT.x64.Desktop","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86.Resources","Microsoft.VisualCpp.MFC.Redist.X86","Microsoft.VisualStudio.WebToolsExtensions.Chip","Microsoft.DiagnosticsHub.Runtime.Resources","Microsoft.DiagnosticsHub.CpuSampling.Targeted","Microsoft.VisualStudio.VC.Ide.LanguageService.Resources","Microsoft.VisualStudio.Component.VC.DiagnosticTools","Microsoft.VisualCpp.MFC.Redist.X64","Microsoft.VisualStudio.PackageGroup.TestTools.Native","Microsoft.VisualStudio.Graphics.Viewers.Resources","Microsoft.VisualCpp.MFC.MBCS","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.Component.TextTemplating","Win10SDK_10.0.17763","Microsoft.VisualStudio.VC.Ide.Base.Resources","Microsoft.VisualCpp.MFC.MBCS.X64","Microsoft.VisualStudio.PackageGroup.TestTools.CodeCoverage","Microsoft.VisualStudio.Graphics.EnableTools","Microsoft.VisualStudio.Graphics.Appid.Resources","Microsoft.VisualStudio.VC.MSBuild.Base","Microsoft.VisualStudio.VC.MSBuild.ARM","Microsoft.VisualCpp.MFC.Headers","Microsoft.VisualCpp.CRT.Redist.x86.OneCore.Desktop","Microsoft.VisualCpp.Tools.HostX86.TargetX86","Microsoft.VisualStudio.VC.Ide.Base","Microsoft.VisualStudio.Graphics.Analyzer.Targeted","Microsoft.VisualCpp.CRT.Headers","Microsoft.DiagnosticsHub.Runtime.Targeted","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86","Microsoft.VisualCpp.Tools.HostX64.TargetARM64","Microsoft.VisualCpp.VCTip.hostX64.targetARM64","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86.Resources","Microsoft.Icecap.Collection.Msi","Microsoft.VisualCpp.ATL.X86","Microsoft.VisualCpp.Tools.HostX64.TargetARM64.Resources","Microsoft.VisualStudio.Component.VC.ATLMFC","Microsoft.VisualCpp.VCTip.hostX86.targetX86","Microsoft.Icecap.Collection.Msi.Resources.Targeted","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86","Microsoft.VisualStudio.Component.Graphics.Tools","Microsoft.VisualStudio.WebTools.Resources","Microsoft.VisualCpp.ATL.X64","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86.Resources","Microsoft.VisualStudio.Component.Graphics.Win81","Microsoft.VisualStudio.VC.Ide.MDD","Microsoft.VisualStudio.VC.Ide.ResourceEditor","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64","Microsoft.Icecap.Analysis.Resources.Targeted","Microsoft.VisualStudio.Debugger.Script.Msi","Microsoft.VisualStudio.Component.VC.CoreIde","Microsoft.VisualStudio.VC.Ide.MFC.Resources","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualStudio.PackageGroup.VC.Tools.x86","Microsoft.VisualStudio.TextTemplating.Core","Microsoft.VisualStudio.JavaScript.LanguageService","Microsoft.VisualStudio.VC.Ide.ResourceEditor.Resources","Microsoft.VisualStudio.VC.Ide.ProjectSystem.Resources","Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest","Microsoft.VisualStudio.VC.Ide.ProjectSystem","Microsoft.VisualStudio.VC.Ide.Dskx","Microsoft.VisualCpp.Tools.HostX86.TargetX86.Resources","Microsoft.CredentialProvider","Microsoft.VisualStudio.VC.Templates.Desktop","Microsoft.VisualStudio.VC.Ide.Pro.Resources","Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Core","Microsoft.VisualStudio.TextTemplating.Integration","Microsoft.VisualStudio.Component.NuGet","Microsoft.VisualStudio.PackageGroup.VC.CoreIDE.Reduced","Microsoft.VisualCpp.PGO.Headers","Microsoft.DiagnosticsHub.Collection","Microsoft.Icecap.Collection.Msi.Targeted","Microsoft.VisualStudio.VC.Ide.LanguageService","Microsoft.VisualStudio.WebTools.WSP.FSA","Microsoft.VisualStudio.Graphics.Msi","Microsoft.VisualCpp.CRT.Redist.X86","Microsoft.VisualStudio.Branding.Community","Microsoft.VisualStudio.VC.Ide.x64","Microsoft.VisualStudio.WebToolsExtensions.Common","Microsoft.VisualStudio.WebTools.MSBuild","Microsoft.VisualStudio.NuGet.Core","Microsoft.DiagnosticsHub.Collection.Service","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine.Resources","Microsoft.CodeAnalysis.ExpressionEvaluator","Microsoft.VisualCpp.CRT.Redist.X64","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VS.VC.MSBuild.X64.Resources","Microsoft.VisualCpp.CRT.Source","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Tips.Resources","Microsoft.VisualStudio.VC.Ide.WinXPlus","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.Redist.14.Latest","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX64","Microsoft.VisualCpp.CRT.Redist.Resources","Microsoft.VisualCpp.Redist.14.Latest","Microsoft.Net.4.TargetingPack","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualCpp.CRT.x64.Store","Microsoft.VisualStudio.VC.Ide.Debugger.Resources","Microsoft.DiaSymReader.Native","Microsoft.VisualCpp.Redist.14","Microsoft.VisualCpp.Redist.14","Microsoft.VisualStudio.StaticAnalysis","Microsoft.VisualStudio.TestTools.TeamFoundationClient","Microsoft.VisualStudio.TestTools.TestPlatform.V1.CLI","Microsoft.VisualStudio.VC.Ide.Common","Microsoft.VisualStudio.Community.Extra.Resources","Microsoft.VisualStudio.Component.Roslyn.LanguageServices","Microsoft.DiagnosticsHub.Collection.StopService.Install","Microsoft.VisualStudio.InteractiveWindow","Microsoft.PackageGroup.DiagnosticsHub.Platform","Microsoft.VisualStudio.StaticAnalysis.Resources","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.VC.Ide.Common.Resources","Microsoft.VisualCpp.Tools.HostX64.TargetX86","Microsoft.VisualStudio.VC.DevCmd","Microsoft.VisualStudio.Community.Extra","Microsoft.VisualStudio.TestTools.TP.Legacy.Tips.Msi","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.TestTools","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Core.Resources","Microsoft.VisualStudio.PackageGroup.TestTools.Core","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.V2.CLI","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.V1.CLI","Microsoft.VisualStudio.Component.VC.Tools.x86.x64","Microsoft.VisualStudio.TestTools.Pex.Common","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.Legacy","Microsoft.VisualStudio.PackageGroup.MinShell.Interop","Microsoft.CodeAnalysis.ExpressionEvaluator.Resources","Microsoft.VisualCpp.CodeAnalysis.Extensions","Microsoft.VisualStudio.PackageGroup.CoreEditor","Microsoft.VisualStudio.Component.Roslyn.Compiler","Microsoft.VisualStudio.ScriptedHost.Targeted","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Professional","Microsoft.VisualStudio.Debugger.Resources","Microsoft.VisualStudio.Debugger.Parallel","Microsoft.VisualStudio.Debugger.Parallel.Resources","Microsoft.VisualCpp.PGO.X64","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.IDE","Microsoft.VisualStudio.GraphModel","Microsoft.VisualStudio.PackageGroup.TestTools.DataCollectors","sqlsysclrtypes","Microsoft.VisualStudio.ProTools","Component.Microsoft.VisualStudio.RazorExtension","Microsoft.VisualStudio.TestTools.TestPlatform.V2.CLI","Microsoft.Build.Dependencies","Microsoft.VisualStudio.WebTools.WSP.FSA.Resources","Microsoft.VisualStudio.Component.Static.Analysis.Tools","Microsoft.VisualStudio.VC.Ide.ATL.Resources","Microsoft.VisualStudio.VC.Templates.UnitTest.Resources","Microsoft.VisualStudio.Debugger.Managed","Microsoft.VisualStudio.Workload.NativeDesktop","Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest","Microsoft.VisualStudio.Debugger.JustInTime.Msi","Microsoft.Net.PackageGroup.4.6.1.Redist","Microsoft.VisualStudio.Debugger.VSCodeDebuggerHost","sqlsysclrtypes","Microsoft.VisualStudio.Debugger.Managed.Resources","Microsoft.VisualStudio.TestTools.TP.Legacy.Tips.Common","Microsoft.VisualStudio.VC.Ide.Debugger","Microsoft.VisualStudio.AppResponsiveness","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.TestTools.TestWIExtension","Microsoft.VisualStudio.VC.Ide.Pro","Microsoft.VisualStudio.PackageGroup.Debugger.Core","Microsoft.VisualStudio.PackageGroup.VC.CoreIDE.Express","Microsoft.VisualStudio.WebTools","Microsoft.VisualStudio.Component.VC.Redist.14.Latest","Microsoft.VisualStudio.VsDevCmd.Core.WinSdk","Microsoft.VisualStudio.TestTools.TestPlatform.IDE","Microsoft.VisualStudio.TextTemplating.Integration.Resources","Microsoft.VisualStudio.Debugger.CollectionAgents","Microsoft.VisualStudio.Debugger","Microsoft.VisualStudio.PackageGroup.Debugger.Script","Microsoft.VisualStudio.VC.MSVCDis","Microsoft.VisualStudio.ScriptedHost","Microsoft.VisualStudio.ClientDiagnostics.Targeted","Microsoft.VisualStudio.ScriptedHost.Resources","Microsoft.TeamFoundation.OfficeIntegration.Resources","Microsoft.IntelliTrace.DiagnosticsHub","Microsoft.VisualStudio.JavaScript.LanguageService.Resources","Microsoft.VisualStudio.VC.Ide.TestAdapterForGoogleTest","Microsoft.VisualStudio.PackageGroup.Community","Microsoft.VisualStudio.ClientDiagnostics","Microsoft.VisualStudio.Component.Windows10SDK.17134","Microsoft.VisualStudio.PackageGroup.Core","PortableFacades","Microsoft.DiaSymReader","Microsoft.DiagnosticsHub.Runtime","Microsoft.VisualStudio.Component.CoreEditor","Microsoft.VisualStudio.AppResponsiveness.Targeted","Microsoft.VisualStudio.AppResponsiveness.Resources","Microsoft.VisualStudio.Community","Microsoft.TeamFoundation.OfficeIntegration","Microsoft.VisualStudio.WebSiteProject.DTE","Microsoft.VisualStudio.ClientDiagnostics.Resources","Microsoft.VisualStudio.ProjectSystem.Full","Microsoft.VisualStudio.ProjectSystem","Microsoft.VisualCpp.Tools.Common.UtilsPrereq","Microsoft.IntelliTrace.CollectorCab","Microsoft.VisualStudio.Community.Resources","Microsoft.VisualCpp.Tools.Common.Utils","Microsoft.ServiceHub","Microsoft.VisualStudio.Editors","Microsoft.VisualStudio.TeamExplorer","Microsoft.CodeAnalysis.VisualStudio.InteractiveComponents.Resources","Microsoft.VisualStudio.MinShell.Interop.Msi","Microsoft.VisualStudio.GraphProvider","Microsoft.CodeAnalysis.VisualStudio.InteractiveComponents","Microsoft.CodeAnalysis.VisualStudio.Setup.Interactive.Resources","Microsoft.CodeAnalysis.VisualStudio.Setup.Resources","Microsoft.VisualStudio.Community.x86","Microsoft.VisualStudio.Community.x64","Microsoft.CodeAnalysis.VisualStudio.Setup","Microsoft.NuGet.Build.Tasks","Microsoft.PackageGroup.ClientDiagnostics","Microsoft.CodeAnalysis.Compilers.Resources","Microsoft.CodeAnalysis.Compilers","Microsoft.VisualCpp.Tools.Common.Utils.Resources","Microsoft.VisualStudio.Net.Eula.Resources","Microsoft.VisualStudio.PackageGroup.CommunityCore","Microsoft.Build","Microsoft.VisualStudio.VC.Ide.TestAdapterForBoostTest","Microsoft.VisualStudio.VC.Ide.ATL","Microsoft.VisualStudio.TextMateGrammars","Microsoft.VisualStudio.Workload.CoreEditor","Microsoft.VisualStudio.MinShell.Interop","Microsoft.Build.FileTracker.Msi","Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core","Microsoft.MSHtml","Microsoft.VisualStudio.Community.Msi.Resources","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Tips","Microsoft.VisualStudio.Devenv.Msi","Microsoft.VisualStudio.Component.VC.ATL","Microsoft.VisualStudio.VC.Templates.Pro","Microsoft.VisualCpp.CRT.Redist.x64.OneCore.Desktop","Microsoft.VisualStudio.SLNX.VSIX","Microsoft.VisualStudio.CoreEditor","Win10SDK_10.0.17134","Microsoft.VisualStudio.VsDevCmd.Ext.NetFxSdk","Microsoft.VisualStudio.Component.Debugger.JustInTime","Microsoft.VisualStudio.VC.Ide.MFC","Microsoft.VisualStudio.VsDevCmd.Core.DotNet","Microsoft.VisualStudio.PackageGroup.VsDevCmd","Microsoft.VisualStudio.Finalizer","Microsoft.VisualStudio.VirtualTree","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.ProjectServices","Microsoft.VisualStudio.VC.DevCmd.Resources","Microsoft.VisualStudio.MinShell","Microsoft.VisualStudio.PackageGroup.Progression","Microsoft.VisualStudio.PerformanceProvider","Microsoft.VisualStudio.Connected.Resources","Microsoft.VisualStudio.Log","Microsoft.VisualStudio.PackageGroup.TeamExplorer","Microsoft.VisualStudio.Log.Targeted","Microsoft.VisualStudio.MinShell.Platform","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.VC.Templates.Pro.Resources","Microsoft.VisualStudio.Devenv","Microsoft.VisualCpp.VCTip.hostX86.targetX64","Microsoft.VisualStudio.Devenv.Resources","Microsoft.VisualStudio.MinShell.Platform.Resources","Microsoft.VisualStudio.Connected","Microsoft.VisualStudio.MefHosting","Microsoft.DiagnosticsHub.Collection.StopService.Uninstall","Microsoft.VisualStudio.PackageGroup.MinShell","Microsoft.VisualStudio.MefHosting.Resources","Microsoft.VisualCpp.MFC.X86","Microsoft.VisualStudio.Log.Resources","Microsoft.Icecap.Analysis.Targeted","Microsoft.VisualCpp.Premium.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64.Resources","Microsoft.VisualCpp.PGO.X86","Microsoft.VisualStudio.ExtensionManager","Microsoft.VisualStudio.MinShell.x86","Microsoft.VisualStudio.MinShell.Msi","Microsoft.VisualStudio.Setup.Configuration","Microsoft.VisualStudio.LanguageServer","Microsoft.VisualStudio.NativeImageSupport","Microsoft.VisualStudio.MinShell.Msi.Resources","Microsoft.VisualStudio.Devenv.Config","Microsoft.VisualStudio.MinShell.Resources","Microsoft.VisualStudio.Initializer","Microsoft.Net.PackageGroup.4.6.Redist"]}]
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Express.txt b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Express.txt
new file mode 100644
index 00000000..c4b3b5f2
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Express.txt
@@ -0,0 +1 @@
+[{"path":"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\WDExpress","version":"15.9.28307.858","packages":["Microsoft.VisualStudio.Product.WDExpress","Microsoft.VisualStudio.Workload.WDExpress","Microsoft.VisualStudio.Component.Windows10SDK.17763","MLGen","Win10SDK_10.0.17763","Microsoft.VisualStudio.Component.Windows10SDK.14393","Win10SDK_10.0.14393.795","Microsoft.VisualStudio.VC.Items.Pro","Microsoft.VisualStudio.VC.Ide.Pro","Microsoft.VisualStudio.VC.Ide.Pro.Resources","Microsoft.VisualStudio.Component.VC.Tools.ARM64","Microsoft.VisualStudio.VC.MSBuild.Arm64","Microsoft.VisualCpp.CRT.Redist.ARM64.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.ARM64","Microsoft.VisualCpp.CRT.ARM64.OneCore.Desktop","Microsoft.VisualCpp.CRT.ARM64.Store","Microsoft.VisualCpp.CRT.ARM64.Desktop","Microsoft.VisualCpp.Tools.Hostx86.Targetarm64","Microsoft.VisualCpp.VCTip.hostX86.targetARM64","Microsoft.VisualCpp.Tools.HostX86.TargetARM64.Resources","Microsoft.VisualStudio.Component.VC.Tools.ARM","Microsoft.VisualCpp.Tools.Hostx86.Targetarm","Microsoft.VisualCpp.VCTip.hostX86.targetARM","Microsoft.VisualCpp.Tools.HostX86.TargetARM.Resources","Microsoft.VisualCpp.CRT.x86.Store","Microsoft.VisualCpp.CRT.x86.OneCore.Desktop","Microsoft.VisualCpp.CRT.x64.Store","Microsoft.VisualCpp.CRT.x64.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.arm.OneCore.Desktop","Microsoft.VisualCpp.CRT.arm.OneCore.Desktop","Microsoft.VisualCpp.CRT.arm.Store","Microsoft.VisualCpp.CRT.arm.Desktop","Microsoft.VisualStudio.VC.Templates.UnitTest","Microsoft.VisualStudio.TestTools.TestPlatform.V1.CPP","Microsoft.VisualStudio.VC.Templates.UnitTest.Resources","Microsoft.VisualStudio.VC.Templates.Desktop","Microsoft.VisualStudio.VC.Templates.Pro","Microsoft.VisualStudio.VC.Templates.Pro.Resources","Microsoft.VisualStudio.PackageGroup.VC.CoreIDE.Express","Microsoft.VisualStudio.PackageGroup.Debugger.Script","Microsoft.VisualStudio.JavaScript.LanguageService","Microsoft.VisualStudio.JavaScript.LanguageService.Resources","Microsoft.VisualStudio.Debugger.Script.Msi","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualStudio.VC.MSBuild.X64","Microsoft.VS.VC.MSBuild.X64.Resources","Microsoft.VisualStudio.VC.MSBuild.ARM","Microsoft.VisualStudio.VC.MSBuild.X86","Microsoft.VisualStudio.VC.MSBuild.Base","Microsoft.VisualStudio.VC.MSBuild.Base.Resources","Microsoft.VisualStudio.VC.Ide.WinXPlus","Microsoft.VisualStudio.VC.Ide.Dskx","Microsoft.VisualStudio.VC.Ide.Dskx.Resources","Microsoft.VisualStudio.VC.Ide.Core","Microsoft.VisualStudio.VC.Ide.Core.Resources","Microsoft.VisualStudio.VC.Ide.Base","Microsoft.VisualStudio.VC.Ide.Base.Resources","Microsoft.VisualStudio.Component.VC.CLI.Support","Microsoft.VisualCpp.CLI.X86","Microsoft.VisualCpp.CLI.X64","Microsoft.VisualCpp.CLI.Source","Microsoft.VisualCpp.CLI.ARM64","Microsoft.VisualCpp.CLI.ARM","Microsoft.VisualStudio.VC.Templates.CLR","Microsoft.VisualStudio.VC.Ide.LanguageService","Microsoft.VisualStudio.VC.Ide.ResourceEditor","Microsoft.VisualStudio.VC.Ide.ResourceEditor.Resources","Microsoft.VisualStudio.VC.Ide.ProjectSystem","Microsoft.VisualStudio.VC.Ide.ProjectSystem.Resources","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine.Resources","Microsoft.VisualStudio.VC.Ide.LanguageService.Resources","Microsoft.VisualStudio.VC.Templates.CLR.Resources","Microsoft.Component.VC.Runtime.OSSupport","Microsoft.Windows.UniversalCRT.Tools.Msi","Microsoft.Windows.UniversalCRT.Tools.Msi","Microsoft.Windows.UniversalCRT.ExtensionSDK.Msi","Microsoft.Windows.UniversalCRT.HeadersLibsSources.Msi","Microsoft.VisualStudio.PackageGroup.VC.Tools.x86","Microsoft.VisualCpp.Tools.HostX86.TargetX64","Microsoft.VisualCpp.VCTip.hostX86.targetX64","Microsoft.VisualCpp.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Tools.HostX86.TargetX86","Microsoft.VisualCpp.VCTip.hostX86.targetX86","Microsoft.VisualCpp.Tools.HostX86.TargetX86.Resources","Microsoft.VisualCpp.Tools.Core.Resources","Microsoft.VisualCpp.Tools.Core.x86","Microsoft.VisualCpp.Tools.Common.Utils","Microsoft.VisualCpp.Tools.Common.Utils.Resources","Microsoft.VisualCpp.DIA.SDK","Microsoft.VisualCpp.CRT.x86.Desktop","Microsoft.VisualCpp.CRT.x64.Desktop","Microsoft.VisualCpp.CRT.Source","Microsoft.VisualCpp.CRT.Redist.X86","Microsoft.VisualCpp.CRT.Redist.X64","Microsoft.VisualCpp.CRT.Redist.Resources","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.CRT.Headers","Microsoft.Component.HelpViewer","Microsoft.HelpViewer","Microsoft.VisualStudio.Help.Configuration.Msi","Microsoft.VisualStudio.Component.SQL.DataSources","Microsoft.VisualStudio.Component.SQL.SSDT","Microsoft.VisualStudio.Component.SQL.CMDUtils","sqlcmdlnutils","Microsoft.VisualStudio.Component.Common.Azure.Tools","Microsoft.VisualStudio.Azure.CommonAzureTools","SSDT","Microsoft.VisualStudio.Component.SQL.ADAL","sql_adalsql","Microsoft.VisualStudio.Component.NuGet","Microsoft.CredentialProvider","Microsoft.VisualStudio.NuGet.Licenses","Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime","Microsoft.VisualStudio.Component.SQL.NCLI","sqllocaldb","sqlncli","Microsoft.VisualStudio.Component.EntityFramework","Microsoft.VisualStudio.PackageGroup.DslRuntime","Microsoft.VisualStudio.Dsl.Core","Microsoft.VisualStudio.Dsl.GraphObject","Microsoft.VisualStudio.Dsl.Core.Resources","Microsoft.VisualStudio.EntityFrameworkTools","Microsoft.VisualStudio.EntityFrameworkTools.Msi","Microsoft.VisualStudio.Component.Roslyn.LanguageServices","Microsoft.VisualStudio.InteractiveWindow","Microsoft.DiaSymReader.Native","Microsoft.VisualStudio.Component.Static.Analysis.Tools","Microsoft.VisualCpp.Redist.14","Microsoft.VisualCpp.Redist.14","Microsoft.VisualStudio.StaticAnalysis","Microsoft.VisualStudio.StaticAnalysis.Resources","Microsoft.CodeAnalysis.VisualStudio.InteractiveComponents.Resources","Microsoft.CodeAnalysis.VisualStudio.InteractiveComponents","Microsoft.CodeAnalysis.VisualStudio.Setup.Interactive.Resources","Microsoft.Net.ComponentGroup.TargetingPacks.Common","Microsoft.Net.Component.4.6.TargetingPack","Microsoft.Net.4.6.TargetingPack","Microsoft.Net.Component.4.5.2.TargetingPack","Microsoft.Net.4.5.2.TargetingPack","Microsoft.Net.Component.4.5.1.TargetingPack","Microsoft.Net.4.5.1.TargetingPack","Microsoft.Net.Component.4.5.TargetingPack","Microsoft.Net.4.5.TargetingPack","Microsoft.Net.Component.4.TargetingPack","Microsoft.Net.4.TargetingPack","Microsoft.Net.ComponentGroup.DevelopmentPrerequisites","Microsoft.Net.Component.4.6.1.TargetingPack","Microsoft.Net.4.6.1.TargetingPack","Microsoft.Net.Cumulative.TargetingPack.Resources","Microsoft.Net.Component.4.6.1.SDK","Microsoft.Net.4.6.1.SDK","Microsoft.VisualStudio.Component.TextTemplating","Microsoft.VisualStudio.TextTemplating.MSBuild","Microsoft.VisualStudio.TextTemplating.Integration","Microsoft.VisualStudio.TextTemplating.Core","Microsoft.VisualStudio.TextTemplating.Integration.Resources","Microsoft.VisualStudio.Component.VisualStudioData","Microsoft.VisualStudio.Component.SQL.CLR","Microsoft.VisualStudio.ProTools","sqlsysclrtypes","sqlsysclrtypes","SQLCommon","Microsoft.VisualStudio.ProTools.Resources","Microsoft.VisualStudio.XamlDiagnostics","Microsoft.VisualStudio.XamlDiagnostics.Resources","Microsoft.VisualStudio.XamlDesigner","Microsoft.VisualStudio.XamlDesigner.Resources","Microsoft.VisualStudio.XamlDesigner.Executables","Microsoft.VisualStudio.XamlShared","Microsoft.VisualStudio.XamlShared.Resources","Microsoft.VisualStudio.PackageGroup.TestTools.Managed","Microsoft.VisualStudio.PackageGroup.IntelliTrace.Core","Microsoft.IntelliTrace.Core","Microsoft.IntelliTrace.Core.Targeted","Microsoft.IntelliTrace.ProfilerProxy.Msi.x64","Microsoft.IntelliTrace.ProfilerProxy.Msi","Microsoft.VisualStudio.NuGet.Core","Microsoft.VisualStudio.TestWindow.SourceBasedTestDiscovery","Microsoft.VisualStudio.TestWindow.Dotnet","Microsoft.VisualStudio.TestTools.TestGeneration","Microsoft.VisualStudio.PackageGroup.TestTools.CodeCoverage","Microsoft.VisualStudio.PackageGroup.TestTools.Enterprise","Microsoft.VisualStudio.PackageGroup.TestTools.MSTestV2.Managed","Microsoft.VisualStudio.TestTools.MSTestV2.WizardExtension.UnitTest","Microsoft.VisualStudio.PackageGroup.TestTools.Core","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.V2.CLI","Microsoft.VisualStudio.TestTools.TestPlatform.V2.CLI","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.V1.CLI","Microsoft.VisualStudio.TestTools.TestPlatform.V1.CLI","Microsoft.VisualStudio.TestTools.Pex.Common","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.Legacy","Microsoft.VisualStudio.PackageGroup.MinShell.Interop","Microsoft.VisualStudio.TestTools.TP.Legacy.Tips.Msi","Microsoft.VisualStudio.TestTools.TP.Legacy.Tips.Common","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Tips","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Tips.Resources","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.TestTools","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Professional","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Common","Microsoft.VisualStudio.TestTools.TP.Legacy.Common.Res","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Core","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Core.Resources","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Agent","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.IDE","Microsoft.VisualStudio.TestTools.TestWIExtension","Microsoft.VisualStudio.TestTools.TestPlatform.IDE","Microsoft.VisualStudio.PackageGroup.TestTools.DataCollectors","Microsoft.Component.ClickOnce","Microsoft.VisualStudio.PackageGroup.ClickOnce.MSBuild","Microsoft.VisualCpp.CRT.ClickOnce.Msi","Microsoft.ClickOnce.SignTool.Msi","Microsoft.SQL.ClickOnceBootstrapper.Msi","Microsoft.Net.ClickOnceBootstrapper","Microsoft.ClickOnce.BootStrapper.Msi.Resources","Microsoft.ClickOnce.BootStrapper.Msi","Microsoft.VisualStudio.WebTools.WSP.FSA","Microsoft.VisualStudio.WebTools.WSP.FSA.Resources","Microsoft.VisualStudio.PackageGroup.Community","Microsoft.VisualStudio.Community.Extra.Resources","Microsoft.VisualStudio.Community.Extra","Microsoft.VisualStudio.PackageGroup.Core","Microsoft.VisualStudio.TestTools.TeamFoundationClient","Microsoft.VisualStudio.PackageGroup.Debugger.Core","Microsoft.VisualStudio.Debugger.VSCodeDebuggerHost","Microsoft.VisualStudio.VC.Ide.Debugger","Microsoft.VisualStudio.VC.Ide.Debugger.Resources","Microsoft.VisualStudio.VC.Ide.Common","Microsoft.VisualStudio.VC.Ide.Common.Resources","Microsoft.VisualStudio.Debugger.Parallel","Microsoft.VisualStudio.Debugger.Parallel.Resources","Microsoft.VisualStudio.Debugger.CollectionAgents","Microsoft.VisualStudio.Debugger.Managed","Microsoft.CodeAnalysis.VisualStudio.Setup.Resources","Microsoft.CodeAnalysis.VisualStudio.Setup","Microsoft.CodeAnalysis.ExpressionEvaluator.Resources","Microsoft.CodeAnalysis.ExpressionEvaluator","Microsoft.VisualStudio.Debugger.Managed.Resources","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.Debugger","Microsoft.VisualStudio.VC.MSVCDis","Microsoft.VisualStudio.ScriptedHost","Microsoft.VisualStudio.ScriptedHost.Targeted","Microsoft.VisualStudio.ScriptedHost.Resources","Microsoft.IntelliTrace.DiagnosticsHub","Microsoft.VisualStudio.Debugger.Resources","Microsoft.PackageGroup.ClientDiagnostics","Microsoft.VisualStudio.AppResponsiveness","Microsoft.VisualStudio.AppResponsiveness.Targeted","Microsoft.VisualStudio.AppResponsiveness.Resources","Microsoft.VisualStudio.ClientDiagnostics","Microsoft.VisualStudio.ClientDiagnostics.Targeted","Microsoft.VisualStudio.ClientDiagnostics.Resources","Microsoft.VisualStudio.PackageGroup.CommunityCore","Microsoft.VisualStudio.ProjectSystem.Full","Microsoft.VisualStudio.ProjectSystem","Microsoft.VisualStudio.Community.x86","Microsoft.VisualStudio.Community.x64","Microsoft.VisualStudio.Community","Microsoft.IntelliTrace.CollectorCab","Microsoft.VisualStudio.Community.Resources","Microsoft.VisualStudio.Net.Eula.Resources","Microsoft.VisualStudio.WebSiteProject.DTE","Microsoft.MSHtml","Microsoft.VisualStudio.Community.Msi.Resources","Microsoft.VisualStudio.Community.Msi","Microsoft.VisualStudio.MinShell.Interop.Msi","Microsoft.VisualStudio.Editors","Microsoft.VisualStudio.ClickOnce.Resources","Microsoft.VisualStudio.ClickOnce","Microsoft.Component.MSBuild","Microsoft.NuGet.Build.Tasks","Microsoft.VisualStudio.Component.Roslyn.Compiler","Microsoft.CodeAnalysis.Compilers.Resources","Microsoft.CodeAnalysis.Compilers","Microsoft.Net.PackageGroup.4.6.1.Redist","Microsoft.VisualStudio.TemplateEngine","Microsoft.VisualStudio.WebToolsExtensions.Common","Microsoft.NET.Sdk","Microsoft.VisualStudio.PackageGroup.TestTools.Templates.Managed","Microsoft.VisualStudio.TestTools.Templates.Managed","Microsoft.VisualStudio.TestTools.Templates.Managed.Resources","Microsoft.VisualStudio.Templates.VB.MSTestv2.Desktop.UnitTest","Microsoft.VisualStudio.Templates.CS.MSTestv2.Desktop.UnitTest","Microsoft.VisualStudio.Templates.VB.Wpf","Microsoft.VisualStudio.Templates.VB.Wpf.Resources","Microsoft.VisualStudio.Templates.VB.Winforms","Microsoft.VisualStudio.Templates.VB.ManagedCore","Microsoft.VisualStudio.Templates.VB.Shared","Microsoft.VisualStudio.Templates.VB.Shared.Resources","Microsoft.VisualStudio.Templates.VB.ManagedCore.Resources","Microsoft.VisualStudio.Templates.CS.GettingStarted.Desktop.Package","Microsoft.VisualStudio.Templates.GetStarted.Desktop.Setup","Microsoft.VisualStudio.Templates.CS.GettingStarted.Console.Package","Microsoft.VisualStudio.Templates.GetStarted.Resources","Microsoft.VisualStudio.Templates.GetStarted.Common.Setup","Microsoft.VisualStudio.Templates.GetStarted.Console.Setup","Microsoft.VisualStudio.Templates.CS.Wpf","Microsoft.VisualStudio.Templates.CS.Wpf.Resources","Microsoft.VisualStudio.Templates.CS.Winforms","Microsoft.VisualStudio.Templates.CS.ManagedCore","Microsoft.VisualStudio.Templates.CS.Shared","Microsoft.VisualStudio.Templates.Editorconfig.Wizard.Setup","Templates.Editorconfig.SolutionFile.Setup","Microsoft.VisualStudio.Templates.CS.Shared.Resources","Microsoft.VisualStudio.Templates.CS.ManagedCore.Resources","Microsoft.VisualStudio.Component.CoreEditor","Microsoft.VisualStudio.PackageGroup.CoreEditor","PortableFacades","Microsoft.VisualStudio.PackageGroup.VsDevCmd","Microsoft.VisualStudio.VsDevCmd.Ext.NetFxSdk","Microsoft.VisualStudio.VsDevCmd.Core.WinSdk","Microsoft.VisualStudio.VsDevCmd.Core.DotNet","Microsoft.VisualStudio.VC.DevCmd","Microsoft.VisualStudio.VC.DevCmd.Resources","Microsoft.VisualStudio.VirtualTree","Microsoft.VisualStudio.PackageGroup.Progression","Microsoft.VisualStudio.PerformanceProvider","Microsoft.VisualStudio.GraphModel","Microsoft.VisualStudio.GraphProvider","Microsoft.DiaSymReader","Microsoft.Build.Dependencies","Microsoft.Build.FileTracker.Msi","Microsoft.Build","Microsoft.VisualStudio.TextMateGrammars","Microsoft.VisualStudio.PackageGroup.TeamExplorer","Microsoft.TeamFoundation.OfficeIntegration","Microsoft.TeamFoundation.OfficeIntegration.Resources","Microsoft.VisualStudio.TeamExplorer","Microsoft.ServiceHub","Microsoft.VisualStudio.ProjectServices","Microsoft.VisualStudio.SLNX.VSIX","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.PackageGroup.MinShell","Microsoft.VisualStudio.MinShell.Interop","Microsoft.VisualStudio.Log","Microsoft.VisualStudio.Log.Targeted","Microsoft.VisualStudio.Log.Resources","Microsoft.VisualStudio.Finalizer","Microsoft.VisualStudio.WDExpress","Microsoft.VisualStudio.WDExpress.Resources","Microsoft.VisualStudio.CoreEditor","Microsoft.VisualStudio.Connected","Microsoft.VisualStudio.Connected.Resources","Microsoft.VisualStudio.MinShell","Microsoft.VisualStudio.Setup.Configuration","Microsoft.VisualStudio.MinShell.Platform","Microsoft.VisualStudio.MinShell.Platform.Resources","Microsoft.VisualStudio.MefHosting","Microsoft.VisualStudio.MefHosting.Resources","Microsoft.VisualStudio.Initializer","Microsoft.VisualStudio.ExtensionManager","Microsoft.VisualStudio.MinShell.x86","Microsoft.VisualStudio.NativeImageSupport","Microsoft.VisualStudio.MinShell.Msi","Microsoft.VisualStudio.MinShell.Msi.Resources","Microsoft.VisualStudio.LanguageServer","Microsoft.VisualStudio.MinShell.Resources","Microsoft.Net.PackageGroup.4.6.Redist","Microsoft.VisualStudio.Branding.WDExpress"]}]
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Unusable.txt b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Unusable.txt
new file mode 100644
index 00000000..fc0a257f
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2017_Unusable.txt
@@ -0,0 +1 @@
+[{"path":"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\BuildToolsUnusable","version":"15.9.28307.665","packages":["Microsoft.VisualStudio.Product.BuildTools","Microsoft.VisualStudio.Component.Windows10SDK.17134","Win10SDK_10.0.17134","Microsoft.VisualStudio.Component.VC.Tools.x86.x64","Microsoft.VisualCpp.CodeAnalysis.Extensions","Microsoft.VisualCpp.CodeAnalysis.Extensions.X86","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86.Resources","Microsoft.VisualCpp.CodeAnalysis.Extensions.X64","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64.Resources","Microsoft.VisualStudio.Component.Static.Analysis.Tools","Microsoft.VisualStudio.StaticAnalysis","Microsoft.VisualStudio.StaticAnalysis.Resources","Microsoft.VisualCpp.Tools.HostX64.TargetX86","Microsoft.VisualCpp.VCTip.HostX64.TargetX86","Microsoft.VisualCpp.Tools.HostX64.TargetX86.Resources","Microsoft.VisualCpp.Tools.HostX64.TargetX64","Microsoft.VisualCpp.VCTip.HostX64.TargetX64","Microsoft.VisualCpp.Tools.HostX64.TargetX64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX64","Microsoft.VisualCpp.Premium.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64.Resources","Microsoft.VisualCpp.PGO.X86","Microsoft.VisualCpp.PGO.X64","Microsoft.VisualCpp.PGO.Headers","Microsoft.VisualCpp.CRT.x86.Store","Microsoft.VisualCpp.CRT.x86.OneCore.Desktop","Microsoft.VisualCpp.CRT.x64.Store","Microsoft.VisualCpp.CRT.x64.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.x86.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.x64.OneCore.Desktop","Microsoft.VisualCpp.CRT.ClickOnce.Msi","Microsoft.VisualStudio.PackageGroup.VC.Tools.x86","Microsoft.VisualCpp.Tools.HostX86.TargetX64","Microsoft.VisualCpp.VCTip.hostX86.targetX64","Microsoft.VisualCpp.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Tools.HostX86.TargetX86","Microsoft.VisualCpp.VCTip.hostX86.targetX86","Microsoft.VisualCpp.Tools.HostX86.TargetX86.Resources","Microsoft.VisualCpp.Tools.Core.Resources","Microsoft.VisualCpp.Tools.Core.x86","Microsoft.VisualCpp.Tools.Common.Utils","Microsoft.VisualCpp.Tools.Common.Utils.Resources","Microsoft.VisualCpp.DIA.SDK","Microsoft.VisualCpp.CRT.x86.Desktop","Microsoft.VisualCpp.CRT.x64.Desktop","Microsoft.VisualCpp.CRT.Source","Microsoft.VisualCpp.CRT.Redist.X86","Microsoft.VisualCpp.CRT.Redist.X64","Microsoft.VisualCpp.CRT.Redist.Resources","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.Redist.14","Microsoft.VisualCpp.Redist.14","Microsoft.VisualCpp.CRT.Headers","Microsoft.VisualStudio.Workload.MSBuildTools","Microsoft.VisualStudio.Component.CoreBuildTools","Microsoft.VisualStudio.Setup.Configuration","Microsoft.VisualStudio.PackageGroup.VsDevCmd","Microsoft.VisualStudio.VsDevCmd.Ext.NetFxSdk","Microsoft.VisualStudio.VsDevCmd.Core.WinSdk","Microsoft.VisualStudio.VsDevCmd.Core.DotNet","Microsoft.VisualStudio.VC.DevCmd","Microsoft.VisualStudio.VC.DevCmd.Resources","Microsoft.VisualStudio.BuildTools.Resources","Microsoft.VisualStudio.Net.Eula.Resources","Microsoft.Build.Dependencies","Microsoft.Build.FileTracker.Msi","Microsoft.Component.MSBuild","Microsoft.PythonTools.BuildCore.Vsix","Microsoft.NuGet.Build.Tasks","Microsoft.VisualStudio.Component.Roslyn.Compiler","Microsoft.CodeAnalysis.Compilers.Resources","Microsoft.CodeAnalysis.Compilers","Microsoft.Net.PackageGroup.4.6.1.Redist","Microsoft.Net.4.6.1.FullRedist.NonThreshold","Microsoft.Windows.UniversalCRT.Msu.81","Microsoft.VisualStudio.NativeImageSupport","Microsoft.Build"]}]
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_BuildTools_minimal.txt b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_BuildTools_minimal.txt
new file mode 100644
index 00000000..f07d2541
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_BuildTools_minimal.txt
@@ -0,0 +1 @@
+[{"path":"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools","version":"16.1.28922.388","packages":["Microsoft.VisualStudio.Product.BuildTools","Microsoft.VisualStudio.Component.VC.CoreIde","Microsoft.VisualStudio.VC.Ide.Pro","Microsoft.VisualStudio.VC.Ide.Pro.Resources","Microsoft.VisualStudio.VC.Templates.Pro","Microsoft.VisualStudio.VC.Templates.Pro.Resources","Microsoft.VisualStudio.VC.Items.Pro","Microsoft.VisualStudio.PackageGroup.VC.CoreIDE.Reduced","Microsoft.VisualStudio.VC.Ide.MDD","Microsoft.VisualStudio.PackageGroup.Core","Microsoft.VisualStudio.CodeSense.Community","Microsoft.VisualStudio.TestTools.TeamFoundationClient","Microsoft.PackageGroup.ClientDiagnostics","Microsoft.VisualStudio.AppResponsiveness","Microsoft.VisualStudio.AppResponsiveness.Targeted","Microsoft.VisualStudio.AppResponsiveness.Resources","Microsoft.VisualStudio.ClientDiagnostics","Microsoft.VisualStudio.ClientDiagnostics.Targeted","Microsoft.VisualStudio.ClientDiagnostics.Resources","Microsoft.VisualStudio.PackageGroup.CommunityCore","Microsoft.VisualStudio.ProjectSystem.Full","Microsoft.VisualStudio.ProjectSystem","Microsoft.VisualStudio.Community.x86","Microsoft.VisualStudio.Community.x64","Microsoft.VisualStudio.Community","Microsoft.IntelliTrace.CollectorCab","Microsoft.VisualStudio.Community.Resources","Microsoft.VisualStudio.WebSiteProject.DTE","Microsoft.MSHtml","Microsoft.VisualStudio.Platform.CallHierarchy","Microsoft.VisualStudio.Community.Msi.Resources","Microsoft.VisualStudio.Community.Msi","Microsoft.VisualStudio.MinShell.Interop.Msi","Microsoft.VisualStudio.PackageGroup.CoreEditor","Microsoft.VisualStudio.VirtualTree","Microsoft.VisualStudio.PackageGroup.Progression","Microsoft.VisualStudio.PerformanceProvider","Microsoft.VisualStudio.GraphModel","Microsoft.VisualStudio.GraphProvider","Microsoft.VisualStudio.TextMateGrammars","Microsoft.VisualStudio.PackageGroup.TeamExplorer.Common","Microsoft.VisualStudio.TeamExplorer","Microsoft.ServiceHub","Microsoft.VisualStudio.ProjectServices","Microsoft.VisualStudio.OpenFolder.VSIX","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.PackageGroup.MinShell","Microsoft.VisualStudio.MinShell.Msi","Microsoft.VisualStudio.MinShell.Msi.Resources","Microsoft.VisualStudio.MinShell.Interop","Microsoft.VisualStudio.Log","Microsoft.VisualStudio.Log.Targeted","Microsoft.VisualStudio.Log.Resources","Microsoft.VisualStudio.Finalizer","Microsoft.VisualStudio.CoreEditor","Microsoft.VisualStudio.Platform.NavigateTo","Microsoft.VisualStudio.Connected","Microsoft.VisualStudio.Connected.Resources","Microsoft.VisualStudio.VC.Ide.x64","Microsoft.VisualStudio.PackageGroup.VC.CoreIDE.Express","Microsoft.VisualStudio.PackageGroup.Debugger.Script","Microsoft.VisualStudio.Debugger.Script.Msi","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualStudio.VC.Ide.WinXPlus","Microsoft.VisualStudio.VC.Ide.Dskx","Microsoft.VisualStudio.VC.Ide.Dskx.Resources","Microsoft.VisualStudio.VC.Ide.Base","Microsoft.VisualStudio.VC.Ide.LanguageService","Microsoft.VisualStudio.VC.Ide.Core","Microsoft.VisualStudio.VisualC.Logging","Microsoft.VisualStudio.VC.Ide.Core.Resources","Microsoft.VisualStudio.VC.Ide.VCPkgDatabase","Microsoft.VisualStudio.VC.Ide.ResourceEditor","Microsoft.VisualStudio.VC.Ide.ResourceEditor.Resources","Microsoft.VisualStudio.VC.Ide.ProjectSystem","Microsoft.VisualStudio.VC.Ide.ProjectSystem.Resources","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine.Resources","Microsoft.VisualStudio.VC.Ide.LanguageService.Resources","Microsoft.VisualStudio.VC.Ide.Base.Resources","Microsoft.Net.4.TargetingPack","Microsoft.VisualStudio.PackageGroup.Debugger.Core","Microsoft.VisualStudio.PackageGroup.Debugger.TimeTravel.Record","Microsoft.VisualStudio.Debugger.TimeTravel.Runtime","Microsoft.VisualStudio.Debugger.TimeTravel.Runtime","Microsoft.VisualStudio.Debugger.TimeTravel.Agent","Microsoft.VisualStudio.Debugger.TimeTravel.Record","Microsoft.VisualStudio.Debugger.VSCodeDebuggerHost","Microsoft.VisualStudio.VC.Ide.Debugger","Microsoft.VisualStudio.VC.Ide.Debugger.Concord","Microsoft.VisualStudio.VC.Ide.Debugger.Concord.Resources","Microsoft.VisualStudio.VC.Ide.Debugger.Resources","Microsoft.VisualStudio.VC.Ide.Common","Microsoft.VisualStudio.VC.Ide.Common.Resources","Microsoft.VisualStudio.Debugger.Parallel","Microsoft.VisualStudio.Debugger.Parallel.Resources","Microsoft.VisualStudio.Debugger.CollectionAgents","Microsoft.VisualStudio.Debugger.Managed","Microsoft.DiaSymReader","Microsoft.CodeAnalysis.ExpressionEvaluator","Microsoft.VisualStudio.Debugger.Concord.Managed","Microsoft.VisualStudio.Debugger.Concord.Managed.Resources","Microsoft.VisualStudio.Debugger.Managed.Resources","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.Debugger.Concord.Remote","Microsoft.VisualStudio.Debugger.Concord.Remote.Resources","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.Debugger.Concord.Remote","Microsoft.VisualStudio.Debugger.Concord.Remote.Resources","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.Debugger","Microsoft.VisualStudio.PerfLib","Microsoft.VisualStudio.Debugger.Package.DiagHub.Client.VSx86","Microsoft.VisualStudio.Debugger.Remote.DiagHub.Client","Microsoft.VisualStudio.Debugger.Remote.DiagHub.Client","Microsoft.VisualStudio.VC.MSVCDis","Microsoft.VisualStudio.ScriptedHost","Microsoft.VisualStudio.ScriptedHost.Targeted","Microsoft.VisualStudio.ScriptedHost.Resources","Microsoft.VisualStudio.Editors","Microsoft.IntelliTrace.DiagnosticsHub","Microsoft.VisualStudio.MinShell","Microsoft.VisualStudio.MinShell.Platform","Microsoft.VisualStudio.MinShell.Platform.Resources","Microsoft.VisualStudio.MefHosting","Microsoft.VisualStudio.MefHosting.Resources","Microsoft.VisualStudio.Initializer","Microsoft.VisualStudio.ExtensionManager","Microsoft.VisualStudio.Platform.Editor","Microsoft.VisualStudio.Debugger.Concord","Microsoft.VisualStudio.Debugger.Concord.Resources","Microsoft.VisualStudio.Debugger.Resources","Microsoft.CodeAnalysis.VisualStudio.Setup","Microsoft.VisualStudio.Component.Windows10SDK.17134","Win10SDK_10.0.17134","Microsoft.VisualStudio.Component.VC.Tools.x86.x64","Microsoft.VisualCpp.CodeAnalysis.Extensions","Microsoft.VisualCpp.CodeAnalysis.Extensions.X86","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86.Resources","Microsoft.VisualCpp.CodeAnalysis.Extensions.X64","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64.Resources","Microsoft.VisualStudio.StaticAnalysis","Microsoft.VisualStudio.StaticAnalysis.Resources","Microsoft.VisualCpp.Tools.HostX64.TargetX86","Microsoft.VisualCpp.VCTip.HostX64.TargetX86","Microsoft.VisualCpp.Tools.HostX64.TargetX86.Resources","Microsoft.VisualCpp.Tools.HostX64.TargetX64","Microsoft.VisualCpp.VCTip.HostX64.TargetX64","Microsoft.VisualCpp.Tools.HostX64.TargetX64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX64","Microsoft.VisualCpp.Premium.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64.Resources","Microsoft.VisualCpp.PGO.X86","Microsoft.VisualCpp.PGO.X64","Microsoft.VisualCpp.PGO.Headers","Microsoft.VisualCpp.CRT.x86.Store","Microsoft.VisualCpp.CRT.x86.OneCore.Desktop","Microsoft.VisualCpp.CRT.x64.Store","Microsoft.VisualCpp.CRT.x64.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.x86.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.x64.OneCore.Desktop","Microsoft.VisualCpp.CRT.ClickOnce.Msi","Microsoft.VisualStudio.PackageGroup.VC.Tools.x86","Microsoft.VisualCpp.Tools.HostX86.TargetX64","Microsoft.VisualCpp.VCTip.hostX86.targetX64","Microsoft.VisualCpp.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Tools.HostX86.TargetX86","Microsoft.VisualCpp.VCTip.hostX86.targetX86","Microsoft.VisualCpp.Tools.HostX86.TargetX86.Resources","Microsoft.VisualCpp.Tools.Core.Resources","Microsoft.VisualCpp.Tools.Core.x86","Microsoft.VisualCpp.Tools.Common.Utils","Microsoft.VisualCpp.Tools.Common.Utils.Resources","Microsoft.VisualCpp.DIA.SDK","Microsoft.VisualCpp.CRT.x86.Desktop","Microsoft.VisualCpp.CRT.x64.Desktop","Microsoft.VisualCpp.CRT.Source","Microsoft.VisualCpp.CRT.Redist.X86","Microsoft.VisualCpp.CRT.Redist.X64","Microsoft.VisualCpp.CRT.Redist.Resources","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.Redist.14.Latest","Microsoft.VisualCpp.Redist.14.Latest","Microsoft.VisualCpp.Redist.14","Microsoft.VisualCpp.Redist.14","Microsoft.VisualCpp.CRT.Headers","Microsoft.VisualStudio.VC.MSBuild.x86.v142","Microsoft.VisualStudio.VC.MSBuild.X86","Microsoft.VisualStudio.VC.MSBuild.X64.v142","Microsoft.VisualStudio.VC.MSBuild.X64","Microsoft.VS.VC.MSBuild.X64.Resources","Microsoft.VisualStudio.VC.MSBuild.ARM.v142","Microsoft.VisualStudio.VC.MSBuild.ARM","Microsoft.VisualStudio.VC.MSBuild.Base","Microsoft.VisualStudio.VC.MSBuild.Base.Resources","Microsoft.VisualStudio.Workload.MSBuildTools","Microsoft.VisualStudio.Component.CoreBuildTools","Microsoft.VisualStudio.Setup.Configuration","Microsoft.VisualStudio.PackageGroup.VsDevCmd","Microsoft.VisualStudio.VsDevCmd.Ext.NetFxSdk","Microsoft.VisualStudio.VsDevCmd.Core.WinSdk","Microsoft.VisualStudio.VsDevCmd.Core.DotNet","Microsoft.VisualStudio.VC.DevCmd","Microsoft.VisualStudio.VC.DevCmd.Resources","Microsoft.VisualStudio.BuildTools.Resources","Microsoft.VisualStudio.Net.Eula.Resources","Microsoft.Build.Dependencies","Microsoft.Build.FileTracker.Msi","Microsoft.Component.MSBuild","Microsoft.PythonTools.BuildCore.Vsix","Microsoft.NuGet.Build.Tasks","Microsoft.VisualStudio.Component.Roslyn.Compiler","Microsoft.CodeAnalysis.Compilers","Microsoft.Net.PackageGroup.4.7.2.Redist","Microsoft.VisualStudio.NativeImageSupport","Microsoft.Build","Microsoft.VisualStudio.PackageGroup.NuGet","Microsoft.VisualStudio.NuGet.BuildTools"]}]
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_Community_workload.txt b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_Community_workload.txt
new file mode 100644
index 00000000..50071c25
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_Community_workload.txt
@@ -0,0 +1 @@
+[{"path":"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community","version":"16.1.28922.388","packages":["Microsoft.VisualStudio.Workload.NativeDesktop","Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest","Microsoft.VisualStudio.VC.Ide.TestAdapterForGoogleTest","Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest","Microsoft.VisualStudio.VC.Ide.TestAdapterForBoostTest","Microsoft.VisualStudio.Component.VC.ATL","Microsoft.VisualStudio.VC.Ide.ATL","Microsoft.VisualStudio.VC.Ide.ATL.Resources","Microsoft.VisualCpp.ATL.X86","Microsoft.VisualCpp.ATL.X64","Microsoft.VisualCpp.ATL.Source","Microsoft.VisualCpp.ATL.Headers","Microsoft.VisualStudio.Component.VC.CMake.Project","Microsoft.VisualStudio.VC.CMake","Microsoft.VisualStudio.VC.CMake.Project","Microsoft.VisualStudio.VC.ExternalBuildFramework","Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core","Microsoft.VisualStudio.PackageGroup.TestTools.Native","Microsoft.VisualStudio.Component.VC.Redist.14.Latest","Microsoft.VisualStudio.VC.Templates.UnitTest","Microsoft.VisualStudio.VC.UnitTest.Desktop.Build.Core","Microsoft.VisualStudio.TestTools.TestPlatform.V1.CPP","Microsoft.VisualStudio.VC.Templates.UnitTest.Resources","Microsoft.VisualStudio.VC.Templates.Desktop","Microsoft.VisualStudio.Component.Debugger.JustInTime","Microsoft.VisualStudio.Debugger.ImmersiveActivateHelper.Msi","Microsoft.VisualStudio.Debugger.JustInTime","Microsoft.VisualStudio.Debugger.JustInTime.Msi","Microsoft.VisualStudio.Component.Windows10SDK.17763","Win10SDK_10.0.17763","Microsoft.VisualStudio.Component.VC.DiagnosticTools","Microsoft.VisualStudio.Component.Graphics.Tools","Microsoft.VisualStudio.Component.VC.Tools.x86.x64","Microsoft.VisualCpp.CodeAnalysis.Extensions","Microsoft.VisualCpp.CodeAnalysis.Extensions.X86","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86.Resources","Microsoft.VisualCpp.CodeAnalysis.Extensions.X64","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64.Resources","Microsoft.VisualCpp.Tools.HostX64.TargetX86","Microsoft.VisualCpp.VCTip.HostX64.TargetX86","Microsoft.VisualCpp.Tools.HostX64.TargetX86.Resources","Microsoft.VisualCpp.Tools.HostX64.TargetX64","Microsoft.VisualCpp.VCTip.HostX64.TargetX64","Microsoft.VisualCpp.Tools.HostX64.TargetX64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX64","Microsoft.VisualCpp.Premium.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64.Resources","Microsoft.VisualCpp.PGO.X86","Microsoft.VisualCpp.PGO.X64","Microsoft.VisualCpp.PGO.Headers","Microsoft.VisualCpp.CRT.x86.Store","Microsoft.VisualCpp.CRT.x86.OneCore.Desktop","Microsoft.VisualCpp.CRT.x64.Store","Microsoft.VisualCpp.CRT.x64.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.x86.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.x64.OneCore.Desktop","Microsoft.VisualStudio.PackageGroup.VC.Tools.x86","Microsoft.VisualCpp.Tools.HostX86.TargetX64","Microsoft.VisualCpp.VCTip.hostX86.targetX64","Microsoft.VisualCpp.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Tools.HostX86.TargetX86","Microsoft.VisualCpp.VCTip.hostX86.targetX86","Microsoft.VisualCpp.Tools.HostX86.TargetX86.Resources","Microsoft.VisualCpp.Tools.Core.Resources","Microsoft.VisualCpp.Tools.Core.x86","Microsoft.VisualCpp.DIA.SDK","Microsoft.VisualCpp.CRT.x86.Desktop","Microsoft.VisualCpp.CRT.x64.Desktop","Microsoft.VisualCpp.CRT.Source","Microsoft.VisualCpp.CRT.Redist.X86","Microsoft.VisualCpp.CRT.Redist.X64","Microsoft.VisualCpp.CRT.Redist.Resources","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.Redist.14.Latest","Microsoft.VisualCpp.Redist.14.Latest","Microsoft.VisualCpp.CRT.Headers","Microsoft.VisualStudio.Graphics.Viewers","Microsoft.VisualStudio.Graphics.Viewers.Resources","Microsoft.VisualStudio.Graphics.Msi","Microsoft.VisualStudio.Graphics.Msi","Microsoft.VisualStudio.Graphics.Analyzer","Microsoft.VisualStudio.Graphics.Analyzer.Targeted","Microsoft.VisualStudio.Graphics.Analyzer.Resources","Microsoft.VisualStudio.Graphics.Appid","Microsoft.VisualStudio.Graphics.Appid.Resources","Microsoft.VisualStudio.Component.VC.CoreIde","Microsoft.VisualStudio.VC.Ide.Pro","Microsoft.VisualStudio.VC.Ide.Pro.Resources","Microsoft.VisualStudio.VC.Templates.Pro","Microsoft.VisualStudio.VC.Templates.Pro.Resources","Microsoft.VisualStudio.VC.Items.Pro","Microsoft.VisualStudio.PackageGroup.VC.CoreIDE.Reduced","Microsoft.VisualStudio.VC.Ide.x64","Microsoft.VisualStudio.PackageGroup.VC.CoreIDE.Express","Microsoft.VisualStudio.VC.MSBuild.X64.v142","Microsoft.VisualStudio.VC.MSBuild.X64","Microsoft.VS.VC.MSBuild.X64.Resources","Microsoft.VisualStudio.VC.MSBuild.ARM.v142","Microsoft.VisualStudio.VC.MSBuild.ARM","Microsoft.VisualStudio.VC.MSBuild.x86.v142","Microsoft.VisualStudio.VC.MSBuild.X86","Microsoft.VisualStudio.VC.MSBuild.Base","Microsoft.VisualStudio.VC.MSBuild.Base.Resources","Microsoft.VisualStudio.VC.Ide.WinXPlus","Microsoft.VisualStudio.VC.Ide.Dskx","Microsoft.VisualStudio.VC.Ide.Dskx.Resources","Microsoft.VisualStudio.VC.Ide.Base","Microsoft.VisualStudio.VC.Ide.LanguageService","Microsoft.VisualStudio.VC.Ide.Core","Microsoft.VisualStudio.VC.Ide.Core.Resources","Microsoft.VisualStudio.VC.Ide.VCPkgDatabase","Microsoft.VisualStudio.VC.Ide.ProjectSystem","Microsoft.VisualStudio.VC.Ide.ProjectSystem.Resources","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine.Resources","Microsoft.VisualStudio.VC.Ide.LanguageService.Resources","Microsoft.VisualStudio.VC.Ide.Base.Resources","Component.Microsoft.VisualStudio.LiveShare","Microsoft.VisualStudio.LiveShare","Microsoft.Icecap.Analysis","Microsoft.Icecap.Analysis.Targeted","Microsoft.Icecap.Analysis.Resources","Microsoft.Icecap.Analysis.Resources.Targeted","Microsoft.Icecap.Collection.Msi","Microsoft.Icecap.Collection.Msi.Targeted","Microsoft.Icecap.Collection.Msi.Resources","Microsoft.Icecap.Collection.Msi.Resources.Targeted","Microsoft.DiagnosticsHub.Instrumentation","Microsoft.DiagnosticsHub.CpuSampling.ExternalDependencies","Microsoft.DiagnosticsHub.CpuSampling","Microsoft.DiagnosticsHub.CpuSampling.Targeted","Microsoft.PackageGroup.DiagnosticsHub.Platform","Microsoft.DiagnosticsHub.Runtime.ExternalDependencies","Microsoft.DiagnosticsHub.Runtime.ExternalDependencies.Targeted","Microsoft.DiagnosticsHub.Collection.ExternalDependencies.x64","Microsoft.DiagnosticsHub.Collection.StopService.Uninstall","Microsoft.DiagnosticsHub.Runtime","Microsoft.DiagnosticsHub.Runtime.Targeted","Microsoft.DiagnosticsHub.Collection","Microsoft.DiagnosticsHub.Collection.Service","Microsoft.DiagnosticsHub.Collection.StopService.Install","Microsoft.VisualStudio.Component.IntelliCode","Microsoft.VisualStudio.IntelliCode","Microsoft.Net.4.TargetingPack","Microsoft.VisualStudio.VC.Ide.ResourceEditor","Microsoft.VisualStudio.VC.Ide.ResourceEditor.Resources","Microsoft.VisualStudio.PackageGroup.TestTools.CodeCoverage","Microsoft.VisualStudio.PackageGroup.TestTools.Core","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.V2.CLI","Microsoft.VisualStudio.TestTools.TestPlatform.V2.CLI","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.V1.CLI","Microsoft.VisualStudio.TestTools.TestPlatform.V1.CLI","Microsoft.VisualStudio.TestTools.Pex.Common","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.Legacy","Microsoft.VisualStudio.PackageGroup.MinShell.Interop","Microsoft.VisualStudio.TestTools.TP.Legacy.Tips.Msi","Microsoft.VisualStudio.TestTools.TP.Legacy.Tips.Common","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Tips","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Tips.Resources","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.TestTools","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Professional","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Common","Microsoft.VisualStudio.TestTools.TP.Legacy.Common.Res","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Core","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Core.Resources","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Agent","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.IDE","Microsoft.VisualStudio.TestTools.TestWIExtension","Microsoft.VisualStudio.TestTools.TestPlatform.IDE","Microsoft.VisualStudio.PackageGroup.TestTools.DataCollectors","Microsoft.VisualStudio.LiveShareApi","Microsoft.VisualStudio.Component.TextTemplating","Microsoft.VisualStudio.TextTemplating.MSBuild","Microsoft.VisualStudio.TextTemplating.Integration","Microsoft.VisualStudio.TextTemplating.Core","Microsoft.VisualStudio.TextTemplating.Integration.Resources","Microsoft.VisualCpp.CRT.ClickOnce.Msi","Microsoft.Component.MSBuild","Microsoft.NuGet.Build.Tasks","Microsoft.DiagnosticsHub.KB2882822.Win7","Microsoft.VisualStudio.PackageGroup.Debugger.Script","Microsoft.VisualStudio.Debugger.Script.Msi","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions","Microsoft.VisualStudio.ProTools","sqlsysclrtypes","sqlsysclrtypes","SQLCommon","Microsoft.VisualStudio.ProTools.Resources","Microsoft.VisualStudio.WebToolsExtensions","Microsoft.VisualStudio.WebTools","Microsoft.VisualStudio.WebTools.Resources","Microsoft.VisualStudio.WebTools.MSBuild","Microsoft.VisualStudio.WebTools.WSP.FSA","Microsoft.VisualStudio.WebTools.WSP.FSA.Resources","Microsoft.VisualStudio.VC.Ide.MDD","Microsoft.VisualStudio.VisualC.Logging","Microsoft.WebTools.Shared","Microsoft.WebTools.DotNet.Core.ItemTemplates","Microsoft.VisualCpp.Redist.14","Microsoft.VisualCpp.Redist.14","Microsoft.Windows.UniversalCRT.Msu.7","Microsoft.VisualStudio.StaticAnalysis","Microsoft.VisualStudio.StaticAnalysis.Resources","Microsoft.VisualStudio.Component.Roslyn.Compiler","Microsoft.CodeAnalysis.Compilers","Microsoft.VisualStudio.Component.NuGet","Microsoft.CredentialProvider","Microsoft.VisualStudio.NuGet.PowershellBindingRedirect","Microsoft.VisualStudio.NuGet.Licenses","Microsoft.VisualStudio.PackageGroup.Community","Microsoft.VisualStudio.Community.Extra.Resources","Microsoft.VisualStudio.Community.Extra","Microsoft.VisualStudio.PackageGroup.Core","Microsoft.VisualStudio.CodeSense.Community","Microsoft.VisualStudio.TestTools.TeamFoundationClient","Microsoft.VisualStudio.PackageGroup.Debugger.Core","Microsoft.VisualStudio.PackageGroup.Debugger.TimeTravel.Record","Microsoft.VisualStudio.Debugger.TimeTravel.Runtime","Microsoft.VisualStudio.Debugger.TimeTravel.Runtime","Microsoft.VisualStudio.Debugger.TimeTravel.Agent","Microsoft.VisualStudio.Debugger.TimeTravel.Record","Microsoft.VisualStudio.Debugger.VSCodeDebuggerHost","Microsoft.VisualStudio.VC.Ide.Debugger","Microsoft.VisualStudio.VC.Ide.Debugger.Concord","Microsoft.VisualStudio.VC.Ide.Debugger.Concord.Resources","Microsoft.VisualStudio.VC.Ide.Debugger.Resources","Microsoft.VisualStudio.VC.Ide.Common","Microsoft.VisualStudio.VC.Ide.Common.Resources","Microsoft.VisualStudio.Debugger.Parallel","Microsoft.VisualStudio.Debugger.Parallel.Resources","Microsoft.VisualStudio.Debugger.CollectionAgents","Microsoft.VisualStudio.Debugger.Managed","Microsoft.CodeAnalysis.VisualStudio.Setup","Microsoft.CodeAnalysis.ExpressionEvaluator","Microsoft.VisualStudio.Debugger.Concord.Managed","Microsoft.VisualStudio.Debugger.Concord.Managed.Resources","Microsoft.VisualStudio.Debugger.Managed.Resources","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.Debugger.Remote.DbgHelp.Win8","Microsoft.VisualStudio.Debugger.Concord.Remote","Microsoft.VisualStudio.Debugger.Concord.Remote.Resources","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.Debugger.Remote.DbgHelp.Win8","Microsoft.VisualStudio.Debugger.Concord.Remote","Microsoft.VisualStudio.Debugger.Concord.Remote.Resources","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.Debugger","Microsoft.VisualStudio.Debugger.Package.DiagHub.Client.VSx86","Microsoft.VisualStudio.Debugger.Remote.DiagHub.Client","Microsoft.VisualStudio.Debugger.Remote.DiagHub.Client","Microsoft.VisualStudio.Debugger.DbgHelp.Win8","Microsoft.VisualStudio.VC.MSVCDis","Microsoft.VisualStudio.ScriptedHost","Microsoft.VisualStudio.ScriptedHost.Targeted","Microsoft.VisualStudio.ScriptedHost.Resources","Microsoft.IntelliTrace.DiagnosticsHub","Microsoft.VisualStudio.Debugger.Concord","Microsoft.VisualStudio.Debugger.Concord.Resources","Microsoft.VisualStudio.Debugger.Resources","Microsoft.PackageGroup.ClientDiagnostics","Microsoft.VisualStudio.AppResponsiveness","Microsoft.VisualStudio.AppResponsiveness.Targeted","Microsoft.VisualStudio.AppResponsiveness.Resources","Microsoft.VisualStudio.ClientDiagnostics","Microsoft.VisualStudio.ClientDiagnostics.Targeted","Microsoft.VisualStudio.ClientDiagnostics.Resources","Microsoft.VisualStudio.PackageGroup.CommunityCore","Microsoft.VisualStudio.ProjectSystem.Full","Microsoft.VisualStudio.ProjectSystem","Microsoft.VisualStudio.Community.x86","Microsoft.VisualStudio.Community.x64","Microsoft.VisualStudio.Community","Microsoft.IntelliTrace.CollectorCab","Microsoft.VisualStudio.Community.Resources","Microsoft.VisualStudio.Net.Eula.Resources","Microsoft.VisualStudio.WebSiteProject.DTE","Microsoft.MSHtml","Microsoft.VisualStudio.Platform.CallHierarchy","Microsoft.VisualStudio.Community.Msi.Resources","Microsoft.VisualStudio.Community.Msi","Microsoft.VisualStudio.Devenv.Msi","Microsoft.VisualStudio.MinShell.Interop.Msi","Microsoft.VisualStudio.Editors","Microsoft.VisualStudio.Product.Community","Microsoft.VisualStudio.Workload.CoreEditor","Microsoft.VisualStudio.Component.CoreEditor","Microsoft.VisualStudio.PackageGroup.CoreEditor","Microsoft.VisualCpp.Tools.Common.UtilsPrereq","Microsoft.VisualCpp.Tools.Common.Utils","Microsoft.VisualCpp.Tools.Common.Utils.Resources","Microsoft.VisualStudio.PackageGroup.VsDevCmd","Microsoft.VisualStudio.VsDevCmd.Ext.NetFxSdk","Microsoft.VisualStudio.VsDevCmd.Core.WinSdk","Microsoft.VisualStudio.VsDevCmd.Core.DotNet","Microsoft.VisualStudio.VC.DevCmd","Microsoft.VisualStudio.VC.DevCmd.Resources","Microsoft.VisualStudio.VirtualTree","Microsoft.VisualStudio.PackageGroup.Progression","Microsoft.VisualStudio.PerformanceProvider","Microsoft.VisualStudio.GraphModel","Microsoft.VisualStudio.GraphProvider","Microsoft.DiaSymReader","Microsoft.Build.Dependencies","Microsoft.Build.FileTracker.Msi","Microsoft.Build","Microsoft.VisualStudio.PackageGroup.NuGet","Microsoft.VisualStudio.NuGet.Core","Microsoft.VisualStudio.TextMateGrammars","Microsoft.VisualStudio.PackageGroup.TeamExplorer.Common","Microsoft.VisualStudio.TeamExplorer","Microsoft.ServiceHub","Microsoft.VisualStudio.ProjectServices","Microsoft.VisualStudio.OpenFolder.VSIX","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.PackageGroup.MinShell","Microsoft.VisualStudio.MinShell.Interop","Microsoft.VisualStudio.Log","Microsoft.VisualStudio.Log.Targeted","Microsoft.VisualStudio.Log.Resources","Microsoft.VisualStudio.Finalizer","Microsoft.VisualStudio.Devenv","Microsoft.VisualStudio.Devenv.Resources","Microsoft.VisualStudio.CoreEditor","Microsoft.VisualStudio.Platform.NavigateTo","Microsoft.VisualStudio.Connected","Microsoft.VisualStudio.PerfLib","Microsoft.VisualStudio.Connected.Resources","Microsoft.VisualStudio.MinShell","Microsoft.VisualStudio.Setup.Configuration","Microsoft.VisualStudio.MinShell.Platform","Microsoft.VisualStudio.MinShell.Platform.Resources","Microsoft.VisualStudio.MefHosting","Microsoft.VisualStudio.MefHosting.Resources","Microsoft.VisualStudio.Initializer","Microsoft.VisualStudio.ExtensionManager","Microsoft.VisualStudio.Platform.Editor","Microsoft.VisualStudio.MinShell.x86","Microsoft.VisualStudio.NativeImageSupport","Microsoft.VisualStudio.MinShell.Msi","Microsoft.VisualStudio.MinShell.Msi.Resources","Microsoft.VisualStudio.LanguageServer","Microsoft.VisualStudio.Devenv.Config","Microsoft.VisualStudio.MinShell.Resources","Microsoft.Net.PackageGroup.4.7.2.Redist","Microsoft.Net.4.7.2.FullRedist","Microsoft.VisualStudio.Branding.Community"]}]
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_Preview.txt b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_Preview.txt
new file mode 100644
index 00000000..806509e7
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/VS_2019_Preview.txt
@@ -0,0 +1 @@
+[{"path":"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Preview","version":"16.0.28608.199","packages":["Microsoft.VisualStudio.Product.Enterprise","Microsoft.VisualStudio.Workload.NativeDesktop","Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest","Microsoft.VisualStudio.VC.Ide.TestAdapterForGoogleTest","Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest","Microsoft.VisualStudio.VC.Ide.TestAdapterForBoostTest","Microsoft.VisualStudio.Component.VC.ATL","Microsoft.VisualStudio.VC.Ide.ATL","Microsoft.VisualStudio.VC.Ide.ATL.Resources","Microsoft.VisualCpp.ATL.X86","Microsoft.VisualCpp.ATL.X64","Microsoft.VisualCpp.ATL.Source","Microsoft.VisualCpp.ATL.Headers","Microsoft.VisualStudio.Component.VC.CMake.Project","Microsoft.VisualStudio.VC.CMake","Microsoft.VisualStudio.VC.CMake.Project","Microsoft.VisualStudio.VC.ExternalBuildFramework","Microsoft.VisualStudio.Component.VC.DiagnosticTools","Microsoft.VisualStudio.Component.Graphics.Tools","Microsoft.VisualStudio.Graphics.Viewers","Microsoft.VisualStudio.Graphics.Viewers.Resources","Microsoft.VisualStudio.Graphics.EnableTools","Microsoft.VisualStudio.Graphics.Msi","Microsoft.VisualStudio.Graphics.Msi","Microsoft.VisualStudio.Graphics.Analyzer","Microsoft.VisualStudio.Graphics.Analyzer.Targeted","Microsoft.VisualStudio.Graphics.Analyzer.Resources","Microsoft.VisualStudio.Graphics.Appid","Microsoft.VisualStudio.Graphics.Appid.Resources","Microsoft.VisualStudio.Component.Windows10SDK.17763","Win10SDK_10.0.17763","Microsoft.VisualStudio.Component.VC.Tools.x86.x64","Microsoft.VisualCpp.CodeAnalysis.Extensions","Microsoft.VisualCpp.CodeAnalysis.Extensions.X86","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X86.Resources","Microsoft.VisualCpp.CodeAnalysis.Extensions.X64","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64","Microsoft.VisualCpp.CodeAnalysis.ConcurrencyCheck.X64.Resources","Microsoft.VisualCpp.Tools.HostX64.TargetX86","Microsoft.VisualCpp.VCTip.HostX64.TargetX86","Microsoft.VisualCpp.Tools.HostX64.TargetX86.Resources","Microsoft.VisualCpp.Tools.HostX64.TargetX64","Microsoft.VisualCpp.VCTip.HostX64.TargetX64","Microsoft.VisualCpp.Tools.HostX64.TargetX64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX64","Microsoft.VisualCpp.Premium.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86","Microsoft.VisualCpp.Premium.Tools.HostX86.TargetX86.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX86.Resources","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64","Microsoft.VisualCpp.Premium.Tools.HostX64.TargetX64.Resources","Microsoft.VisualCpp.PGO.X86","Microsoft.VisualCpp.PGO.X64","Microsoft.VisualCpp.PGO.Headers","Microsoft.VisualCpp.CRT.x86.Store","Microsoft.VisualCpp.CRT.x86.OneCore.Desktop","Microsoft.VisualCpp.CRT.x64.Store","Microsoft.VisualCpp.CRT.x64.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.x86.OneCore.Desktop","Microsoft.VisualCpp.CRT.Redist.x64.OneCore.Desktop","Microsoft.VisualStudio.PackageGroup.VC.Tools.x86","Microsoft.VisualCpp.Tools.HostX86.TargetX64","Microsoft.VisualCpp.VCTip.hostX86.targetX64","Microsoft.VisualCpp.Tools.Hostx86.Targetx64.Resources","Microsoft.VisualCpp.Tools.HostX86.TargetX86","Microsoft.VisualCpp.VCTip.hostX86.targetX86","Microsoft.VisualCpp.Tools.HostX86.TargetX86.Resources","Microsoft.VisualCpp.Tools.Core.Resources","Microsoft.VisualCpp.Tools.Core.x86","Microsoft.VisualCpp.DIA.SDK","Microsoft.VisualCpp.CRT.x86.Desktop","Microsoft.VisualCpp.CRT.x64.Desktop","Microsoft.VisualCpp.CRT.Source","Microsoft.VisualCpp.CRT.Redist.X86","Microsoft.VisualCpp.CRT.Redist.X64","Microsoft.VisualCpp.CRT.Redist.Resources","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.RuntimeDebug.14","Microsoft.VisualCpp.CRT.Headers","Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core","Microsoft.VisualStudio.PackageGroup.TestTools.Native","Microsoft.VisualStudio.ComponentGroup.ArchitectureTools.Native","Microsoft.VisualStudio.Component.ClassDesigner","Microsoft.VisualStudio.ClassDesigner","Microsoft.VisualStudio.ClassDesigner.Resources","Microsoft.VisualStudio.Component.VC.Redist.14.Latest","Microsoft.VisualCpp.Redist.14.Latest","Microsoft.VisualCpp.Redist.14.Latest","Microsoft.VisualStudio.VC.Templates.UnitTest","Microsoft.VisualStudio.VC.UnitTest.Desktop.Build.Core","Microsoft.VisualStudio.TestTools.TestPlatform.V1.CPP","Microsoft.VisualStudio.VC.Templates.UnitTest.Resources","Microsoft.VisualStudio.VC.Templates.Desktop","Microsoft.VisualStudio.Component.VC.CoreIde","Microsoft.VisualStudio.VC.Ide.Pro","Microsoft.VisualStudio.VC.Ide.Pro.Resources","Microsoft.VisualStudio.VC.Templates.Pro","Microsoft.VisualStudio.VC.Templates.Pro.Resources","Microsoft.VisualStudio.VC.Items.Pro","Microsoft.VisualStudio.PackageGroup.VC.CoreIDE.Reduced","Microsoft.VisualStudio.VC.Ide.x64","Microsoft.VisualStudio.PackageGroup.VC.CoreIDE.Express","Microsoft.VisualStudio.VC.MSBuild.X64.v142","Microsoft.VisualStudio.VC.MSBuild.X64","Microsoft.VS.VC.MSBuild.X64.Resources","Microsoft.VisualStudio.VC.MSBuild.ARM.v142","Microsoft.VisualStudio.VC.MSBuild.ARM","Microsoft.VisualStudio.VC.MSBuild.x86.v142","Microsoft.VisualStudio.VC.MSBuild.X86","Microsoft.VisualStudio.VC.MSBuild.Base","Microsoft.VisualStudio.VC.MSBuild.Base.Resources","Microsoft.VisualStudio.VC.Ide.WinXPlus","Microsoft.VisualStudio.VC.Ide.Dskx","Microsoft.VisualStudio.VC.Ide.Dskx.Resources","Microsoft.VisualStudio.VC.Ide.Base","Microsoft.VisualStudio.VC.Ide.LanguageService","Microsoft.VisualStudio.VC.Ide.Core","Microsoft.VisualStudio.VC.Ide.Core.Resources","Microsoft.VisualStudio.VC.Ide.VCPkgDatabase","Microsoft.VisualStudio.VC.Ide.Progression.Enterprise","Microsoft.VisualStudio.VC.Ide.ProjectSystem","Microsoft.VisualStudio.VC.Ide.ProjectSystem.Resources","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine","Microsoft.VisualStudio.VC.Ide.Core.VCProjectEngine.Resources","Microsoft.VisualStudio.VC.Ide.LanguageService.Resources","Microsoft.VisualStudio.VC.Ide.Base.Resources","Microsoft.VisualStudio.Component.CodeMap","Microsoft.VisualStudio.Component.GraphDocument","Microsoft.VisualStudio.Vmp","Microsoft.VisualStudio.GraphDocument","Microsoft.VisualStudio.GraphDocument.Resources","Microsoft.VisualStudio.CodeMap","Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime","Microsoft.VisualStudio.Component.SQL.NCLI","sqllocaldb","sqlncli","Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions","Microsoft.VisualStudio.WebToolsExtensions","Microsoft.VisualStudio.WebTools","Microsoft.VisualStudio.WebTools.Resources","Microsoft.VisualStudio.WebTools.MSBuild","Microsoft.VisualStudio.PackageGroup.Debugger.Script","Microsoft.VisualStudio.Debugger.Script.Msi","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualStudio.Debugger.Script","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualStudio.Debugger.Script.Resources","Microsoft.VisualStudio.VC.Ide.MDD","Microsoft.VisualStudio.Component.NuGet","Microsoft.CredentialProvider","Component.Microsoft.VisualStudio.LiveShare","Microsoft.VisualStudio.LiveShare","Microsoft.VisualStudio.Component.Debugger.JustInTime","Microsoft.VisualStudio.Debugger.ImmersiveActivateHelper.Msi","Microsoft.VisualStudio.Debugger.JustInTime","Microsoft.VisualStudio.Debugger.JustInTime.Msi","Microsoft.VisualStudio.Component.IntelliTrace.FrontEnd","Microsoft.IntelliTrace.DiagnosticsHubAgent.Targeted","Microsoft.IntelliTrace.Debugger","Microsoft.IntelliTrace.Debugger.Targeted","Microsoft.IntelliTrace.FrontEnd","Microsoft.DiagnosticsHub.Instrumentation","Microsoft.DiagnosticsHub.CpuSampling","Microsoft.DiagnosticsHub.CpuSampling.Targeted","Microsoft.PackageGroup.DiagnosticsHub.Platform","Microsoft.DiagnosticsHub.Collection.StopService.Uninstall","Microsoft.DiagnosticsHub.Runtime","Microsoft.DiagnosticsHub.Runtime.Targeted","Microsoft.DiagnosticsHub.Runtime.Resources","Microsoft.DiagnosticsHub.Collection","Microsoft.DiagnosticsHub.Collection.Service","Microsoft.DiagnosticsHub.Collection.StopService.Install","Microsoft.VisualStudio.Dsl.GraphObject","Microsoft.Net.4.TargetingPack","Microsoft.VisualStudio.VC.Ide.ResourceEditor","Microsoft.VisualStudio.VC.Ide.ResourceEditor.Resources","Microsoft.VisualStudio.NuGet.Licenses","Microsoft.WebTools.Shared","Microsoft.VisualStudio.WebToolsExtensions.DotNet.Core.ItemTemplates","Microsoft.VisualStudio.Component.TextTemplating","Microsoft.VisualStudio.TextTemplating.MSBuild","Microsoft.VisualStudio.TextTemplating.Integration","Microsoft.VisualStudio.TextTemplating.Core","Microsoft.VisualStudio.TextTemplating.Integration.Resources","Microsoft.VisualStudio.ProTools","sqlsysclrtypes","sqlsysclrtypes","SQLCommon","Microsoft.VisualStudio.ProTools.Resources","Microsoft.VisualStudio.NuGet.Core","Microsoft.VisualStudio.PackageGroup.TestTools.CodeCoverage","Microsoft.VisualStudio.PackageGroup.IntelliTrace.Core","Microsoft.IntelliTrace.Core","Microsoft.IntelliTrace.Core.Concord","Microsoft.IntelliTrace.Core.Targeted","Microsoft.IntelliTrace.ProfilerProxy.Msi.x64","Microsoft.IntelliTrace.ProfilerProxy.Msi","Microsoft.VisualStudio.TestTools.DynamicCodeCoverage","Microsoft.VisualStudio.TestTools.CodeCoverage.Msi","Microsoft.VisualStudio.TestTools.CodeCoverage","Microsoft.Icecap.Analysis","Microsoft.Icecap.Analysis.Targeted","Microsoft.Icecap.Analysis.Resources","Microsoft.Icecap.Analysis.Resources.Targeted","Microsoft.Icecap.Collection.Msi","Microsoft.Icecap.Collection.Msi.Targeted","Microsoft.Icecap.Collection.Msi.Resources","Microsoft.Icecap.Collection.Msi.Resources.Targeted","Microsoft.VisualStudio.PackageGroup.TestTools.Core","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.V2.CLI","Microsoft.VisualStudio.TestTools.TestPlatform.V2.CLI","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.V1.CLI","Microsoft.VisualStudio.TestTools.TestPlatform.V1.CLI","Microsoft.VisualStudio.TestTools.Pex.Common","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.Legacy","Microsoft.VisualStudio.PackageGroup.MinShell.Interop","Microsoft.VisualStudio.TestTools.TP.Legacy.Tips.Msi","Microsoft.VisualStudio.TestTools.TP.Legacy.Tips.Common","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Tips","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Tips.Resources","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.TestTools","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Remote","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Professional","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Core.Premium","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Common","Microsoft.VisualStudio.TestTools.TP.Legacy.Common.Res","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Core","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Core.Resources","Microsoft.VisualStudio.TestTools.TestPlatform.Legacy.Agent","Microsoft.VisualStudio.PackageGroup.TestTools.TestPlatform.IDE","Microsoft.VisualStudio.TestTools.TestWIExtension","Microsoft.VisualStudio.TestTools.TestPlatform.IDE","Microsoft.VisualStudio.PackageGroup.TestTools.DataCollectors","Microsoft.VisualStudio.TestTools.NE.Msi.Targeted","Microsoft.VisualStudio.TestTools.NetworkEmulation","Microsoft.VisualStudio.TestTools.DataCollectors","Microsoft.VisualCpp.CRT.ClickOnce.Msi","Microsoft.VisualStudio.WebTools.WSP.FSA","Microsoft.VisualStudio.WebTools.WSP.FSA.Resources","Microsoft.VisualStudio.Component.Static.Analysis.Tools","Microsoft.VisualCpp.Redist.14","Microsoft.VisualCpp.Redist.14","Microsoft.VisualStudio.StaticAnalysis","Microsoft.VisualStudio.StaticAnalysis.Resources","Microsoft.VisualStudio.PackageGroup.Community","Microsoft.VisualStudio.Community.Extra.Resources","Microsoft.VisualStudio.Community.Extra","Microsoft.VisualStudio.PackageGroup.Core","Microsoft.VisualStudio.CodeSense","Microsoft.VisualStudio.CodeSense.Community","Microsoft.VisualStudio.TestTools.TeamFoundationClient","Microsoft.VisualStudio.PackageGroup.Debugger.Core","Microsoft.VisualStudio.PackageGroup.Debugger.TimeTravel.Record","Microsoft.VisualStudio.Debugger.TimeTravel.Runtime","Microsoft.VisualStudio.Debugger.TimeTravel.Runtime","Microsoft.VisualStudio.Debugger.TimeTravel.Agent","Microsoft.VisualStudio.Debugger.TimeTravel.Record","Microsoft.VisualStudio.Debugger.VSCodeDebuggerHost","Microsoft.VisualStudio.VC.Ide.Debugger","Microsoft.VisualStudio.VC.Ide.Debugger.Concord","Microsoft.VisualStudio.VC.Ide.Debugger.Concord.Resources","Microsoft.VisualStudio.VC.Ide.Debugger.Resources","Microsoft.VisualStudio.VC.Ide.Common","Microsoft.VisualStudio.VC.Ide.Common.Resources","Microsoft.VisualStudio.Debugger.Parallel","Microsoft.VisualStudio.Debugger.Parallel.Resources","Microsoft.VisualStudio.Debugger.CollectionAgents","Microsoft.VisualStudio.Debugger.Managed","Microsoft.VisualStudio.Debugger.Concord.Managed","Microsoft.VisualStudio.Debugger.Concord.Managed.Resources","Microsoft.VisualStudio.Debugger.Managed.Resources","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.Debugger.Concord.Remote","Microsoft.VisualStudio.Debugger.Concord.Remote.Resources","Microsoft.VisualStudio.Debugger.Remote","Microsoft.VisualStudio.Debugger.Concord.Remote","Microsoft.VisualStudio.Debugger.Concord.Remote.Resources","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.Debugger.Remote.Resources","Microsoft.VisualStudio.Debugger","Microsoft.VisualStudio.Debugger.Package.DiagHub.Client.VSx86","Microsoft.VisualStudio.Debugger.Remote.DiagHub.Client","Microsoft.VisualStudio.Debugger.Remote.DiagHub.Client","Microsoft.VisualStudio.VC.MSVCDis","Microsoft.VisualStudio.ScriptedHost","Microsoft.VisualStudio.ScriptedHost.Targeted","Microsoft.VisualStudio.ScriptedHost.Resources","Microsoft.IntelliTrace.DiagnosticsHub","Microsoft.VisualStudio.Debugger.Concord","Microsoft.VisualStudio.Debugger.Concord.Resources","Microsoft.VisualStudio.Debugger.Resources","Microsoft.PackageGroup.ClientDiagnostics","Microsoft.VisualStudio.AppResponsiveness","Microsoft.VisualStudio.AppResponsiveness.Targeted","Microsoft.VisualStudio.AppResponsiveness.Resources","Microsoft.VisualStudio.ClientDiagnostics","Microsoft.VisualStudio.ClientDiagnostics.Targeted","Microsoft.VisualStudio.ClientDiagnostics.Resources","Microsoft.VisualStudio.PackageGroup.ProfessionalCore","Microsoft.VisualStudio.Professional","Microsoft.VisualStudio.Professional.Msi","Microsoft.VisualStudio.PackageGroup.EnterpriseCore","Microsoft.VisualStudio.Enterprise.Msi","Microsoft.VisualStudio.Enterprise","Microsoft.ShDocVw","Microsoft.VisualStudio.PackageGroup.CommunityCore","Microsoft.VisualStudio.ProjectSystem.Full","Microsoft.VisualStudio.ProjectSystem","Microsoft.VisualStudio.Community.x86","Microsoft.VisualStudio.Community.x64","Microsoft.VisualStudio.Community","Microsoft.IntelliTrace.CollectorCab","Microsoft.VisualStudio.Community.Resources","Microsoft.VisualStudio.WebSiteProject.DTE","Microsoft.MSHtml","Microsoft.VisualStudio.Platform.CallHierarchy","Microsoft.VisualStudio.Community.Msi.Resources","Microsoft.VisualStudio.Community.Msi","Microsoft.VisualStudio.Devenv.Msi","Microsoft.VisualStudio.MinShell.Interop.Msi","Microsoft.VisualStudio.Editors","Microsoft.VisualStudio.Net.Eula.Resources","Microsoft.CodeAnalysis.ExpressionEvaluator","Microsoft.CodeAnalysis.VisualStudio.Setup","Microsoft.Component.MSBuild","Microsoft.NuGet.Build.Tasks","Microsoft.VisualStudio.Component.Roslyn.Compiler","Microsoft.CodeAnalysis.Compilers","Microsoft.VisualStudio.Workload.CoreEditor","Microsoft.VisualStudio.Component.CoreEditor","Microsoft.VisualStudio.PackageGroup.CoreEditor","Microsoft.VisualCpp.Tools.Common.UtilsPrereq","Microsoft.VisualCpp.Tools.Common.Utils","Microsoft.VisualCpp.Tools.Common.Utils.Resources","Microsoft.VisualStudio.PackageGroup.VsDevCmd","Microsoft.VisualStudio.VsDevCmd.Ext.NetFxSdk","Microsoft.VisualStudio.VsDevCmd.Core.WinSdk","Microsoft.VisualStudio.VsDevCmd.Core.DotNet","Microsoft.VisualStudio.VC.DevCmd","Microsoft.VisualStudio.VC.DevCmd.Resources","Microsoft.VisualStudio.VirtualTree","Microsoft.VisualStudio.PackageGroup.Progression","Microsoft.VisualStudio.PerformanceProvider","Microsoft.VisualStudio.GraphModel","Microsoft.VisualStudio.GraphProvider","Microsoft.DiaSymReader","Microsoft.Build.Dependencies","Microsoft.Build.FileTracker.Msi","Microsoft.Build","Microsoft.VisualStudio.TextMateGrammars","Microsoft.VisualStudio.PackageGroup.TeamExplorer.Common","Microsoft.VisualStudio.TeamExplorer","Microsoft.ServiceHub","Microsoft.VisualStudio.ProjectServices","Microsoft.VisualStudio.SLNX.VSIX","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.FileHandler.Msi","Microsoft.VisualStudio.PackageGroup.MinShell","Microsoft.VisualStudio.MinShell.Interop","Microsoft.VisualStudio.Log","Microsoft.VisualStudio.Log.Targeted","Microsoft.VisualStudio.Log.Resources","Microsoft.VisualStudio.Finalizer","Microsoft.VisualStudio.Devenv","Microsoft.VisualStudio.Devenv.Resources","Microsoft.VisualStudio.CoreEditor","Microsoft.VisualStudio.Platform.NavigateTo","Microsoft.VisualStudio.Connected","Microsoft.VisualStudio.Connected.Resources","Microsoft.VisualStudio.MinShell","Microsoft.VisualStudio.Setup.Configuration","Microsoft.VisualStudio.Platform.Search","Microsoft.VisualStudio.MinShell.Platform","Microsoft.VisualStudio.MinShell.Platform.Resources","Microsoft.VisualStudio.MefHosting","Microsoft.VisualStudio.MefHosting.Resources","Microsoft.VisualStudio.Initializer","Microsoft.VisualStudio.ExtensionManager","Microsoft.VisualStudio.Platform.Editor","Microsoft.VisualStudio.MinShell.x86","Microsoft.VisualStudio.NativeImageSupport","Microsoft.VisualStudio.MinShell.Msi","Microsoft.VisualStudio.MinShell.Msi.Resources","Microsoft.VisualStudio.LanguageServer","Microsoft.VisualStudio.Devenv.Config","Microsoft.VisualStudio.MinShell.Resources","Microsoft.Net.PackageGroup.4.7.2.Redist","Microsoft.VisualStudio.Branding.Enterprise"]}]
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/ca-bundle.crt b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/ca-bundle.crt
new file mode 100644
index 00000000..fb1dea98
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/ca-bundle.crt
@@ -0,0 +1,40 @@
+-----BEGIN CERTIFICATE-----
+MIIDJjCCAg4CAhnOMA0GCSqGSIb3DQEBBQUAMH0xCzAJBgNVBAYTAlVTMQswCQYD
+VQQIDAJDQTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEZMBcGA1UECgwQU3Ryb25n
+TG9vcCwgSW5jLjESMBAGA1UECwwJU3Ryb25nT3BzMRowGAYDVQQDDBFjYS5zdHJv
+bmdsb29wLmNvbTAeFw0xNTEyMDgyMzM1MzNaFw00MzA0MjQyMzM1MzNaMBkxFzAV
+BgNVBAMMDnN0cm9uZ2xvb3AuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
+CgKCAQEAwOYI7OZ2FX/YjRgLZoDQlbPc5UZXU/j0e1wwiJNPtPEax9Y5Uoza0Pnt
+Ikzkc2SfvQ+IJrhXo385tI0W5juuqbHnE7UrjUuPjUX6NHevkxcs/flmjan5wnZM
+cPsGhH71WDuUEEflvZihf2Se2x+xgZtMhc5XGmVmRuZFYKvkgUhA2/w8/QrK+jPT
+n9QRJxZjWNh2RBdC1B7u4jffSmOSUljYFH1I2eTeY+Rdi6YUIYSU9gEoZxsv3Tia
+SomfMF5jt2Mouo6MzA+IhLvvFjcrcph1Qxgi9RkfdCMMd+Ipm9YWELkyG1bDRpQy
+0iyHD4gvVsAqz1Y2KdRSdc3Kt+nTqwIDAQABoxkwFzAVBgNVHREEDjAMhwQAAAAA
+hwR/AAABMA0GCSqGSIb3DQEBBQUAA4IBAQAhy4J0hML3NgmDRHdL5/iTucBe22Mf
+jJjg2aifD1S187dHm+Il4qZNO2plWwAhN0h704f+8wpsaALxUvBIu6nvlvcMP5PH
+jGN5JLe2Km3UaPvYOQU2SgacLilu+uBcIo2JSHLV6O7ziqUj5Gior6YxDLCtEZie
+Ea8aX5/YjuACtEMJ1JjRqjgkM66XAoUe0E8onOK3FgTIO3tGoTJwRp0zS50pFuP0
+PsZtT04ck6mmXEXXknNoAyBCvPypfms9OHqcUIW9fiQnrGbS/Ri4QSQYj0DtFk/1
+na4fY1gf3zTHxH8259b/TOOaPfTnCEsOQtjUrWNR4xhmVZ+HJy4yytUW
+-----END CERTIFICATE-----
+-----BEGIN CERTIFICATE-----
+MIIDbzCCAlcCAmm6MA0GCSqGSIb3DQEBCwUAMH0xCzAJBgNVBAYTAlVTMQswCQYD
+VQQIDAJDQTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEZMBcGA1UECgwQU3Ryb25n
+TG9vcCwgSW5jLjESMBAGA1UECwwJU3Ryb25nT3BzMRowGAYDVQQDDBFjYS5zdHJv
+bmdsb29wLmNvbTAeFw0xNTEyMDgyMzM1MzNaFw00MzA0MjQyMzM1MzNaMH0xCzAJ
+BgNVBAYTAlVTMQswCQYDVQQIDAJDQTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEZ
+MBcGA1UECgwQU3Ryb25nTG9vcCwgSW5jLjESMBAGA1UECwwJU3Ryb25nT3BzMRow
+GAYDVQQDDBFjYS5zdHJvbmdsb29wLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEP
+ADCCAQoCggEBANfj86jkvvYDjHBgiqWhk9Cj+bqiMq3MqnV0CBO4iuK33Fo6XssE
+H+yVdXlIBFbFe6t655MdBVOR2Sfj7WqNh96vhu6PyDHiwcQlTaiLU6nhIed1J4Wv
+lvnJHFmp8Wbtx5AgLT4UYu03ftvXEl2DLi3vhSL2tRM1ebXHB/KPbRWkb25DPX0P
+foOHot3f2dgNe2x6kponf7E/QDmAu3s7Nlkfh+ryDhgGU7wocXEhXbprNqRqOGNo
+xbXgUI+/9XDxYT/7Gn5LF/fPjtN+aB0SKMnTsDhprVlZie83mlqJ46fOOrR+vrsQ
+mi/1m/TadrARtZoIExC/cQRdVM05EK4tUa8CAwEAATANBgkqhkiG9w0BAQsFAAOC
+AQEAQ7k5WhyhDTIGYCNzRnrMHWSzGqa1y4tJMW06wafJNRqTm1cthq1ibc6Hfq5a
+K10K0qMcgauRTfQ1MWrVCTW/KnJ1vkhiTOH+RvxapGn84gSaRmV6KZen0+gMsgae
+KEGe/3Hn+PmDVV+PTamHgPACfpTww38WHIe/7Ce9gHfG7MZ8cKHNZhDy0IAYPln+
+YRwMLd7JNQffHAbWb2CE1mcea4H/12U8JZW5tHCF6y9V+7IuDzqwIrLKcW3lG17n
+VUG6ODF/Ryqn3V5X+TL91YyXi6c34y34IpC7MQDV/67U7+5Bp5CfeDPWW2wVSrW+
+uGZtfEvhbNm6m2i4UNmpCXxUZQ==
+-----END CERTIFICATE-----
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/ca.crt b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/ca.crt
new file mode 100644
index 00000000..aaf97575
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/ca.crt
@@ -0,0 +1,21 @@
+-----BEGIN CERTIFICATE-----
+MIIDZDCCAkwCCQCAzfCLqrJvuTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzELMAkGA1UECAwCQ0ExEDAOBgNVBAoMB05vZGUuanMxETAPBgNVBAsMCG5vZGUt
+Z3lwMRIwEAYDVQQDDAlsb2NhbGhvc3QxHzAdBgkqhkiG9w0BCQEWEGJ1aWxkQG5v
+ZGVqcy5vcmcwHhcNMTkwNjIyMDYyMjMzWhcNMjIwNDExMDYyMjMzWjB0MQswCQYD
+VQQGEwJVUzELMAkGA1UECAwCQ0ExEDAOBgNVBAoMB05vZGUuanMxETAPBgNVBAsM
+CG5vZGUtZ3lwMRIwEAYDVQQDDAlsb2NhbGhvc3QxHzAdBgkqhkiG9w0BCQEWEGJ1
+aWxkQG5vZGVqcy5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDS
+CHjvtVW4HdbbUwZ/ZV9s6U4x0KSoyNQrsCZjB8kRpFPe50DS5mfmu2SNBGYKRgzk
+4QEEwFB9N2o8YTWsCefSRl6ti4ToPZqulU4hhRKYrEGtMJcRzi3IN7s200JaO3UH
+01Su8ruO0NESb5zEU1Ykfh8Lub8TGEAINmgI61d/5d5Aq3kDjUHQJt1Ekw03Ylnu
+juQyCGZxLxnngu0mIvwzyL/UeeUgsfQLzvppUk6In7tC1zzMjSPWo0c8qu6KvrW4
+bKYnkZkzdQifzbpO5ERMEsh5HWq0uHa6+dgcVHFvlhdqF4Uat87ygNplVf0txsZB
+MNVqbz1k6xkZYMnzDoydAgMBAAEwDQYJKoZIhvcNAQELBQADggEBADspZGtKpWxy
+J1W3FA1aeQhMvequQTcMRz4avkm4K4HfTdV1iVD4CbvdezBphouBlyLVLDFJP7RZ
+m7dBJVgBwnxufoFLne8cR2MGqDRoySbFT1AtDJdxabE6Fg+QGUpgOQfeBJ6ANlSB
++qJ+HG4QA+Ouh5hxz9mgYwkIsMUABHiwENdZ/kT8Edw4xKgd3uH0YP4iiePMD66c
+rzW3uXH5J1jnKgBlpxtog4P6dHCcoq+PZJ17W5bdXNyqC1LPzQqniZ2BNcEZ4ix3
+slAZAOWD1zLLGJhBPMV1fa0sHNBWc6oicr3YK/IDb0cp9kiLvnUu1pHy+LWQGqtC
+rceJuGsnJEQ=
+-----END CERTIFICATE-----
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/nodedir/include/node/config.gypi b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/nodedir/include/node/config.gypi
new file mode 100644
index 00000000..e7675340
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/nodedir/include/node/config.gypi
@@ -0,0 +1,6 @@
+# Test configuration
+{
+ 'variables': {
+ 'build_with_electron': true
+ }
+}
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/server.crt b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/server.crt
new file mode 100644
index 00000000..5d0c440e
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/server.crt
@@ -0,0 +1,21 @@
+-----BEGIN CERTIFICATE-----
+MIIDYjCCAkoCCQCSlmGR7KzZGTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzELMAkGA1UECAwCQ0ExEDAOBgNVBAoMB05vZGUuanMxETAPBgNVBAsMCG5vZGUt
+Z3lwMRIwEAYDVQQDDAlsb2NhbGhvc3QxHzAdBgkqhkiG9w0BCQEWEGJ1aWxkQG5v
+ZGVqcy5vcmcwHhcNMTkwNjIyMDYyNTU1WhcNMjkwNjE5MDYyNTU1WjByMQswCQYD
+VQQGEwJVUzELMAkGA1UECAwCQ0ExEDAOBgNVBAoMB05vZGUuanMxETAPBgNVBAsM
+CG5vZGUtZ3lwMRIwEAYDVQQDDAlsb2NhbGhvc3QxHTAbBgkqhkiG9w0BCQEWDmJ1
+aWxkQGlvanMub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6S1E
+2WchgmbJYqCnpN7310ZgHjIOqeJe6MpSue2u6z6mTNd5izgvQNaANmn3xLFCS5zs
+uZaTvdPYPkcmSQzb1YcZSUYnAxZifjYARc6kb5GSBl3q+O70ELyFrimXfZ4JI+bd
+IG9KiHY17DlvZZZj/csGYVWWg0mkeH3O5LPX6/DXQVh/9+gZ02/cdIBCAtZHQwqx
+7tF/qZA/kD4GZNFpU1DYHzf9H6g9htoCqmNHQWrV2T9yFybt6mbZp9kglBmyKYCc
+7hmQnb7N/mHn1yIuwhBsirCJTfKH86gN81u8M3+SVHA2VUHDllcNhpDWlmInXA+I
+tHdGZHCp95ohqpCPgQIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQCdvYj6CD0ZLwT2
+3t1r+deC3TJuHlNVSeKeT7wIfFnh2FW5riGV0q/w6eXPLTHjuiS6YmpAAbdNUgX/
+sq64FqI2RLpX6pgY5yB0SKopMcJxMLKqmF4zHpIHxtYN5EmN3PR0vehneBR/nZ2T
+3ikvWD5JeXlm7Dfw+tjijdxM/sEoDWErGup4mMKMd1s5s830p+ITJUa50d0DLFdH
+mqPSbUZF8mMPwGJd+nu1Ht3gTLtK7+gYJgGtXMJmGC0Qg77EJHDB2NbotgDGNmSU
+1H9BpAeFHHIcbh2Rr7kkTvnh/c03vFe+CsDZmezcmRpRzW1fKj3YbfqBxU4XwJrL
+a5T/N9xU
+-----END CERTIFICATE-----
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/server.key b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/server.key
new file mode 100644
index 00000000..a8447391
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/server.key
@@ -0,0 +1,27 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIIEowIBAAKCAQEA6S1E2WchgmbJYqCnpN7310ZgHjIOqeJe6MpSue2u6z6mTNd5
+izgvQNaANmn3xLFCS5zsuZaTvdPYPkcmSQzb1YcZSUYnAxZifjYARc6kb5GSBl3q
++O70ELyFrimXfZ4JI+bdIG9KiHY17DlvZZZj/csGYVWWg0mkeH3O5LPX6/DXQVh/
+9+gZ02/cdIBCAtZHQwqx7tF/qZA/kD4GZNFpU1DYHzf9H6g9htoCqmNHQWrV2T9y
+Fybt6mbZp9kglBmyKYCc7hmQnb7N/mHn1yIuwhBsirCJTfKH86gN81u8M3+SVHA2
+VUHDllcNhpDWlmInXA+ItHdGZHCp95ohqpCPgQIDAQABAoIBABW8R4ewalo6dJlB
++n6O3jFt+PW3mtBRLqGqgm2cb0q0a1IMX+MPWLBFjmwEErl+AH0F4rcmBx2Ryr17
+amEy1qcf0caXyHksNAApznqzWXag7iizxnxv4cZRnHBwphNqkNWM5p3oYd04j6w2
+amDg1O9KZozaKo6QZclpiMiezwjKG+PVZLT8p7afswjv+yDWPDByhlcGiye9QD1T
+VuZ0QCoXp6N/8JxW0gdkLp9NqFvGeGFzJ5h6L+d7A6BWw8akXrBRHHcKkyvVYBfd
+myhSzSK4FPFMaxaEY/65FlVSyAO6ezGm3Umx4g7mkFjLdwKWaIOjkBkPeFgl3Pp4
+7Lo5X3UCgYEA/FrrIwmEU5ayulBVScEMKeavu5eNY4r0Sqbpov2oyTdYe8G49Pzy
+ryMXfunY43moLKpajGwgTKRGvdqFtK08AAkaCssiAPkP3rZuZvMTF4sLo/vlWrjP
+3er+tUqj22BzXi5XV0BAvH8Y3TL8KQ3he/8JxDvkC811/DQ9Y/Da3U8CgYEA7Itw
+UM37URma08Bj9VTMoL9ZCyURewX+ZLDb2+O8sXGXJs28i1RkE6PTBlnRmedn+Jjk
+byzQ5Cs5wA5uMbhYTA7kgXOs1bvgQqmlLmyL6FfHkucoMhr2Di7VeGf4OxE26JZ8
+JdY4+1MOyI3A2rR8WU+GmHxy0ay4K2xe6W0vsi8CgYBoGLEKIPDe8jkDtgOYivOT
+jT9MaLXALB+dc8DIpU4swpHTaxP6qyUIrbcReTEolJSU6Ci16BxiwRkVU8D3yMYJ
+VbfSX/zE3fh37FUaToa/nXHN0SjJBZdpeXhcHE//PIgaf48zxKNvnhYJmPB/luQ+
+m/PRaMsnOzfCM2JniYEe7QKBgGwjnxhB4tgDtaWCue/pcZc3gzS2IJS2e8N6mzie
+l6Ajhu+FdOHZldrotUuc+la61OxwsVYmDeWR4VftAPGYDj3PPSX1RRl9R5wSRGLB
+2wBASQvew6CMdNqtDIh8N56BUzHnwh/mHKzBHuwO6hDSHFsUITtLAY7bwGKRq55Z
+fUmfAoGBANOYFyoJoDLcl+Jd750lyqfCifcGtkRdmZMtrPXaYnD8ZGme9vz1vsK/
+4iUkV3mi7Z9s1LXMa/tPPfKdVhCM1PXost3/si0+u1Bz5yKqEPXlyy2ltpIVyGu8
+yiy7y75asp8Iii/1cgtwyp9+VeSif8wJ+MHQoGdGxvAQP80R3EjF
+-----END RSA PRIVATE KEY-----
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/test-charmap.py b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/test-charmap.py
new file mode 100644
index 00000000..63aa77bb
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/fixtures/test-charmap.py
@@ -0,0 +1,31 @@
+import sys
+import locale
+
+try:
+ reload(sys)
+except NameError: # Python 3
+ pass
+
+
+def main():
+ encoding = locale.getdefaultlocale()[1]
+ if not encoding:
+ return False
+
+ try:
+ sys.setdefaultencoding(encoding)
+ except AttributeError: # Python 3
+ pass
+
+ textmap = {
+ "cp936": "\u4e2d\u6587",
+ "cp1252": "Lat\u012Bna",
+ "cp932": "\u306b\u307b\u3093\u3054",
+ }
+ if encoding in textmap:
+ print(textmap[encoding])
+ return True
+
+
+if __name__ == "__main__":
+ print(main())
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/process-exec-sync.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/process-exec-sync.js
new file mode 100644
index 00000000..21763bc2
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/process-exec-sync.js
@@ -0,0 +1,140 @@
+'use strict'
+
+const fs = require('graceful-fs')
+const childProcess = require('child_process')
+
+function startsWith (str, search, pos) {
+ if (String.prototype.startsWith) {
+ return str.startsWith(search, pos)
+ }
+
+ return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search
+}
+
+function processExecSync (file, args, options) {
+ var child, error, timeout, tmpdir, command
+ command = makeCommand(file, args)
+
+ /*
+ this function emulates child_process.execSync for legacy node <= 0.10.x
+ derived from https://github.com/gvarsanyi/sync-exec/blob/master/js/sync-exec.js
+ */
+
+ options = options || {}
+ // init timeout
+ timeout = Date.now() + options.timeout
+ // init tmpdir
+ var osTempBase = '/tmp'
+ var os = determineOS()
+ osTempBase = '/tmp'
+
+ if (process.env.TMP) {
+ osTempBase = process.env.TMP
+ }
+
+ if (osTempBase[osTempBase.length - 1] !== '/') {
+ osTempBase += '/'
+ }
+
+ tmpdir = osTempBase + 'processExecSync.' + Date.now() + Math.random()
+ fs.mkdirSync(tmpdir)
+
+ // init command
+ if (os === 'linux') {
+ command = '(' + command + ' > ' + tmpdir + '/stdout 2> ' + tmpdir +
+ '/stderr); echo $? > ' + tmpdir + '/status'
+ } else {
+ command = '(' + command + ' > ' + tmpdir + '/stdout 2> ' + tmpdir +
+ '/stderr) | echo %errorlevel% > ' + tmpdir + '/status | exit'
+ }
+
+ // init child
+ child = childProcess.exec(command, options)
+
+ var maxTry = 100000 // increases the test time by 6 seconds on win-2016-node-0.10
+ var tryCount = 0
+ while (tryCount < maxTry) {
+ try {
+ var x = fs.readFileSync(tmpdir + '/status')
+ if (x.toString() === '0') {
+ break
+ }
+ } catch (ignore) {}
+ tryCount++
+ if (Date.now() > timeout) {
+ error = child
+ break
+ }
+ }
+
+ ['stdout', 'stderr', 'status'].forEach(function (file) {
+ child[file] = fs.readFileSync(tmpdir + '/' + file, options.encoding)
+ setTimeout(unlinkFile, 500, tmpdir + '/' + file)
+ })
+
+ child.status = Number(child.status)
+ if (child.status !== 0) {
+ error = child
+ }
+
+ try {
+ fs.rmdirSync(tmpdir)
+ } catch (ignore) {}
+ if (error) {
+ throw error
+ }
+ return child.stdout
+}
+
+function makeCommand (file, args) {
+ var command, quote
+ command = file
+ if (args.length > 0) {
+ for (var i in args) {
+ command = command + ' '
+ if (args[i][0] === '-') {
+ command = command + args[i]
+ } else {
+ if (!quote) {
+ command = command + '"'
+ quote = true
+ }
+ command = command + args[i]
+ if (quote) {
+ if (args.length === (parseInt(i) + 1)) {
+ command = command + '"'
+ }
+ }
+ }
+ }
+ }
+ return command
+}
+
+function determineOS () {
+ var os = ''
+ var tmpVar = ''
+ if (process.env.OSTYPE) {
+ tmpVar = process.env.OSTYPE
+ } else if (process.env.OS) {
+ tmpVar = process.env.OS
+ } else {
+ // default is linux
+ tmpVar = 'linux'
+ }
+
+ if (startsWith(tmpVar, 'linux')) {
+ os = 'linux'
+ }
+ if (startsWith(tmpVar, 'win')) {
+ os = 'win'
+ }
+
+ return os
+}
+
+function unlinkFile (file) {
+ fs.unlinkSync(file)
+}
+
+module.exports = processExecSync
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/simple-proxy.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/simple-proxy.js
new file mode 100644
index 00000000..cb0dfcfe
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/simple-proxy.js
@@ -0,0 +1,27 @@
+'use strict'
+
+const http = require('http')
+const https = require('https')
+const server = http.createServer(handler)
+const port = +process.argv[2]
+const prefix = process.argv[3]
+const upstream = process.argv[4]
+var calls = 0
+
+server.listen(port)
+
+function handler (req, res) {
+ if (req.url.indexOf(prefix) !== 0) {
+ throw new Error('request url [' + req.url + '] does not start with [' + prefix + ']')
+ }
+
+ var upstreamUrl = upstream + req.url.substring(prefix.length)
+ https.get(upstreamUrl, function (ures) {
+ ures.on('end', function () {
+ if (++calls === 2) {
+ server.close()
+ }
+ })
+ ures.pipe(res)
+ })
+}
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-addon.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-addon.js
new file mode 100644
index 00000000..f79eff73
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-addon.js
@@ -0,0 +1,150 @@
+'use strict'
+
+const test = require('tap').test
+const path = require('path')
+const fs = require('graceful-fs')
+const childProcess = require('child_process')
+const os = require('os')
+const addonPath = path.resolve(__dirname, 'node_modules', 'hello_world')
+const nodeGyp = path.resolve(__dirname, '..', 'bin', 'node-gyp.js')
+const execFileSync = childProcess.execFileSync || require('./process-exec-sync')
+const execFile = childProcess.execFile
+
+function runHello (hostProcess) {
+ if (!hostProcess) {
+ hostProcess = process.execPath
+ }
+ var testCode = "console.log(require('hello_world').hello())"
+ return execFileSync(hostProcess, ['-e', testCode], { cwd: __dirname }).toString()
+}
+
+function getEncoding () {
+ var code = 'import locale;print(locale.getdefaultlocale()[1])'
+ return execFileSync('python', ['-c', code]).toString().trim()
+}
+
+function checkCharmapValid () {
+ var data
+ try {
+ data = execFileSync('python', ['fixtures/test-charmap.py'],
+ { cwd: __dirname })
+ } catch (err) {
+ return false
+ }
+ var lines = data.toString().trim().split('\n')
+ return lines.pop() === 'True'
+}
+
+test('build simple addon', function (t) {
+ t.plan(3)
+
+ // Set the loglevel otherwise the output disappears when run via 'npm test'
+ var cmd = [nodeGyp, 'rebuild', '-C', addonPath, '--loglevel=verbose']
+ var proc = execFile(process.execPath, cmd, function (err, stdout, stderr) {
+ var logLines = stderr.toString().trim().split(/\r?\n/)
+ var lastLine = logLines[logLines.length - 1]
+ t.strictEqual(err, null)
+ t.strictEqual(lastLine, 'gyp info ok', 'should end in ok')
+ t.strictEqual(runHello().trim(), 'world')
+ })
+ proc.stdout.setEncoding('utf-8')
+ proc.stderr.setEncoding('utf-8')
+})
+
+test('build simple addon in path with non-ascii characters', function (t) {
+ t.plan(1)
+
+ if (!checkCharmapValid()) {
+ return t.skip('python console app can\'t encode non-ascii character.')
+ }
+
+ var testDirNames = {
+ cp936: '文件夹',
+ cp1252: 'Latīna',
+ cp932: 'フォルダ'
+ }
+ // Select non-ascii characters by current encoding
+ var testDirName = testDirNames[getEncoding()]
+ // If encoding is UTF-8 or other then no need to test
+ if (!testDirName) {
+ return t.skip('no need to test')
+ }
+
+ t.plan(3)
+
+ var data
+ var configPath = path.join(addonPath, 'build', 'config.gypi')
+ try {
+ data = fs.readFileSync(configPath, 'utf8')
+ } catch (err) {
+ t.error(err)
+ return
+ }
+ var config = JSON.parse(data.replace(/#.+\n/, ''))
+ var nodeDir = config.variables.nodedir
+ var testNodeDir = path.join(addonPath, testDirName)
+ // Create symbol link to path with non-ascii characters
+ try {
+ fs.symlinkSync(nodeDir, testNodeDir, 'dir')
+ } catch (err) {
+ switch (err.code) {
+ case 'EEXIST': break
+ case 'EPERM':
+ t.error(err, 'Please try to running console as an administrator')
+ return
+ default:
+ t.error(err)
+ return
+ }
+ }
+
+ var cmd = [
+ nodeGyp,
+ 'rebuild',
+ '-C',
+ addonPath,
+ '--loglevel=verbose',
+ '-nodedir=' + testNodeDir
+ ]
+ var proc = execFile(process.execPath, cmd, function (err, stdout, stderr) {
+ try {
+ fs.unlink(testNodeDir)
+ } catch (err) {
+ t.error(err)
+ }
+
+ var logLines = stderr.toString().trim().split(/\r?\n/)
+ var lastLine = logLines[logLines.length - 1]
+ t.strictEqual(err, null)
+ t.strictEqual(lastLine, 'gyp info ok', 'should end in ok')
+ t.strictEqual(runHello().trim(), 'world')
+ })
+ proc.stdout.setEncoding('utf-8')
+ proc.stderr.setEncoding('utf-8')
+})
+
+test('addon works with renamed host executable', function (t) {
+ // No `fs.copyFileSync` before node8.
+ if (process.version.substr(1).split('.')[0] < 8) {
+ t.skip('skipping test for old node version')
+ t.end()
+ return
+ }
+
+ t.plan(3)
+
+ var notNodePath = path.join(os.tmpdir(), 'notnode' + path.extname(process.execPath))
+ fs.copyFileSync(process.execPath, notNodePath)
+
+ var cmd = [nodeGyp, 'rebuild', '-C', addonPath, '--loglevel=verbose']
+ var proc = execFile(process.execPath, cmd, function (err, stdout, stderr) {
+ var logLines = stderr.toString().trim().split(/\r?\n/)
+ var lastLine = logLines[logLines.length - 1]
+ t.strictEqual(err, null)
+ t.strictEqual(lastLine, 'gyp info ok', 'should end in ok')
+ t.strictEqual(runHello(notNodePath).trim(), 'world')
+ fs.unlinkSync(notNodePath)
+ })
+ proc.stdout.setEncoding('utf-8')
+ proc.stderr.setEncoding('utf-8')
+})
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-configure-python.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-configure-python.js
new file mode 100644
index 00000000..4290e7af
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-configure-python.js
@@ -0,0 +1,82 @@
+'use strict'
+
+const test = require('tap').test
+const path = require('path')
+const devDir = require('./common').devDir()
+const gyp = require('../lib/node-gyp')
+const requireInject = require('require-inject')
+const configure = requireInject('../lib/configure', {
+ 'graceful-fs': {
+ openSync: function () { return 0 },
+ closeSync: function () { },
+ writeFile: function (file, data, cb) { cb() },
+ stat: function (file, cb) { cb(null, {}) },
+ mkdir: function (dir, options, cb) { cb() },
+ promises: {
+ writeFile: function (file, data) { return Promise.resolve(null) }
+ }
+ }
+})
+
+const EXPECTED_PYPATH = path.join(__dirname, '..', 'gyp', 'pylib')
+const SEPARATOR = process.platform === 'win32' ? ';' : ':'
+const SPAWN_RESULT = { on: function () { } }
+
+require('npmlog').level = 'warn'
+
+test('configure PYTHONPATH with no existing env', function (t) {
+ t.plan(1)
+
+ delete process.env.PYTHONPATH
+
+ var prog = gyp()
+ prog.parseArgv([])
+ prog.spawn = function () {
+ t.equal(process.env.PYTHONPATH, EXPECTED_PYPATH)
+ return SPAWN_RESULT
+ }
+ prog.devDir = devDir
+ configure(prog, [], t.fail)
+})
+
+test('configure PYTHONPATH with existing env of one dir', function (t) {
+ t.plan(2)
+
+ var existingPath = path.join('a', 'b')
+ process.env.PYTHONPATH = existingPath
+
+ var prog = gyp()
+ prog.parseArgv([])
+ prog.spawn = function () {
+ t.equal(process.env.PYTHONPATH, [EXPECTED_PYPATH, existingPath].join(SEPARATOR))
+
+ var dirs = process.env.PYTHONPATH.split(SEPARATOR)
+ t.deepEqual(dirs, [EXPECTED_PYPATH, existingPath])
+
+ return SPAWN_RESULT
+ }
+ prog.devDir = devDir
+ configure(prog, [], t.fail)
+})
+
+test('configure PYTHONPATH with existing env of multiple dirs', function (t) {
+ t.plan(2)
+
+ var pythonDir1 = path.join('a', 'b')
+ var pythonDir2 = path.join('b', 'c')
+ var existingPath = [pythonDir1, pythonDir2].join(SEPARATOR)
+ process.env.PYTHONPATH = existingPath
+
+ var prog = gyp()
+ prog.parseArgv([])
+ prog.spawn = function () {
+ t.equal(process.env.PYTHONPATH, [EXPECTED_PYPATH, existingPath].join(SEPARATOR))
+
+ var dirs = process.env.PYTHONPATH.split(SEPARATOR)
+ t.deepEqual(dirs, [EXPECTED_PYPATH, pythonDir1, pythonDir2])
+
+ return SPAWN_RESULT
+ }
+ prog.devDir = devDir
+ configure(prog, [], t.fail)
+})
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-create-config-gypi.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-create-config-gypi.js
new file mode 100644
index 00000000..eeac73fa
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-create-config-gypi.js
@@ -0,0 +1,70 @@
+'use strict'
+
+const path = require('path')
+const { test } = require('tap')
+const gyp = require('../lib/node-gyp')
+const createConfigGypi = require('../lib/create-config-gypi')
+const { parseConfigGypi, getCurrentConfigGypi } = createConfigGypi.test
+
+test('config.gypi with no options', async function (t) {
+ t.plan(2)
+
+ const prog = gyp()
+ prog.parseArgv([])
+
+ const config = await getCurrentConfigGypi({ gyp: prog, vsInfo: {} })
+ t.equal(config.target_defaults.default_configuration, 'Release')
+ t.equal(config.variables.target_arch, process.arch)
+})
+
+test('config.gypi with --debug', async function (t) {
+ t.plan(1)
+
+ const prog = gyp()
+ prog.parseArgv(['_', '_', '--debug'])
+
+ const config = await getCurrentConfigGypi({ gyp: prog, vsInfo: {} })
+ t.equal(config.target_defaults.default_configuration, 'Debug')
+})
+
+test('config.gypi with custom options', async function (t) {
+ t.plan(1)
+
+ const prog = gyp()
+ prog.parseArgv(['_', '_', '--shared-libxml2'])
+
+ const config = await getCurrentConfigGypi({ gyp: prog, vsInfo: {} })
+ t.equal(config.variables.shared_libxml2, true)
+})
+
+test('config.gypi with nodedir', async function (t) {
+ t.plan(1)
+
+ const nodeDir = path.join(__dirname, 'fixtures', 'nodedir')
+
+ const prog = gyp()
+ prog.parseArgv(['_', '_', `--nodedir=${nodeDir}`])
+
+ const config = await getCurrentConfigGypi({ gyp: prog, nodeDir, vsInfo: {} })
+ t.equal(config.variables.build_with_electron, true)
+})
+
+test('config.gypi with --force-process-config', async function (t) {
+ t.plan(1)
+
+ const nodeDir = path.join(__dirname, 'fixtures', 'nodedir')
+
+ const prog = gyp()
+ prog.parseArgv(['_', '_', '--force-process-config', `--nodedir=${nodeDir}`])
+
+ const config = await getCurrentConfigGypi({ gyp: prog, nodeDir, vsInfo: {} })
+ t.equal(config.variables.build_with_electron, undefined)
+})
+
+test('config.gypi parsing', function (t) {
+ t.plan(1)
+
+ const str = "# Some comments\n{'variables': {'multiline': 'A'\n'B'}}"
+ const config = parseConfigGypi(str)
+ t.deepEqual(config, { variables: { multiline: 'AB' } })
+})
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-download.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-download.js
new file mode 100644
index 00000000..71a3c0d0
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-download.js
@@ -0,0 +1,207 @@
+'use strict'
+
+const { test } = require('tap')
+const fs = require('fs')
+const path = require('path')
+const util = require('util')
+const http = require('http')
+const https = require('https')
+const install = require('../lib/install')
+const semver = require('semver')
+const devDir = require('./common').devDir()
+const rimraf = require('rimraf')
+const gyp = require('../lib/node-gyp')
+const log = require('npmlog')
+
+log.level = 'warn'
+
+test('download over http', async (t) => {
+ t.plan(2)
+
+ const server = http.createServer((req, res) => {
+ t.strictEqual(req.headers['user-agent'], `node-gyp v42 (node ${process.version})`)
+ res.end('ok')
+ })
+
+ t.tearDown(() => new Promise((resolve) => server.close(resolve)))
+
+ const host = 'localhost'
+ await new Promise((resolve) => server.listen(0, host, resolve))
+ const { port } = server.address()
+ const gyp = {
+ opts: {},
+ version: '42'
+ }
+ const url = `http://${host}:${port}`
+ const res = await install.test.download(gyp, url)
+ t.strictEqual(await res.text(), 'ok')
+})
+
+test('download over https with custom ca', async (t) => {
+ t.plan(3)
+
+ const cafile = path.join(__dirname, '/fixtures/ca.crt')
+ const [cert, key, ca] = await Promise.all([
+ fs.promises.readFile(path.join(__dirname, 'fixtures/server.crt'), 'utf8'),
+ fs.promises.readFile(path.join(__dirname, 'fixtures/server.key'), 'utf8'),
+ install.test.readCAFile(cafile)
+ ])
+
+ t.strictEqual(ca.length, 1)
+
+ const options = { ca: ca, cert: cert, key: key }
+ const server = https.createServer(options, (req, res) => {
+ t.strictEqual(req.headers['user-agent'], `node-gyp v42 (node ${process.version})`)
+ res.end('ok')
+ })
+
+ t.tearDown(() => new Promise((resolve) => server.close(resolve)))
+
+ server.on('clientError', (err) => { throw err })
+
+ const host = 'localhost'
+ await new Promise((resolve) => server.listen(0, host, resolve))
+ const { port } = server.address()
+ const gyp = {
+ opts: { cafile },
+ version: '42'
+ }
+ const url = `https://${host}:${port}`
+ const res = await install.test.download(gyp, url)
+ t.strictEqual(await res.text(), 'ok')
+})
+
+test('download over http with proxy', async (t) => {
+ t.plan(2)
+
+ const server = http.createServer((_, res) => {
+ res.end('ok')
+ })
+
+ const pserver = http.createServer((req, res) => {
+ t.strictEqual(req.headers['user-agent'], `node-gyp v42 (node ${process.version})`)
+ res.end('proxy ok')
+ })
+
+ t.tearDown(() => Promise.all([
+ new Promise((resolve) => server.close(resolve)),
+ new Promise((resolve) => pserver.close(resolve))
+ ]))
+
+ const host = 'localhost'
+ await new Promise((resolve) => server.listen(0, host, resolve))
+ const { port } = server.address()
+ await new Promise((resolve) => pserver.listen(port + 1, host, resolve))
+ const gyp = {
+ opts: {
+ proxy: `http://${host}:${port + 1}`,
+ noproxy: 'bad'
+ },
+ version: '42'
+ }
+ const url = `http://${host}:${port}`
+ const res = await install.test.download(gyp, url)
+ t.strictEqual(await res.text(), 'proxy ok')
+})
+
+test('download over http with noproxy', async (t) => {
+ t.plan(2)
+
+ const server = http.createServer((req, res) => {
+ t.strictEqual(req.headers['user-agent'], `node-gyp v42 (node ${process.version})`)
+ res.end('ok')
+ })
+
+ const pserver = http.createServer((_, res) => {
+ res.end('proxy ok')
+ })
+
+ t.tearDown(() => Promise.all([
+ new Promise((resolve) => server.close(resolve)),
+ new Promise((resolve) => pserver.close(resolve))
+ ]))
+
+ const host = 'localhost'
+ await new Promise((resolve) => server.listen(0, host, resolve))
+ const { port } = server.address()
+ await new Promise((resolve) => pserver.listen(port + 1, host, resolve))
+ const gyp = {
+ opts: {
+ proxy: `http://${host}:${port + 1}`,
+ noproxy: host
+ },
+ version: '42'
+ }
+ const url = `http://${host}:${port}`
+ const res = await install.test.download(gyp, url)
+ t.strictEqual(await res.text(), 'ok')
+})
+
+test('download with missing cafile', async (t) => {
+ t.plan(1)
+ const gyp = {
+ opts: { cafile: 'no.such.file' }
+ }
+ try {
+ await install.test.download(gyp, {}, 'http://bad/')
+ } catch (e) {
+ t.ok(/no.such.file/.test(e.message))
+ }
+})
+
+test('check certificate splitting', async (t) => {
+ const cas = await install.test.readCAFile(path.join(__dirname, 'fixtures/ca-bundle.crt'))
+ t.plan(2)
+ t.strictEqual(cas.length, 2)
+ t.notStrictEqual(cas[0], cas[1])
+})
+
+// only run this test if we are running a version of Node with predictable version path behavior
+
+test('download headers (actual)', async (t) => {
+ if (process.env.FAST_TEST ||
+ process.release.name !== 'node' ||
+ semver.prerelease(process.version) !== null ||
+ semver.satisfies(process.version, '<10')) {
+ return t.skip('Skipping actual download of headers due to test environment configuration')
+ }
+
+ t.plan(12)
+
+ const expectedDir = path.join(devDir, process.version.replace(/^v/, ''))
+ await util.promisify(rimraf)(expectedDir)
+
+ const prog = gyp()
+ prog.parseArgv([])
+ prog.devDir = devDir
+ log.level = 'warn'
+ await util.promisify(install)(prog, [])
+
+ const data = await fs.promises.readFile(path.join(expectedDir, 'installVersion'), 'utf8')
+ t.strictEqual(data, '9\n', 'correct installVersion')
+
+ const list = await fs.promises.readdir(path.join(expectedDir, 'include/node'))
+ t.ok(list.includes('common.gypi'))
+ t.ok(list.includes('config.gypi'))
+ t.ok(list.includes('node.h'))
+ t.ok(list.includes('node_version.h'))
+ t.ok(list.includes('openssl'))
+ t.ok(list.includes('uv'))
+ t.ok(list.includes('uv.h'))
+ t.ok(list.includes('v8-platform.h'))
+ t.ok(list.includes('v8.h'))
+ t.ok(list.includes('zlib.h'))
+
+ const lines = (await fs.promises.readFile(path.join(expectedDir, 'include/node/node_version.h'), 'utf8')).split('\n')
+
+ // extract the 3 version parts from the defines to build a valid version string and
+ // and check them against our current env version
+ const version = ['major', 'minor', 'patch'].reduce((version, type) => {
+ const re = new RegExp(`^#define\\sNODE_${type.toUpperCase()}_VERSION`)
+ const line = lines.find((l) => re.test(l))
+ const i = line ? parseInt(line.replace(/^[^0-9]+([0-9]+).*$/, '$1'), 10) : 'ERROR'
+ return `${version}${type !== 'major' ? '.' : 'v'}${i}`
+ }, '')
+
+ t.strictEqual(version, process.version)
+})
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-accessible-sync.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-accessible-sync.js
new file mode 100644
index 00000000..0a2e584c
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-accessible-sync.js
@@ -0,0 +1,84 @@
+'use strict'
+
+const test = require('tap').test
+const path = require('path')
+const requireInject = require('require-inject')
+const configure = requireInject('../lib/configure', {
+ 'graceful-fs': {
+ closeSync: function () { return undefined },
+ openSync: function (path) {
+ if (readableFiles.some(function (f) { return f === path })) {
+ return 0
+ } else {
+ var error = new Error('ENOENT - not found')
+ throw error
+ }
+ }
+ }
+})
+
+const dir = path.sep + 'testdir'
+const readableFile = 'readable_file'
+const anotherReadableFile = 'another_readable_file'
+const readableFileInDir = 'somedir' + path.sep + readableFile
+const readableFiles = [
+ path.resolve(dir, readableFile),
+ path.resolve(dir, anotherReadableFile),
+ path.resolve(dir, readableFileInDir)
+]
+
+test('find accessible - empty array', function (t) {
+ t.plan(1)
+
+ var candidates = []
+ var found = configure.test.findAccessibleSync('test', dir, candidates)
+ t.strictEqual(found, undefined)
+})
+
+test('find accessible - single item array, readable', function (t) {
+ t.plan(1)
+
+ var candidates = [readableFile]
+ var found = configure.test.findAccessibleSync('test', dir, candidates)
+ t.strictEqual(found, path.resolve(dir, readableFile))
+})
+
+test('find accessible - single item array, readable in subdir', function (t) {
+ t.plan(1)
+
+ var candidates = [readableFileInDir]
+ var found = configure.test.findAccessibleSync('test', dir, candidates)
+ t.strictEqual(found, path.resolve(dir, readableFileInDir))
+})
+
+test('find accessible - single item array, unreadable', function (t) {
+ t.plan(1)
+
+ var candidates = ['unreadable_file']
+ var found = configure.test.findAccessibleSync('test', dir, candidates)
+ t.strictEqual(found, undefined)
+})
+
+test('find accessible - multi item array, no matches', function (t) {
+ t.plan(1)
+
+ var candidates = ['non_existent_file', 'unreadable_file']
+ var found = configure.test.findAccessibleSync('test', dir, candidates)
+ t.strictEqual(found, undefined)
+})
+
+test('find accessible - multi item array, single match', function (t) {
+ t.plan(1)
+
+ var candidates = ['non_existent_file', readableFile]
+ var found = configure.test.findAccessibleSync('test', dir, candidates)
+ t.strictEqual(found, path.resolve(dir, readableFile))
+})
+
+test('find accessible - multi item array, return first match', function (t) {
+ t.plan(1)
+
+ var candidates = ['non_existent_file', anotherReadableFile, readableFile]
+ var found = configure.test.findAccessibleSync('test', dir, candidates)
+ t.strictEqual(found, path.resolve(dir, anotherReadableFile))
+})
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-node-directory.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-node-directory.js
new file mode 100644
index 00000000..f1380d16
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-node-directory.js
@@ -0,0 +1,119 @@
+'use strict'
+
+const test = require('tap').test
+const path = require('path')
+const findNodeDirectory = require('../lib/find-node-directory')
+
+const platforms = ['darwin', 'freebsd', 'linux', 'sunos', 'win32', 'aix']
+
+// we should find the directory based on the directory
+// the script is running in and it should match the layout
+// in a build tree where npm is installed in
+// .... /deps/npm
+test('test find-node-directory - node install', function (t) {
+ t.plan(platforms.length)
+ for (var next = 0; next < platforms.length; next++) {
+ var processObj = { execPath: '/x/y/bin/node', platform: platforms[next] }
+ t.equal(
+ findNodeDirectory('/x/deps/npm/node_modules/node-gyp/lib', processObj),
+ path.join('/x'))
+ }
+})
+
+// we should find the directory based on the directory
+// the script is running in and it should match the layout
+// in an installed tree where npm is installed in
+// .... /lib/node_modules/npm or .../node_modules/npm
+// depending on the patform
+test('test find-node-directory - node build', function (t) {
+ t.plan(platforms.length)
+ for (var next = 0; next < platforms.length; next++) {
+ var processObj = { execPath: '/x/y/bin/node', platform: platforms[next] }
+ if (platforms[next] === 'win32') {
+ t.equal(
+ findNodeDirectory('/y/node_modules/npm/node_modules/node-gyp/lib',
+ processObj), path.join('/y'))
+ } else {
+ t.equal(
+ findNodeDirectory('/y/lib/node_modules/npm/node_modules/node-gyp/lib',
+ processObj), path.join('/y'))
+ }
+ }
+})
+
+// we should find the directory based on the execPath
+// for node and match because it was in the bin directory
+test('test find-node-directory - node in bin directory', function (t) {
+ t.plan(platforms.length)
+ for (var next = 0; next < platforms.length; next++) {
+ var processObj = { execPath: '/x/y/bin/node', platform: platforms[next] }
+ t.equal(
+ findNodeDirectory('/nothere/npm/node_modules/node-gyp/lib', processObj),
+ path.join('/x/y'))
+ }
+})
+
+// we should find the directory based on the execPath
+// for node and match because it was in the Release directory
+test('test find-node-directory - node in build release dir', function (t) {
+ t.plan(platforms.length)
+ for (var next = 0; next < platforms.length; next++) {
+ var processObj
+ if (platforms[next] === 'win32') {
+ processObj = { execPath: '/x/y/Release/node', platform: platforms[next] }
+ } else {
+ processObj = {
+ execPath: '/x/y/out/Release/node',
+ platform: platforms[next]
+ }
+ }
+
+ t.equal(
+ findNodeDirectory('/nothere/npm/node_modules/node-gyp/lib', processObj),
+ path.join('/x/y'))
+ }
+})
+
+// we should find the directory based on the execPath
+// for node and match because it was in the Debug directory
+test('test find-node-directory - node in Debug release dir', function (t) {
+ t.plan(platforms.length)
+ for (var next = 0; next < platforms.length; next++) {
+ var processObj
+ if (platforms[next] === 'win32') {
+ processObj = { execPath: '/a/b/Debug/node', platform: platforms[next] }
+ } else {
+ processObj = { execPath: '/a/b/out/Debug/node', platform: platforms[next] }
+ }
+
+ t.equal(
+ findNodeDirectory('/nothere/npm/node_modules/node-gyp/lib', processObj),
+ path.join('/a/b'))
+ }
+})
+
+// we should not find it as it will not match based on the execPath nor
+// the directory from which the script is running
+test('test find-node-directory - not found', function (t) {
+ t.plan(platforms.length)
+ for (var next = 0; next < platforms.length; next++) {
+ var processObj = { execPath: '/x/y/z/y', platform: next }
+ t.equal(findNodeDirectory('/a/b/c/d', processObj), '')
+ }
+})
+
+// we should find the directory based on the directory
+// the script is running in and it should match the layout
+// in a build tree where npm is installed in
+// .... /deps/npm
+// same test as above but make sure additional directory entries
+// don't cause an issue
+test('test find-node-directory - node install', function (t) {
+ t.plan(platforms.length)
+ for (var next = 0; next < platforms.length; next++) {
+ var processObj = { execPath: '/x/y/bin/node', platform: platforms[next] }
+ t.equal(
+ findNodeDirectory('/x/y/z/a/b/c/deps/npm/node_modules/node-gyp/lib',
+ processObj), path.join('/x/y/z/a/b/c'))
+ }
+})
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-python.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-python.js
new file mode 100644
index 00000000..67d0b266
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-python.js
@@ -0,0 +1,226 @@
+'use strict'
+
+delete process.env.PYTHON
+
+const test = require('tap').test
+const findPython = require('../lib/find-python')
+const execFile = require('child_process').execFile
+const PythonFinder = findPython.test.PythonFinder
+
+require('npmlog').level = 'warn'
+
+test('find python', function (t) {
+ t.plan(4)
+
+ findPython.test.findPython(null, function (err, found) {
+ t.strictEqual(err, null)
+ var proc = execFile(found, ['-V'], function (err, stdout, stderr) {
+ t.strictEqual(err, null)
+ t.ok(/Python 3/.test(stdout))
+ t.strictEqual(stderr, '')
+ })
+ proc.stdout.setEncoding('utf-8')
+ proc.stderr.setEncoding('utf-8')
+ })
+})
+
+function poison (object, property) {
+ function fail () {
+ console.error(Error(`Property ${property} should not have been accessed.`))
+ process.abort()
+ }
+ var descriptor = {
+ configurable: false,
+ enumerable: false,
+ get: fail,
+ set: fail
+ }
+ Object.defineProperty(object, property, descriptor)
+}
+
+function TestPythonFinder () {
+ PythonFinder.apply(this, arguments)
+}
+TestPythonFinder.prototype = Object.create(PythonFinder.prototype)
+// Silence npmlog - remove for debugging
+TestPythonFinder.prototype.log = {
+ silly: () => {},
+ verbose: () => {},
+ info: () => {},
+ warn: () => {},
+ error: () => {}
+}
+delete TestPythonFinder.prototype.env.NODE_GYP_FORCE_PYTHON
+
+test('find python - python', function (t) {
+ t.plan(6)
+
+ var f = new TestPythonFinder('python', done)
+ f.execFile = function (program, args, opts, cb) {
+ f.execFile = function (program, args, opts, cb) {
+ poison(f, 'execFile')
+ t.strictEqual(program, '/path/python')
+ t.ok(/sys\.version_info/.test(args[1]))
+ cb(null, '3.9.1')
+ }
+ t.strictEqual(program,
+ process.platform === 'win32' ? '"python"' : 'python')
+ t.ok(/sys\.executable/.test(args[1]))
+ cb(null, '/path/python')
+ }
+ f.findPython()
+
+ function done (err, python) {
+ t.strictEqual(err, null)
+ t.strictEqual(python, '/path/python')
+ }
+})
+
+test('find python - python too old', function (t) {
+ t.plan(2)
+
+ var f = new TestPythonFinder(null, done)
+ f.execFile = function (program, args, opts, cb) {
+ if (/sys\.executable/.test(args[args.length - 1])) {
+ cb(null, '/path/python')
+ } else if (/sys\.version_info/.test(args[args.length - 1])) {
+ cb(null, '2.3.4')
+ } else {
+ t.fail()
+ }
+ }
+ f.findPython()
+
+ function done (err) {
+ t.ok(/Could not find any Python/.test(err))
+ t.ok(/not supported/i.test(f.errorLog))
+ }
+})
+
+test('find python - no python', function (t) {
+ t.plan(2)
+
+ var f = new TestPythonFinder(null, done)
+ f.execFile = function (program, args, opts, cb) {
+ if (/sys\.executable/.test(args[args.length - 1])) {
+ cb(new Error('not found'))
+ } else if (/sys\.version_info/.test(args[args.length - 1])) {
+ cb(new Error('not a Python executable'))
+ } else {
+ t.fail()
+ }
+ }
+ f.findPython()
+
+ function done (err) {
+ t.ok(/Could not find any Python/.test(err))
+ t.ok(/not in PATH/.test(f.errorLog))
+ }
+})
+
+test('find python - no python2, no python, unix', function (t) {
+ t.plan(2)
+
+ var f = new TestPythonFinder(null, done)
+ f.checkPyLauncher = t.fail
+ f.win = false
+
+ f.execFile = function (program, args, opts, cb) {
+ if (/sys\.executable/.test(args[args.length - 1])) {
+ cb(new Error('not found'))
+ } else {
+ t.fail()
+ }
+ }
+ f.findPython()
+
+ function done (err) {
+ t.ok(/Could not find any Python/.test(err))
+ t.ok(/not in PATH/.test(f.errorLog))
+ }
+})
+
+test('find python - no python, use python launcher', function (t) {
+ t.plan(4)
+
+ var f = new TestPythonFinder(null, done)
+ f.win = true
+
+ f.execFile = function (program, args, opts, cb) {
+ if (program === 'py.exe') {
+ t.notEqual(args.indexOf('-3'), -1)
+ t.notEqual(args.indexOf('-c'), -1)
+ return cb(null, 'Z:\\snake.exe')
+ }
+ if (/sys\.executable/.test(args[args.length - 1])) {
+ cb(new Error('not found'))
+ } else if (f.winDefaultLocations.includes(program)) {
+ cb(new Error('not found'))
+ } else if (/sys\.version_info/.test(args[args.length - 1])) {
+ if (program === 'Z:\\snake.exe') {
+ cb(null, '3.9.0')
+ } else {
+ t.fail()
+ }
+ } else {
+ t.fail()
+ }
+ }
+ f.findPython()
+
+ function done (err, python) {
+ t.strictEqual(err, null)
+ t.strictEqual(python, 'Z:\\snake.exe')
+ }
+})
+
+test('find python - no python, no python launcher, good guess', function (t) {
+ t.plan(2)
+
+ var f = new TestPythonFinder(null, done)
+ f.win = true
+ const expectedProgram = f.winDefaultLocations[0]
+
+ f.execFile = function (program, args, opts, cb) {
+ if (program === 'py.exe') {
+ return cb(new Error('not found'))
+ }
+ if (/sys\.executable/.test(args[args.length - 1])) {
+ cb(new Error('not found'))
+ } else if (program === expectedProgram &&
+ /sys\.version_info/.test(args[args.length - 1])) {
+ cb(null, '3.7.3')
+ } else {
+ t.fail()
+ }
+ }
+ f.findPython()
+
+ function done (err, python) {
+ t.strictEqual(err, null)
+ t.ok(python === expectedProgram)
+ }
+})
+
+test('find python - no python, no python launcher, bad guess', function (t) {
+ t.plan(2)
+
+ var f = new TestPythonFinder(null, done)
+ f.win = true
+
+ f.execFile = function (program, args, opts, cb) {
+ if (/sys\.executable/.test(args[args.length - 1])) {
+ cb(new Error('not found'))
+ } else if (/sys\.version_info/.test(args[args.length - 1])) {
+ cb(new Error('not a Python executable'))
+ } else {
+ t.fail()
+ }
+ }
+ f.findPython()
+
+ function done (err) {
+ t.ok(/Could not find any Python/.test(err))
+ t.ok(/not in PATH/.test(f.errorLog))
+ }
+})
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-visualstudio.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-visualstudio.js
new file mode 100644
index 00000000..1327cf88
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-find-visualstudio.js
@@ -0,0 +1,676 @@
+'use strict'
+
+const test = require('tap').test
+const fs = require('fs')
+const path = require('path')
+const findVisualStudio = require('../lib/find-visualstudio')
+const VisualStudioFinder = findVisualStudio.test.VisualStudioFinder
+
+const semverV1 = { major: 1, minor: 0, patch: 0 }
+
+delete process.env.VCINSTALLDIR
+
+function poison (object, property) {
+ function fail () {
+ console.error(Error(`Property ${property} should not have been accessed.`))
+ process.abort()
+ }
+ var descriptor = {
+ configurable: false,
+ enumerable: false,
+ get: fail,
+ set: fail
+ }
+ Object.defineProperty(object, property, descriptor)
+}
+
+function TestVisualStudioFinder () { VisualStudioFinder.apply(this, arguments) }
+TestVisualStudioFinder.prototype = Object.create(VisualStudioFinder.prototype)
+// Silence npmlog - remove for debugging
+TestVisualStudioFinder.prototype.log = {
+ silly: () => {},
+ verbose: () => {},
+ info: () => {},
+ warn: () => {},
+ error: () => {}
+}
+
+test('VS2013', function (t) {
+ t.plan(4)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info, {
+ msBuild: 'C:\\MSBuild12\\MSBuild.exe',
+ path: 'C:\\VS2013',
+ sdk: null,
+ toolset: 'v120',
+ version: '12.0',
+ versionMajor: 12,
+ versionMinor: 0,
+ versionYear: 2013
+ })
+ })
+
+ finder.findVisualStudio2017OrNewer = (cb) => {
+ finder.parseData(new Error(), '', '', cb)
+ }
+ finder.regSearchKeys = (keys, value, addOpts, cb) => {
+ for (var i = 0; i < keys.length; ++i) {
+ const fullName = `${keys[i]}\\${value}`
+ switch (fullName) {
+ case 'HKLM\\Software\\Microsoft\\VisualStudio\\SxS\\VC7\\14.0':
+ case 'HKLM\\Software\\Wow6432Node\\Microsoft\\VisualStudio\\SxS\\VC7\\14.0':
+ continue
+ case 'HKLM\\Software\\Microsoft\\VisualStudio\\SxS\\VC7\\12.0':
+ t.pass(`expected search for registry value ${fullName}`)
+ return cb(null, 'C:\\VS2013\\VC\\')
+ case 'HKLM\\Software\\Microsoft\\MSBuild\\ToolsVersions\\12.0\\MSBuildToolsPath':
+ t.pass(`expected search for registry value ${fullName}`)
+ return cb(null, 'C:\\MSBuild12\\')
+ default:
+ t.fail(`unexpected search for registry value ${fullName}`)
+ }
+ }
+ return cb(new Error())
+ }
+ finder.findVisualStudio()
+})
+
+test('VS2013 should not be found on new node versions', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder({
+ major: 10,
+ minor: 0,
+ patch: 0
+ }, null, (err, info) => {
+ t.ok(/find .* Visual Studio/i.test(err), 'expect error')
+ t.false(info, 'no data')
+ })
+
+ finder.findVisualStudio2017OrNewer = (cb) => {
+ const file = path.join(__dirname, 'fixtures', 'VS_2017_Unusable.txt')
+ const data = fs.readFileSync(file)
+ finder.parseData(null, data, '', cb)
+ }
+ finder.regSearchKeys = (keys, value, addOpts, cb) => {
+ for (var i = 0; i < keys.length; ++i) {
+ const fullName = `${keys[i]}\\${value}`
+ switch (fullName) {
+ case 'HKLM\\Software\\Microsoft\\VisualStudio\\SxS\\VC7\\14.0':
+ case 'HKLM\\Software\\Wow6432Node\\Microsoft\\VisualStudio\\SxS\\VC7\\14.0':
+ continue
+ default:
+ t.fail(`unexpected search for registry value ${fullName}`)
+ }
+ }
+ return cb(new Error())
+ }
+ finder.findVisualStudio()
+})
+
+test('VS2015', function (t) {
+ t.plan(4)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info, {
+ msBuild: 'C:\\MSBuild14\\MSBuild.exe',
+ path: 'C:\\VS2015',
+ sdk: null,
+ toolset: 'v140',
+ version: '14.0',
+ versionMajor: 14,
+ versionMinor: 0,
+ versionYear: 2015
+ })
+ })
+
+ finder.findVisualStudio2017OrNewer = (cb) => {
+ finder.parseData(new Error(), '', '', cb)
+ }
+ finder.regSearchKeys = (keys, value, addOpts, cb) => {
+ for (var i = 0; i < keys.length; ++i) {
+ const fullName = `${keys[i]}\\${value}`
+ switch (fullName) {
+ case 'HKLM\\Software\\Microsoft\\VisualStudio\\SxS\\VC7\\14.0':
+ t.pass(`expected search for registry value ${fullName}`)
+ return cb(null, 'C:\\VS2015\\VC\\')
+ case 'HKLM\\Software\\Microsoft\\MSBuild\\ToolsVersions\\14.0\\MSBuildToolsPath':
+ t.pass(`expected search for registry value ${fullName}`)
+ return cb(null, 'C:\\MSBuild14\\')
+ default:
+ t.fail(`unexpected search for registry value ${fullName}`)
+ }
+ }
+ return cb(new Error())
+ }
+ finder.findVisualStudio()
+})
+
+test('error from PowerShell', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, null)
+
+ finder.parseData(new Error(), '', '', (info) => {
+ t.ok(/use PowerShell/i.test(finder.errorLog[0]), 'expect error')
+ t.false(info, 'no data')
+ })
+})
+
+test('empty output from PowerShell', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, null)
+
+ finder.parseData(null, '', '', (info) => {
+ t.ok(/use PowerShell/i.test(finder.errorLog[0]), 'expect error')
+ t.false(info, 'no data')
+ })
+})
+
+test('output from PowerShell not JSON', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, null)
+
+ finder.parseData(null, 'AAAABBBB', '', (info) => {
+ t.ok(/use PowerShell/i.test(finder.errorLog[0]), 'expect error')
+ t.false(info, 'no data')
+ })
+})
+
+test('wrong JSON from PowerShell', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, null)
+
+ finder.parseData(null, '{}', '', (info) => {
+ t.ok(/use PowerShell/i.test(finder.errorLog[0]), 'expect error')
+ t.false(info, 'no data')
+ })
+})
+
+test('empty JSON from PowerShell', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, null)
+
+ finder.parseData(null, '[]', '', (info) => {
+ t.ok(/find .* Visual Studio/i.test(finder.errorLog[0]), 'expect error')
+ t.false(info, 'no data')
+ })
+})
+
+test('future version', function (t) {
+ t.plan(3)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, null)
+
+ finder.parseData(null, JSON.stringify([{
+ packages: [
+ 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64',
+ 'Microsoft.VisualStudio.Component.Windows10SDK.17763',
+ 'Microsoft.VisualStudio.VC.MSBuild.Base'
+ ],
+ path: 'C:\\VS',
+ version: '9999.9999.9999.9999'
+ }]), '', (info) => {
+ t.ok(/unknown version/i.test(finder.errorLog[0]), 'expect error')
+ t.ok(/find .* Visual Studio/i.test(finder.errorLog[1]), 'expect error')
+ t.false(info, 'no data')
+ })
+})
+
+test('single unusable VS2017', function (t) {
+ t.plan(3)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, null)
+
+ const file = path.join(__dirname, 'fixtures', 'VS_2017_Unusable.txt')
+ const data = fs.readFileSync(file)
+ finder.parseData(null, data, '', (info) => {
+ t.ok(/checking/i.test(finder.errorLog[0]), 'expect error')
+ t.ok(/find .* Visual Studio/i.test(finder.errorLog[2]), 'expect error')
+ t.false(info, 'no data')
+ })
+})
+
+test('minimal VS2017 Build Tools', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info, {
+ msBuild: 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\' +
+ 'BuildTools\\MSBuild\\15.0\\Bin\\MSBuild.exe',
+ path:
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\BuildTools',
+ sdk: '10.0.17134.0',
+ toolset: 'v141',
+ version: '15.9.28307.665',
+ versionMajor: 15,
+ versionMinor: 9,
+ versionYear: 2017
+ })
+ })
+
+ poison(finder, 'regSearchKeys')
+ finder.findVisualStudio2017OrNewer = (cb) => {
+ const file = path.join(__dirname, 'fixtures',
+ 'VS_2017_BuildTools_minimal.txt')
+ const data = fs.readFileSync(file)
+ finder.parseData(null, data, '', cb)
+ }
+ finder.findVisualStudio()
+})
+
+test('VS2017 Community with C++ workload', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info, {
+ msBuild: 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\' +
+ 'Community\\MSBuild\\15.0\\Bin\\MSBuild.exe',
+ path:
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community',
+ sdk: '10.0.17763.0',
+ toolset: 'v141',
+ version: '15.9.28307.665',
+ versionMajor: 15,
+ versionMinor: 9,
+ versionYear: 2017
+ })
+ })
+
+ poison(finder, 'regSearchKeys')
+ finder.findVisualStudio2017OrNewer = (cb) => {
+ const file = path.join(__dirname, 'fixtures',
+ 'VS_2017_Community_workload.txt')
+ const data = fs.readFileSync(file)
+ finder.parseData(null, data, '', cb)
+ }
+ finder.findVisualStudio()
+})
+
+test('VS2017 Express', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info, {
+ msBuild: 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\' +
+ 'WDExpress\\MSBuild\\15.0\\Bin\\MSBuild.exe',
+ path:
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\WDExpress',
+ sdk: '10.0.17763.0',
+ toolset: 'v141',
+ version: '15.9.28307.858',
+ versionMajor: 15,
+ versionMinor: 9,
+ versionYear: 2017
+ })
+ })
+
+ poison(finder, 'regSearchKeys')
+ finder.findVisualStudio2017OrNewer = (cb) => {
+ const file = path.join(__dirname, 'fixtures', 'VS_2017_Express.txt')
+ const data = fs.readFileSync(file)
+ finder.parseData(null, data, '', cb)
+ }
+ finder.findVisualStudio()
+})
+
+test('VS2019 Preview with C++ workload', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info, {
+ msBuild: 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\' +
+ 'Preview\\MSBuild\\Current\\Bin\\MSBuild.exe',
+ path:
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Preview',
+ sdk: '10.0.17763.0',
+ toolset: 'v142',
+ version: '16.0.28608.199',
+ versionMajor: 16,
+ versionMinor: 0,
+ versionYear: 2019
+ })
+ })
+
+ poison(finder, 'regSearchKeys')
+ finder.findVisualStudio2017OrNewer = (cb) => {
+ const file = path.join(__dirname, 'fixtures',
+ 'VS_2019_Preview.txt')
+ const data = fs.readFileSync(file)
+ finder.parseData(null, data, '', cb)
+ }
+ finder.findVisualStudio()
+})
+
+test('minimal VS2019 Build Tools', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info, {
+ msBuild: 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\' +
+ 'BuildTools\\MSBuild\\Current\\Bin\\MSBuild.exe',
+ path:
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools',
+ sdk: '10.0.17134.0',
+ toolset: 'v142',
+ version: '16.1.28922.388',
+ versionMajor: 16,
+ versionMinor: 1,
+ versionYear: 2019
+ })
+ })
+
+ poison(finder, 'regSearchKeys')
+ finder.findVisualStudio2017OrNewer = (cb) => {
+ const file = path.join(__dirname, 'fixtures',
+ 'VS_2019_BuildTools_minimal.txt')
+ const data = fs.readFileSync(file)
+ finder.parseData(null, data, '', cb)
+ }
+ finder.findVisualStudio()
+})
+
+test('VS2019 Community with C++ workload', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info, {
+ msBuild: 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\' +
+ 'Community\\MSBuild\\Current\\Bin\\MSBuild.exe',
+ path:
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community',
+ sdk: '10.0.17763.0',
+ toolset: 'v142',
+ version: '16.1.28922.388',
+ versionMajor: 16,
+ versionMinor: 1,
+ versionYear: 2019
+ })
+ })
+
+ poison(finder, 'regSearchKeys')
+ finder.findVisualStudio2017OrNewer = (cb) => {
+ const file = path.join(__dirname, 'fixtures',
+ 'VS_2019_Community_workload.txt')
+ const data = fs.readFileSync(file)
+ finder.parseData(null, data, '', cb)
+ }
+ finder.findVisualStudio()
+})
+
+function allVsVersions (t, finder) {
+ finder.findVisualStudio2017OrNewer = (cb) => {
+ const data0 = JSON.parse(fs.readFileSync(path.join(__dirname, 'fixtures',
+ 'VS_2017_Unusable.txt')))
+ const data1 = JSON.parse(fs.readFileSync(path.join(__dirname, 'fixtures',
+ 'VS_2017_BuildTools_minimal.txt')))
+ const data2 = JSON.parse(fs.readFileSync(path.join(__dirname, 'fixtures',
+ 'VS_2017_Community_workload.txt')))
+ const data3 = JSON.parse(fs.readFileSync(path.join(__dirname, 'fixtures',
+ 'VS_2017_Express.txt')))
+ const data4 = JSON.parse(fs.readFileSync(path.join(__dirname, 'fixtures',
+ 'VS_2019_Preview.txt')))
+ const data5 = JSON.parse(fs.readFileSync(path.join(__dirname, 'fixtures',
+ 'VS_2019_BuildTools_minimal.txt')))
+ const data6 = JSON.parse(fs.readFileSync(path.join(__dirname, 'fixtures',
+ 'VS_2019_Community_workload.txt')))
+ const data = JSON.stringify(data0.concat(data1, data2, data3, data4,
+ data5, data6))
+ finder.parseData(null, data, '', cb)
+ }
+ finder.regSearchKeys = (keys, value, addOpts, cb) => {
+ for (var i = 0; i < keys.length; ++i) {
+ const fullName = `${keys[i]}\\${value}`
+ switch (fullName) {
+ case 'HKLM\\Software\\Microsoft\\VisualStudio\\SxS\\VC7\\14.0':
+ case 'HKLM\\Software\\Microsoft\\VisualStudio\\SxS\\VC7\\12.0':
+ continue
+ case 'HKLM\\Software\\Wow6432Node\\Microsoft\\VisualStudio\\SxS\\VC7\\12.0':
+ return cb(null, 'C:\\VS2013\\VC\\')
+ case 'HKLM\\Software\\Microsoft\\MSBuild\\ToolsVersions\\12.0\\MSBuildToolsPath':
+ return cb(null, 'C:\\MSBuild12\\')
+ case 'HKLM\\Software\\Wow6432Node\\Microsoft\\VisualStudio\\SxS\\VC7\\14.0':
+ return cb(null, 'C:\\VS2015\\VC\\')
+ case 'HKLM\\Software\\Microsoft\\MSBuild\\ToolsVersions\\14.0\\MSBuildToolsPath':
+ return cb(null, 'C:\\MSBuild14\\')
+ default:
+ t.fail(`unexpected search for registry value ${fullName}`)
+ }
+ }
+ return cb(new Error())
+ }
+}
+
+test('fail when looking for invalid path', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, 'AABB', (err, info) => {
+ t.ok(/find .* Visual Studio/i.test(err), 'expect error')
+ t.false(info, 'no data')
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('look for VS2013 by version number', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, '2013', (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.versionYear, 2013)
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('look for VS2013 by installation path', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, 'C:\\VS2013',
+ (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.path, 'C:\\VS2013')
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('look for VS2015 by version number', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, '2015', (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.versionYear, 2015)
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('look for VS2015 by installation path', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, 'C:\\VS2015',
+ (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.path, 'C:\\VS2015')
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('look for VS2017 by version number', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, '2017', (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.versionYear, 2017)
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('look for VS2017 by installation path', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1,
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community',
+ (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.path,
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community')
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('look for VS2019 by version number', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, '2019', (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.versionYear, 2019)
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('look for VS2019 by installation path', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1,
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools',
+ (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.path,
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools')
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('msvs_version match should be case insensitive', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1,
+ 'c:\\program files (x86)\\microsoft visual studio\\2019\\BUILDTOOLS',
+ (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.path,
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools')
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('latest version should be found by default', function (t) {
+ t.plan(2)
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.versionYear, 2019)
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('run on a usable VS Command Prompt', function (t) {
+ t.plan(2)
+
+ process.env.VCINSTALLDIR = 'C:\\VS2015\\VC'
+ // VSINSTALLDIR is not defined on Visual C++ Build Tools 2015
+ delete process.env.VSINSTALLDIR
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.path, 'C:\\VS2015')
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('VCINSTALLDIR match should be case insensitive', function (t) {
+ t.plan(2)
+
+ process.env.VCINSTALLDIR =
+ 'c:\\program files (x86)\\microsoft visual studio\\2019\\BUILDTOOLS\\VC'
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.path,
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools')
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('run on a unusable VS Command Prompt', function (t) {
+ t.plan(2)
+
+ process.env.VCINSTALLDIR =
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildToolsUnusable\\VC'
+
+ const finder = new TestVisualStudioFinder(semverV1, null, (err, info) => {
+ t.ok(/find .* Visual Studio/i.test(err), 'expect error')
+ t.false(info, 'no data')
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('run on a VS Command Prompt with matching msvs_version', function (t) {
+ t.plan(2)
+
+ process.env.VCINSTALLDIR = 'C:\\VS2015\\VC'
+
+ const finder = new TestVisualStudioFinder(semverV1, 'C:\\VS2015',
+ (err, info) => {
+ t.strictEqual(err, null)
+ t.deepEqual(info.path, 'C:\\VS2015')
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
+
+test('run on a VS Command Prompt with mismatched msvs_version', function (t) {
+ t.plan(2)
+
+ process.env.VCINSTALLDIR =
+ 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools\\VC'
+
+ const finder = new TestVisualStudioFinder(semverV1, 'C:\\VS2015',
+ (err, info) => {
+ t.ok(/find .* Visual Studio/i.test(err), 'expect error')
+ t.false(info, 'no data')
+ })
+
+ allVsVersions(t, finder)
+ finder.findVisualStudio()
+})
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-install.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-install.js
new file mode 100644
index 00000000..5039dc99
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-install.js
@@ -0,0 +1,46 @@
+'use strict'
+
+const { test } = require('tap')
+const { test: { install } } = require('../lib/install')
+const log = require('npmlog')
+
+log.level = 'error' // we expect a warning
+
+test('EACCES retry once', async (t) => {
+ t.plan(3)
+
+ const fs = {
+ promises: {
+ stat (_) {
+ const err = new Error()
+ err.code = 'EACCES'
+ t.ok(true)
+ throw err
+ }
+ }
+ }
+
+ const Gyp = {
+ devDir: __dirname,
+ opts: {
+ ensure: true
+ },
+ commands: {
+ install (argv, cb) {
+ install(fs, Gyp, argv).then(cb, cb)
+ },
+ remove (_, cb) {
+ cb()
+ }
+ }
+ }
+
+ try {
+ await install(fs, Gyp, [])
+ } catch (err) {
+ t.ok(true)
+ if (/"pre" versions of node cannot be installed/.test(err.message)) {
+ t.ok(true)
+ }
+ }
+})
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-options.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-options.js
new file mode 100644
index 00000000..b2ac62c8
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-options.js
@@ -0,0 +1,31 @@
+'use strict'
+
+const test = require('tap').test
+const gyp = require('../lib/node-gyp')
+
+test('options in environment', (t) => {
+ t.plan(1)
+
+ // `npm test` dumps a ton of npm_config_* variables in the environment.
+ Object.keys(process.env)
+ .filter((key) => /^npm_config_/.test(key))
+ .forEach((key) => { delete process.env[key] })
+
+ // in some platforms, certain keys are stubborn and cannot be removed
+ const keys = Object.keys(process.env)
+ .filter((key) => /^npm_config_/.test(key))
+ .map((key) => key.substring('npm_config_'.length))
+ .concat('argv', 'x')
+
+ // Zero-length keys should get filtered out.
+ process.env.npm_config_ = '42'
+ // Other keys should get added.
+ process.env.npm_config_x = '42'
+ // Except loglevel.
+ process.env.npm_config_loglevel = 'debug'
+
+ const g = gyp()
+ g.parseArgv(['rebuild']) // Also sets opts.argv.
+
+ t.deepEqual(Object.keys(g.opts).sort(), keys.sort())
+})
diff --git a/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-process-release.js b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-process-release.js
new file mode 100644
index 00000000..c3ee0703
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/node-gyp/test/test-process-release.js
@@ -0,0 +1,434 @@
+'use strict'
+
+const test = require('tap').test
+const processRelease = require('../lib/process-release')
+
+test('test process release - process.version = 0.8.20', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v0.8.20', null)
+
+ t.equal(release.semver.version, '0.8.20')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '0.8.20',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/dist/v0.8.20/',
+ tarballUrl: 'https://nodejs.org/dist/v0.8.20/node-v0.8.20.tar.gz',
+ shasumsUrl: 'https://nodejs.org/dist/v0.8.20/SHASUMS256.txt',
+ versionDir: '0.8.20',
+ ia32: { libUrl: 'https://nodejs.org/dist/v0.8.20/node.lib', libPath: 'node.lib' },
+ x64: { libUrl: 'https://nodejs.org/dist/v0.8.20/x64/node.lib', libPath: 'x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/dist/v0.8.20/arm64/node.lib', libPath: 'arm64/node.lib' }
+ })
+})
+
+test('test process release - process.version = 0.10.21', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v0.10.21', null)
+
+ t.equal(release.semver.version, '0.10.21')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '0.10.21',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/dist/v0.10.21/',
+ tarballUrl: 'https://nodejs.org/dist/v0.10.21/node-v0.10.21.tar.gz',
+ shasumsUrl: 'https://nodejs.org/dist/v0.10.21/SHASUMS256.txt',
+ versionDir: '0.10.21',
+ ia32: { libUrl: 'https://nodejs.org/dist/v0.10.21/node.lib', libPath: 'node.lib' },
+ x64: { libUrl: 'https://nodejs.org/dist/v0.10.21/x64/node.lib', libPath: 'x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/dist/v0.10.21/arm64/node.lib', libPath: 'arm64/node.lib' }
+ })
+})
+
+// prior to -headers.tar.gz
+test('test process release - process.version = 0.12.9', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v0.12.9', null)
+
+ t.equal(release.semver.version, '0.12.9')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '0.12.9',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/dist/v0.12.9/',
+ tarballUrl: 'https://nodejs.org/dist/v0.12.9/node-v0.12.9.tar.gz',
+ shasumsUrl: 'https://nodejs.org/dist/v0.12.9/SHASUMS256.txt',
+ versionDir: '0.12.9',
+ ia32: { libUrl: 'https://nodejs.org/dist/v0.12.9/node.lib', libPath: 'node.lib' },
+ x64: { libUrl: 'https://nodejs.org/dist/v0.12.9/x64/node.lib', libPath: 'x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/dist/v0.12.9/arm64/node.lib', libPath: 'arm64/node.lib' }
+ })
+})
+
+// prior to -headers.tar.gz
+test('test process release - process.version = 0.10.41', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v0.10.41', null)
+
+ t.equal(release.semver.version, '0.10.41')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '0.10.41',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/dist/v0.10.41/',
+ tarballUrl: 'https://nodejs.org/dist/v0.10.41/node-v0.10.41.tar.gz',
+ shasumsUrl: 'https://nodejs.org/dist/v0.10.41/SHASUMS256.txt',
+ versionDir: '0.10.41',
+ ia32: { libUrl: 'https://nodejs.org/dist/v0.10.41/node.lib', libPath: 'node.lib' },
+ x64: { libUrl: 'https://nodejs.org/dist/v0.10.41/x64/node.lib', libPath: 'x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/dist/v0.10.41/arm64/node.lib', libPath: 'arm64/node.lib' }
+ })
+})
+
+// has -headers.tar.gz
+test('test process release - process.release ~ node@0.10.42', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v0.10.42', null)
+
+ t.equal(release.semver.version, '0.10.42')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '0.10.42',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/dist/v0.10.42/',
+ tarballUrl: 'https://nodejs.org/dist/v0.10.42/node-v0.10.42-headers.tar.gz',
+ shasumsUrl: 'https://nodejs.org/dist/v0.10.42/SHASUMS256.txt',
+ versionDir: '0.10.42',
+ ia32: { libUrl: 'https://nodejs.org/dist/v0.10.42/node.lib', libPath: 'node.lib' },
+ x64: { libUrl: 'https://nodejs.org/dist/v0.10.42/x64/node.lib', libPath: 'x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/dist/v0.10.42/arm64/node.lib', libPath: 'arm64/node.lib' }
+ })
+})
+
+// has -headers.tar.gz
+test('test process release - process.release ~ node@0.12.10', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v0.12.10', null)
+
+ t.equal(release.semver.version, '0.12.10')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '0.12.10',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/dist/v0.12.10/',
+ tarballUrl: 'https://nodejs.org/dist/v0.12.10/node-v0.12.10-headers.tar.gz',
+ shasumsUrl: 'https://nodejs.org/dist/v0.12.10/SHASUMS256.txt',
+ versionDir: '0.12.10',
+ ia32: { libUrl: 'https://nodejs.org/dist/v0.12.10/node.lib', libPath: 'node.lib' },
+ x64: { libUrl: 'https://nodejs.org/dist/v0.12.10/x64/node.lib', libPath: 'x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/dist/v0.12.10/arm64/node.lib', libPath: 'arm64/node.lib' }
+ })
+})
+
+test('test process release - process.release ~ node@4.1.23', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v4.1.23', {
+ name: 'node',
+ headersUrl: 'https://nodejs.org/dist/v4.1.23/node-v4.1.23-headers.tar.gz'
+ })
+
+ t.equal(release.semver.version, '4.1.23')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '4.1.23',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/dist/v4.1.23/',
+ tarballUrl: 'https://nodejs.org/dist/v4.1.23/node-v4.1.23-headers.tar.gz',
+ shasumsUrl: 'https://nodejs.org/dist/v4.1.23/SHASUMS256.txt',
+ versionDir: '4.1.23',
+ ia32: { libUrl: 'https://nodejs.org/dist/v4.1.23/win-x86/node.lib', libPath: 'win-x86/node.lib' },
+ x64: { libUrl: 'https://nodejs.org/dist/v4.1.23/win-x64/node.lib', libPath: 'win-x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/dist/v4.1.23/win-arm64/node.lib', libPath: 'win-arm64/node.lib' }
+ })
+})
+
+test('test process release - process.release ~ node@4.1.23 / corp build', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v4.1.23', {
+ name: 'node',
+ headersUrl: 'https://some.custom.location/node-v4.1.23-headers.tar.gz'
+ })
+
+ t.equal(release.semver.version, '4.1.23')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '4.1.23',
+ name: 'node',
+ baseUrl: 'https://some.custom.location/',
+ tarballUrl: 'https://some.custom.location/node-v4.1.23-headers.tar.gz',
+ shasumsUrl: 'https://some.custom.location/SHASUMS256.txt',
+ versionDir: '4.1.23',
+ ia32: { libUrl: 'https://some.custom.location/win-x86/node.lib', libPath: 'win-x86/node.lib' },
+ x64: { libUrl: 'https://some.custom.location/win-x64/node.lib', libPath: 'win-x64/node.lib' },
+ arm64: { libUrl: 'https://some.custom.location/win-arm64/node.lib', libPath: 'win-arm64/node.lib' }
+ })
+})
+
+test('test process release - process.release ~ node@12.8.0 Windows', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v12.8.0', {
+ name: 'node',
+ sourceUrl: 'https://nodejs.org/download/release/v12.8.0/node-v12.8.0.tar.gz',
+ headersUrl: 'https://nodejs.org/download/release/v12.8.0/node-v12.8.0-headers.tar.gz',
+ libUrl: 'https://nodejs.org/download/release/v12.8.0/win-x64/node.lib'
+ })
+
+ t.equal(release.semver.version, '12.8.0')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '12.8.0',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/download/release/v12.8.0/',
+ tarballUrl: 'https://nodejs.org/download/release/v12.8.0/node-v12.8.0-headers.tar.gz',
+ shasumsUrl: 'https://nodejs.org/download/release/v12.8.0/SHASUMS256.txt',
+ versionDir: '12.8.0',
+ ia32: { libUrl: 'https://nodejs.org/download/release/v12.8.0/win-x86/node.lib', libPath: 'win-x86/node.lib' },
+ x64: { libUrl: 'https://nodejs.org/download/release/v12.8.0/win-x64/node.lib', libPath: 'win-x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/download/release/v12.8.0/win-arm64/node.lib', libPath: 'win-arm64/node.lib' }
+ })
+})
+
+test('test process release - process.release ~ node@12.8.0 Windows ARM64', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v12.8.0', {
+ name: 'node',
+ sourceUrl: 'https://unofficial-builds.nodejs.org/download/release/v12.8.0/node-v12.8.0.tar.gz',
+ headersUrl: 'https://unofficial-builds.nodejs.org/download/release/v12.8.0/node-v12.8.0-headers.tar.gz',
+ libUrl: 'https://unofficial-builds.nodejs.org/download/release/v12.8.0/win-arm64/node.lib'
+ })
+
+ t.equal(release.semver.version, '12.8.0')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '12.8.0',
+ name: 'node',
+ baseUrl: 'https://unofficial-builds.nodejs.org/download/release/v12.8.0/',
+ tarballUrl: 'https://unofficial-builds.nodejs.org/download/release/v12.8.0/node-v12.8.0-headers.tar.gz',
+ shasumsUrl: 'https://unofficial-builds.nodejs.org/download/release/v12.8.0/SHASUMS256.txt',
+ versionDir: '12.8.0',
+ ia32: { libUrl: 'https://unofficial-builds.nodejs.org/download/release/v12.8.0/win-x86/node.lib', libPath: 'win-x86/node.lib' },
+ x64: { libUrl: 'https://unofficial-builds.nodejs.org/download/release/v12.8.0/win-x64/node.lib', libPath: 'win-x64/node.lib' },
+ arm64: { libUrl: 'https://unofficial-builds.nodejs.org/download/release/v12.8.0/win-arm64/node.lib', libPath: 'win-arm64/node.lib' }
+ })
+})
+
+test('test process release - process.release ~ node@4.1.23 --target=0.10.40', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: { target: '0.10.40' } }, 'v4.1.23', {
+ name: 'node',
+ headersUrl: 'https://nodejs.org/dist/v4.1.23/node-v4.1.23-headers.tar.gz'
+ })
+
+ t.equal(release.semver.version, '0.10.40')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '0.10.40',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/dist/v0.10.40/',
+ tarballUrl: 'https://nodejs.org/dist/v0.10.40/node-v0.10.40.tar.gz',
+ shasumsUrl: 'https://nodejs.org/dist/v0.10.40/SHASUMS256.txt',
+ versionDir: '0.10.40',
+ ia32: { libUrl: 'https://nodejs.org/dist/v0.10.40/node.lib', libPath: 'node.lib' },
+ x64: { libUrl: 'https://nodejs.org/dist/v0.10.40/x64/node.lib', libPath: 'x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/dist/v0.10.40/arm64/node.lib', libPath: 'arm64/node.lib' }
+ })
+})
+
+test('test process release - process.release ~ node@4.1.23 --dist-url=https://foo.bar/baz', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: { 'dist-url': 'https://foo.bar/baz' } }, 'v4.1.23', {
+ name: 'node',
+ headersUrl: 'https://nodejs.org/dist/v4.1.23/node-v4.1.23-headers.tar.gz'
+ })
+
+ t.equal(release.semver.version, '4.1.23')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '4.1.23',
+ name: 'node',
+ baseUrl: 'https://foo.bar/baz/v4.1.23/',
+ tarballUrl: 'https://foo.bar/baz/v4.1.23/node-v4.1.23-headers.tar.gz',
+ shasumsUrl: 'https://foo.bar/baz/v4.1.23/SHASUMS256.txt',
+ versionDir: '4.1.23',
+ ia32: { libUrl: 'https://foo.bar/baz/v4.1.23/win-x86/node.lib', libPath: 'win-x86/node.lib' },
+ x64: { libUrl: 'https://foo.bar/baz/v4.1.23/win-x64/node.lib', libPath: 'win-x64/node.lib' },
+ arm64: { libUrl: 'https://foo.bar/baz/v4.1.23/win-arm64/node.lib', libPath: 'win-arm64/node.lib' }
+ })
+})
+
+test('test process release - process.release ~ frankenstein@4.1.23', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v4.1.23', {
+ name: 'frankenstein',
+ headersUrl: 'https://frankensteinjs.org/dist/v4.1.23/frankenstein-v4.1.23-headers.tar.gz'
+ })
+
+ t.equal(release.semver.version, '4.1.23')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '4.1.23',
+ name: 'frankenstein',
+ baseUrl: 'https://frankensteinjs.org/dist/v4.1.23/',
+ tarballUrl: 'https://frankensteinjs.org/dist/v4.1.23/frankenstein-v4.1.23-headers.tar.gz',
+ shasumsUrl: 'https://frankensteinjs.org/dist/v4.1.23/SHASUMS256.txt',
+ versionDir: 'frankenstein-4.1.23',
+ ia32: { libUrl: 'https://frankensteinjs.org/dist/v4.1.23/win-x86/frankenstein.lib', libPath: 'win-x86/frankenstein.lib' },
+ x64: { libUrl: 'https://frankensteinjs.org/dist/v4.1.23/win-x64/frankenstein.lib', libPath: 'win-x64/frankenstein.lib' },
+ arm64: { libUrl: 'https://frankensteinjs.org/dist/v4.1.23/win-arm64/frankenstein.lib', libPath: 'win-arm64/frankenstein.lib' }
+ })
+})
+
+test('test process release - process.release ~ frankenstein@4.1.23 --dist-url=http://foo.bar/baz/', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: { 'dist-url': 'http://foo.bar/baz/' } }, 'v4.1.23', {
+ name: 'frankenstein',
+ headersUrl: 'https://frankensteinjs.org/dist/v4.1.23/frankenstein-v4.1.23.tar.gz'
+ })
+
+ t.equal(release.semver.version, '4.1.23')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '4.1.23',
+ name: 'frankenstein',
+ baseUrl: 'http://foo.bar/baz/v4.1.23/',
+ tarballUrl: 'http://foo.bar/baz/v4.1.23/frankenstein-v4.1.23-headers.tar.gz',
+ shasumsUrl: 'http://foo.bar/baz/v4.1.23/SHASUMS256.txt',
+ versionDir: 'frankenstein-4.1.23',
+ ia32: { libUrl: 'http://foo.bar/baz/v4.1.23/win-x86/frankenstein.lib', libPath: 'win-x86/frankenstein.lib' },
+ x64: { libUrl: 'http://foo.bar/baz/v4.1.23/win-x64/frankenstein.lib', libPath: 'win-x64/frankenstein.lib' },
+ arm64: { libUrl: 'http://foo.bar/baz/v4.1.23/win-arm64/frankenstein.lib', libPath: 'win-arm64/frankenstein.lib' }
+ })
+})
+
+test('test process release - process.release ~ node@4.0.0-rc.4', function (t) {
+ t.plan(2)
+
+ var release = processRelease([], { opts: {} }, 'v4.0.0-rc.4', {
+ name: 'node',
+ headersUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/node-v4.0.0-rc.4-headers.tar.gz'
+ })
+
+ t.equal(release.semver.version, '4.0.0-rc.4')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '4.0.0-rc.4',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/',
+ tarballUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/node-v4.0.0-rc.4-headers.tar.gz',
+ shasumsUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/SHASUMS256.txt',
+ versionDir: '4.0.0-rc.4',
+ ia32: { libUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-x86/node.lib', libPath: 'win-x86/node.lib' },
+ x64: { libUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-x64/node.lib', libPath: 'win-x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-arm64/node.lib', libPath: 'win-arm64/node.lib' }
+ })
+})
+
+test('test process release - process.release ~ node@4.0.0-rc.4 passed as argv[0]', function (t) {
+ t.plan(2)
+
+ // note the missing 'v' on the arg, it should normalise when checking
+ // whether we're on the default or not
+ var release = processRelease(['4.0.0-rc.4'], { opts: {} }, 'v4.0.0-rc.4', {
+ name: 'node',
+ headersUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/node-v4.0.0-rc.4-headers.tar.gz'
+ })
+
+ t.equal(release.semver.version, '4.0.0-rc.4')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '4.0.0-rc.4',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/',
+ tarballUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/node-v4.0.0-rc.4-headers.tar.gz',
+ shasumsUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/SHASUMS256.txt',
+ versionDir: '4.0.0-rc.4',
+ ia32: { libUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-x86/node.lib', libPath: 'win-x86/node.lib' },
+ x64: { libUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-x64/node.lib', libPath: 'win-x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-arm64/node.lib', libPath: 'win-arm64/node.lib' }
+ })
+})
+
+test('test process release - process.release ~ node@4.0.0-rc.4 - bogus string passed as argv[0]', function (t) {
+ t.plan(2)
+
+ // additional arguments can be passed in on the commandline that should be ignored if they
+ // are not specifying a valid version @ position 0
+ var release = processRelease(['this is no version!'], { opts: {} }, 'v4.0.0-rc.4', {
+ name: 'node',
+ headersUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/node-v4.0.0-rc.4-headers.tar.gz'
+ })
+
+ t.equal(release.semver.version, '4.0.0-rc.4')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '4.0.0-rc.4',
+ name: 'node',
+ baseUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/',
+ tarballUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/node-v4.0.0-rc.4-headers.tar.gz',
+ shasumsUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/SHASUMS256.txt',
+ versionDir: '4.0.0-rc.4',
+ ia32: { libUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-x86/node.lib', libPath: 'win-x86/node.lib' },
+ x64: { libUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-x64/node.lib', libPath: 'win-x64/node.lib' },
+ arm64: { libUrl: 'https://nodejs.org/download/rc/v4.0.0-rc.4/win-arm64/node.lib', libPath: 'win-arm64/node.lib' }
+ })
+})
+
+test('test process release - NODEJS_ORG_MIRROR', function (t) {
+ t.plan(2)
+
+ process.env.NODEJS_ORG_MIRROR = 'http://foo.bar'
+
+ var release = processRelease([], { opts: {} }, 'v4.1.23', {
+ name: 'node',
+ headersUrl: 'https://nodejs.org/dist/v4.1.23/node-v4.1.23-headers.tar.gz'
+ })
+
+ t.equal(release.semver.version, '4.1.23')
+ delete release.semver
+
+ t.deepEqual(release, {
+ version: '4.1.23',
+ name: 'node',
+ baseUrl: 'http://foo.bar/v4.1.23/',
+ tarballUrl: 'http://foo.bar/v4.1.23/node-v4.1.23-headers.tar.gz',
+ shasumsUrl: 'http://foo.bar/v4.1.23/SHASUMS256.txt',
+ versionDir: '4.1.23',
+ ia32: { libUrl: 'http://foo.bar/v4.1.23/win-x86/node.lib', libPath: 'win-x86/node.lib' },
+ x64: { libUrl: 'http://foo.bar/v4.1.23/win-x64/node.lib', libPath: 'win-x64/node.lib' },
+ arm64: { libUrl: 'http://foo.bar/v4.1.23/win-arm64/node.lib', libPath: 'win-arm64/node.lib' }
+ })
+
+ delete process.env.NODEJS_ORG_MIRROR
+})