This commit is contained in:
33
tests/unit/SgsMapSdkReleaseContract.spec.ts
Normal file
33
tests/unit/SgsMapSdkReleaseContract.spec.ts
Normal file
@@ -0,0 +1,33 @@
|
||||
import { existsSync, readFileSync } from 'node:fs'
|
||||
import { resolve } from 'node:path'
|
||||
import { describe, expect, it } from 'vitest'
|
||||
|
||||
const sdkDirectory = resolve(process.cwd(), 'static/sgs-map-sdk')
|
||||
const readSdkFile = (name: string) => readFileSync(resolve(sdkDirectory, name), 'utf8')
|
||||
|
||||
describe('SGS Map SDK 2.5.0 release contract', () => {
|
||||
it('keeps the local package, bridge self-report, and default Engine path aligned', () => {
|
||||
const packageJson = JSON.parse(readSdkFile('package.json')) as { version: string }
|
||||
const bridge = readSdkFile('index.global.js')
|
||||
const dataSource = readFileSync(resolve(process.cwd(), 'src/config/dataSource.ts'), 'utf8')
|
||||
|
||||
expect(packageJson.version).toBe('2.5.0')
|
||||
expect(bridge).toContain('"2.5.0"')
|
||||
expect(bridge).toContain('/engine/index.html')
|
||||
expect(dataSource).toContain("SGS_MAP_SDK_VERSION = '2.5.0'")
|
||||
expect(dataSource).toContain("const defaultSgsEngineUrl = '/engine/index.html'")
|
||||
})
|
||||
|
||||
it('ships every runtime bridge artifact required by the flattened package', () => {
|
||||
[
|
||||
'index.global.js',
|
||||
'index.global.js.map',
|
||||
'index.mjs',
|
||||
'index.mjs.map',
|
||||
'index.d.ts',
|
||||
'index.d.mts'
|
||||
].forEach((file) => {
|
||||
expect(existsSync(resolve(sdkDirectory, file))).toBe(true)
|
||||
})
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user