feat:移除了弹窗,服务器添加sls

This commit is contained in:
2026-09-08 22:39:45 +08:00
commit 6a295f9a7a
4082 changed files with 1322534 additions and 0 deletions

View File

@ -0,0 +1,58 @@
import assert from 'node:assert/strict'
import test from 'node:test'
import {
type CurseForgeFile,
getCurseForgeDownloadFailureDetails,
hasCompatibleCurseForgeFile,
} from './curseforge.ts'
function curseForgeFile(id: number, isAvailable: boolean, gameVersions: string[]): CurseForgeFile {
return {
id,
modId: 322385,
isAvailable,
displayName: '',
fileName: '',
releaseType: 1,
fileDate: '',
fileLength: 0,
hashes: [],
fileFingerprint: 0,
downloadCount: 0,
gameVersions,
dependencies: [],
}
}
test('recognizes CurseForge download diagnostics without exposing them in the notification', () => {
const details = getCurseForgeDownloadFailureDetails(
new Error(
'Network download error: connection failed\nDownload failed after 4/4 attempts. Recent attempt history:\n- attempt=4; url=https://mediafilez.forgecdn.net/files/example.jar; proxy=System; category=connect',
),
)
assert.match(details ?? '', /forgecdn\.net/)
})
test('does not classify non-CurseForge download failures', () => {
assert.equal(
getCurseForgeDownloadFailureDetails(
new Error(
'Download failed after 4/4 attempts. Recent attempt history:\n- url=https://cdn.modrinth.com/data/example.jar',
),
),
null,
)
})
test('requires an available exact CurseForge game version match', () => {
const files = [
curseForgeFile(1, true, ['1.19.2']),
curseForgeFile(2, false, ['1.20.1']),
curseForgeFile(3, true, ['1.20.1']),
]
assert.equal(hasCompatibleCurseForgeFile(files, '1.20.1'), true)
assert.equal(hasCompatibleCurseForgeFile(files, '1.20.2'), false)
})