mirror of
https://github.com/velopack/velopack.git
synced 2025-10-25 15:19:22 +00:00
Fixing broken tests
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
using System.Diagnostics;
|
||||
using System.Diagnostics;
|
||||
using System.Globalization;
|
||||
using System.Runtime.Versioning;
|
||||
using System.Xml.Linq;
|
||||
@@ -258,7 +258,7 @@ public class WindowsPackTests
|
||||
}
|
||||
|
||||
[SkippableFact]
|
||||
public void TestAppAutoUpdatesWhenLocalIsAvailable()
|
||||
public async Task TestAppAutoUpdatesWhenLocalIsAvailable()
|
||||
{
|
||||
Skip.IfNot(VelopackRuntimeInfo.IsWindows);
|
||||
using var logger = _output.BuildLoggerFor<WindowsPackTests>();
|
||||
@@ -268,7 +268,7 @@ public class WindowsPackTests
|
||||
var appPath = Path.Combine(installDir, "current", "TestApp.exe");
|
||||
|
||||
// pack v1
|
||||
PackTestApp(id, "1.0.0", "version 1 test", releaseDir, logger);
|
||||
await PackTestApp(id, "1.0.0", "version 1 test", releaseDir, logger);
|
||||
|
||||
// install app
|
||||
var setupPath1 = Path.Combine(releaseDir, $"{id}-win-Setup.exe");
|
||||
@@ -279,7 +279,7 @@ public class WindowsPackTests
|
||||
logger);
|
||||
|
||||
// pack v2
|
||||
PackTestApp(id, "2.0.0", "version 2 test", releaseDir, logger);
|
||||
await PackTestApp(id, "2.0.0", "version 2 test", releaseDir, logger);
|
||||
|
||||
// move package into local packages dir
|
||||
var fileName = $"{id}-2.0.0-full.nupkg";
|
||||
@@ -296,15 +296,15 @@ public class WindowsPackTests
|
||||
}
|
||||
|
||||
[SkippableFact]
|
||||
public void TestPackGeneratesValidDelta()
|
||||
public async Task TestPackGeneratesValidDelta()
|
||||
{
|
||||
Skip.IfNot(VelopackRuntimeInfo.IsWindows);
|
||||
using var _1 = TempUtil.GetTempDirectory(out var releaseDir);
|
||||
using var logger = _output.BuildLoggerFor<WindowsPackTests>();
|
||||
string id = "SquirrelDeltaTest";
|
||||
PackTestApp(id, "1.0.0", "version 1 test", releaseDir, logger);
|
||||
PackTestApp(id, "2.0.0", "version 2 test", releaseDir, logger, true);
|
||||
PackTestApp(id, "3.0.0", "version 3 test", releaseDir, logger);
|
||||
await PackTestApp(id, "1.0.0", "version 1 test", releaseDir, logger);
|
||||
await PackTestApp(id, "2.0.0", "version 2 test", releaseDir, logger, true);
|
||||
await PackTestApp(id, "3.0.0", "version 3 test", releaseDir, logger);
|
||||
|
||||
// did a zsdiff get created for our v2 update?
|
||||
var deltaPath = Path.Combine(releaseDir, $"{id}-2.0.0-delta.nupkg");
|
||||
@@ -369,7 +369,7 @@ public class WindowsPackTests
|
||||
}
|
||||
|
||||
[SkippableFact]
|
||||
public void TestAppHooks()
|
||||
public async Task TestAppHooks()
|
||||
{
|
||||
Skip.IfNot(VelopackRuntimeInfo.IsWindows);
|
||||
using var logger = _output.BuildLoggerFor<WindowsPackTests>();
|
||||
@@ -379,7 +379,7 @@ public class WindowsPackTests
|
||||
var appPath = Path.Combine(installDir, "current", "TestApp.exe");
|
||||
|
||||
// pack v1
|
||||
PackTestApp(id, "1.0.0", "version 1 test", releaseDir, logger);
|
||||
await PackTestApp(id, "1.0.0", "version 1 test", releaseDir, logger);
|
||||
|
||||
// install app
|
||||
var setupPath1 = Path.Combine(releaseDir, $"{id}-win-Setup.exe");
|
||||
@@ -398,7 +398,7 @@ public class WindowsPackTests
|
||||
Assert.Equal("1.0.0", File.ReadAllText(firstRun).Trim());
|
||||
|
||||
// pack v2
|
||||
PackTestApp(id, "2.0.0", "version 2 test", releaseDir, logger);
|
||||
await PackTestApp(id, "2.0.0", "version 2 test", releaseDir, logger);
|
||||
|
||||
// install v2
|
||||
RunCoveredDotnet(appPath, ["download", releaseDir], installDir, logger);
|
||||
@@ -421,7 +421,7 @@ public class WindowsPackTests
|
||||
}
|
||||
|
||||
[SkippableFact]
|
||||
public void TestPackedAppCanDeltaUpdateToLatest()
|
||||
public async Task TestPackedAppCanDeltaUpdateToLatest()
|
||||
{
|
||||
Skip.IfNot(VelopackRuntimeInfo.IsWindows);
|
||||
using var logger = _output.BuildLoggerFor<WindowsPackTests>();
|
||||
@@ -431,7 +431,7 @@ public class WindowsPackTests
|
||||
string id = "SquirrelIntegrationTest";
|
||||
|
||||
// pack v1
|
||||
PackTestApp(id, "1.0.0", "version 1 test", releaseDir, logger);
|
||||
await PackTestApp(id, "1.0.0", "version 1 test", releaseDir, logger);
|
||||
|
||||
// install app
|
||||
var setupPath1 = Path.Combine(releaseDir, $"{id}-win-Setup.exe");
|
||||
@@ -460,7 +460,7 @@ public class WindowsPackTests
|
||||
logger.Info("TEST: v1 output verified");
|
||||
|
||||
// pack v2
|
||||
PackTestApp(id, "2.0.0", "version 2 test", releaseDir, logger);
|
||||
await PackTestApp(id, "2.0.0", "version 2 test", releaseDir, logger);
|
||||
|
||||
// check can find v2 update
|
||||
var chk2check = RunCoveredDotnet(appPath, ["check", releaseDir], installDir, logger);
|
||||
@@ -468,7 +468,7 @@ public class WindowsPackTests
|
||||
logger.Info("TEST: found v2 update");
|
||||
|
||||
// pack v3
|
||||
PackTestApp(id, "3.0.0", "version 3 test", releaseDir, logger);
|
||||
await PackTestApp(id, "3.0.0", "version 3 test", releaseDir, logger);
|
||||
|
||||
// corrupt v2/v3 full packages as we want to test delta's
|
||||
File.WriteAllText(Path.Combine(releaseDir, $"{id}-2.0.0-win-full.nupkg"), "nope");
|
||||
@@ -511,7 +511,7 @@ public class WindowsPackTests
|
||||
[SkippableTheory]
|
||||
[InlineData("LegacyTestApp-ClowdV2-Setup.exe", "app-1.0.0")]
|
||||
[InlineData("LegacyTestApp-SquirrelWinV2-Setup.exe", "app-1.0.0")]
|
||||
public void LegacyAppCanMigrateUsingCli(string fixture, string origDirName)
|
||||
public async Task LegacyAppCanMigrateUsingCli(string fixture, string origDirName)
|
||||
{
|
||||
Skip.IfNot(VelopackRuntimeInfo.IsWindows);
|
||||
using var logger = _output.BuildLoggerFor<WindowsPackTests>();
|
||||
@@ -540,7 +540,7 @@ public class WindowsPackTests
|
||||
retryDelay: 1000);
|
||||
|
||||
using var _1 = TempUtil.GetTempDirectory(out var releaseDir);
|
||||
PackTestApp("LegacyTestApp", "2.0.0", "hello!", releaseDir, logger, assemblyNameOverride: "LegacyTestApp");
|
||||
await PackTestApp("LegacyTestApp", "2.0.0", "hello!", releaseDir, logger, assemblyNameOverride: "LegacyTestApp");
|
||||
|
||||
RunNoCoverage(updateExe, ["--update", releaseDir], currentDir, logger, exitCode: 0);
|
||||
Thread.Sleep(2000); // update.exe does a self update after
|
||||
@@ -575,7 +575,7 @@ public class WindowsPackTests
|
||||
[InlineData("LegacyTestApp-ClowdV3-Setup.exe", "current")]
|
||||
[InlineData("LegacyTestApp-SquirrelWinV2-Setup.exe", "app-1.0.0")]
|
||||
[InlineData("LegacyTestApp-Velopack0084-Setup.exe", "current")]
|
||||
public void LegacyAppCanMigrate(string fixture, string origDirName)
|
||||
public async Task LegacyAppCanMigrate(string fixture, string origDirName)
|
||||
{
|
||||
Skip.IfNot(VelopackRuntimeInfo.IsWindows);
|
||||
using var logger = _output.BuildLoggerFor<WindowsPackTests>();
|
||||
@@ -603,7 +603,7 @@ public class WindowsPackTests
|
||||
retryDelay: 1000);
|
||||
|
||||
using var _1 = TempUtil.GetTempDirectory(out var releaseDir);
|
||||
PackTestApp("LegacyTestApp", "2.0.0", "hello!", releaseDir, logger);
|
||||
await PackTestApp("LegacyTestApp", "2.0.0", "hello!", releaseDir, logger);
|
||||
|
||||
RunNoCoverage(appExe, ["download", releaseDir], currentDir, logger, exitCode: 0);
|
||||
RunNoCoverage(appExe, ["apply", releaseDir], currentDir, logger, exitCode: null);
|
||||
@@ -612,7 +612,8 @@ public class WindowsPackTests
|
||||
|
||||
Thread.Sleep(10_000); // update.exe runs in a separate process here
|
||||
|
||||
string logContents = ReadFileWithRetry(Path.Combine(rootDir, "Velopack.log"), logger);
|
||||
var logPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "velopack", "LegacyTestApp", "Velopack.log");
|
||||
string logContents = ReadFileWithRetry(logPath, logger);
|
||||
logger.Info("Velopack.log:" + Environment.NewLine + logContents);
|
||||
logger.Info("TEST: " + DateTime.Now.ToLongTimeString());
|
||||
|
||||
@@ -667,7 +668,7 @@ public class WindowsPackTests
|
||||
var runner = GetPackRunner(logger);
|
||||
await runner.Run(options);
|
||||
|
||||
string msiPath = Path.Combine(tmpReleaseDir, $"{id}-win-DeploymentTool.msi");
|
||||
string msiPath = Path.Combine(tmpReleaseDir, $"{id}-win.msi");
|
||||
Assert.True(File.Exists(msiPath));
|
||||
using Database db = new Database(msiPath);
|
||||
var msiVersion = db.ExecuteScalar("SELECT `Value` FROM `Property` WHERE `Property` = 'ProductVersion'") as string;
|
||||
@@ -869,7 +870,7 @@ public class WindowsPackTests
|
||||
return RunImpl(psi, logger, exitCode);
|
||||
}
|
||||
|
||||
private static void PackTestApp(string id, string version, string testString, string releaseDir, ILogger logger,
|
||||
private static async Task PackTestApp(string id, string version, string testString, string releaseDir, ILogger logger,
|
||||
bool addNewFile = false, string assemblyNameOverride = null)
|
||||
{
|
||||
var projDir = PathHelper.GetTestRootPath("TestApp");
|
||||
@@ -930,7 +931,7 @@ public class WindowsPackTests
|
||||
};
|
||||
|
||||
var runner = GetPackRunner(logger);
|
||||
runner.Run(options).GetAwaiterResult();
|
||||
await runner.Run(options);
|
||||
} finally {
|
||||
File.WriteAllText(testStringFile, oldText);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user