fix: accept equivalent installer metadata names

Allow updater manifests from the Gitea and GitHub release pipelines to use different separator characters in the same installer filename while preserving exact version, size, checksum, and executable validation.
This commit is contained in:
Sucukdeluxe
2026-08-17 03:29:00 +02:00
parent 329d22e5b7
commit 6a2eda1252
2 changed files with 20 additions and 1 deletions
+15
View File
@@ -336,3 +336,18 @@ test('existing release recovery rejects a mismatched transport tag', async () =>
/existing release tag "v9\.9\.9" does not match "v2\.1\.20"/
);
});
test('checksum metadata accepts equivalent transport-specific installer separators', async () => {
const sha = crypto.randomBytes(64).toString('base64');
const metadata = await parseLatestYml('https://update.invalid/latest.yml', {
version: '2.1.22',
assetName: 'Multi-Hoster-Upload Setup 2.1.22.exe',
assetSize: 456
}, async () => ({
ok: true,
status: 200,
text: async () => `version: 2.1.22\npath: Multi-Hoster-Upload.Setup.2.1.22.exe\nsha512: ${sha}\nsize: 456\n`
}));
assert.equal(metadata.path, 'Multi-Hoster-Upload.Setup.2.1.22.exe');
});