fix: preserve Windows data during upgrades
This commit is contained in:
1 parent
0354fe7050
commit
ac65508ddb
3 files changed
+1003
No files matched your search
@@ -0,0 +1,23 @@
|
||||
import { existsSync, readFileSync } from "node:fs";
|
||||
import { strict as assert } from "node:assert";
|
||||
import { join } from "node:path";
|
||||
import test from "node:test";
|
||||
|
||||
const tauriConfig = JSON.parse(readFileSync("src-tauri/tauri.conf.json", "utf8")) as {
|
||||
bundle?: { windows?: { nsis?: { installMode?: string; template?: string } } };
|
||||
};
|
||||
const nsisTemplate = readFileSync("src-tauri/windows/nsis/installer.nsi", "utf8");
|
||||
|
||||
test("Windows NSIS installer template is tracked by config", () => {
|
||||
const nsis = tauriConfig.bundle?.windows?.nsis;
|
||||
|
||||
assert.equal(nsis?.installMode, "currentUser");
|
||||
assert.equal(nsis?.template, "windows/nsis/installer.nsi");
|
||||
assert.equal(existsSync(join("src-tauri", nsis.template)), true);
|
||||
});
|
||||
|
||||
test("Windows upgrades preserve user data when reinstalling", () => {
|
||||
assert.match(nsisTemplate, /\$\{OrIf\} \$R0 = 1/);
|
||||
assert.match(nsisTemplate, /StrCpy \$R1 "\$R1 \/UPDATE"/);
|
||||
assert.match(nsisTemplate, /\$\{AndIf\} \$UpdateMode <> 1/);
|
||||
});
|
||||
Reference in new issue
Block a user