public ApexTestContext(VisualStudioHost visualStudio, ProjectTemplate projectTemplate, ILogger logger, bool noAutoRestore = false, bool addNetStandardFeeds = false) { logger.LogInformation("Creating test context"); _pathContext = new SimpleTestPathContext(); if (noAutoRestore) { _pathContext.Settings.DisableAutoRestore(); } if (addNetStandardFeeds) { _pathContext.Settings.AddNetStandardFeeds(); } _visualStudio = visualStudio; _logger = logger; SolutionService = _visualStudio.Get <SolutionService>(); NuGetApexTestService = _visualStudio.Get <NuGetApexTestService>(); VisualStudioHostExtension.ClearWindows(_visualStudio); Project = CommonUtility.CreateAndInitProject(projectTemplate, _pathContext, SolutionService, logger); NuGetApexTestService.WaitForAutoRestore(); }
public static void AssertPackageIsNotInstalled(NuGetApexTestService testService, ProjectTestExtension project, string packageName, string packageVersion) { var assetsFilePath = GetAssetsFilePath(project.FullPath); if (File.Exists(assetsFilePath)) { // Project has an assets file, let's look there to assert var inAssetsFile = IsPackageInstalledInAssetsFile(assetsFilePath, packageName, packageVersion); inAssetsFile.Should().BeFalse($"{packageName}-{packageVersion} should not be installed in {project.Name}"); return; } // Project has not assets file, let's use IVS API to assert testService.Verify.PackageIsNotInstalled(project.UniqueName, packageName, packageVersion); }
public ApexTestContext(VisualStudioHost visualStudio, ProjectTemplate projectTemplate, ILogger logger, bool noAutoRestore = false) { logger.LogInformation("Creating test context"); _pathContext = new SimpleTestPathContext(); if (noAutoRestore) { _pathContext.Settings.DisableAutoRestore(); } _visualStudio = visualStudio; _logger = logger; SolutionService = _visualStudio.Get <SolutionService>(); NuGetApexTestService = _visualStudio.Get <NuGetApexTestService>(); Project = Utils.CreateAndInitProject(projectTemplate, _pathContext, SolutionService, logger); NuGetApexTestService.WaitForAutoRestore(); }
protected NuGetConsoleTestExtension GetConsole(ProjectTestExtension project) { XunitLogger.LogInformation("GetConsole"); VisualStudio.ClearWindows(); NuGetApexTestService nugetTestService = GetNuGetTestService(); XunitLogger.LogInformation("EnsurePackageManagerConsoleIsOpen"); nugetTestService.EnsurePackageManagerConsoleIsOpen().Should().BeTrue("Console was opened"); XunitLogger.LogInformation("GetPackageManagerConsole"); _console = nugetTestService.GetPackageManagerConsole(project.Name); // This is not a magic number. // It is intended to eliminate unexpected hard line breaks in PMC output which might foil validation, // but not so large as to create memory problems. _console.SetConsoleWidth(consoleWidth: 1024); nugetTestService.WaitForAutoRestore(); XunitLogger.LogInformation("GetConsole complete"); return(_console); }