28 lines
1.2 KiB
TypeScript
28 lines
1.2 KiB
TypeScript
import { expect, test } from "bun:test"
|
|
|
|
import { SIDECAR_BINARIES, getServerTarget } from "./target"
|
|
import packageManifest from "../package.json"
|
|
|
|
test("derives the Windows ARM64 server assets from the release target", () => {
|
|
expect(getServerTarget("aarch64-pc-windows-msvc")).toEqual({
|
|
rustTarget: "aarch64-pc-windows-msvc",
|
|
platform: "win32",
|
|
arch: "arm64",
|
|
})
|
|
})
|
|
|
|
test("derives each packaged server architecture independently of the runner", () => {
|
|
expect(getServerTarget("x86_64-apple-darwin")).toMatchObject({ platform: "darwin", arch: "x64" })
|
|
expect(getServerTarget("aarch64-unknown-linux-gnu")).toMatchObject({ platform: "linux", arch: "arm64" })
|
|
})
|
|
|
|
test("declares every target-native server dependency directly", () => {
|
|
const dependencies = packageManifest.devDependencies
|
|
for (const target of SIDECAR_BINARIES) {
|
|
expect(dependencies[`@lydell/node-pty-${target.platform}-${target.arch}`]).toBeDefined()
|
|
const watcher = `@parcel/watcher-${target.platform}-${target.arch}${target.platform === "linux" ? "-glibc" : ""}`
|
|
expect(dependencies[watcher]).toBeDefined()
|
|
}
|
|
expect(dependencies["@parcel/watcher-darwin-x64"]).toBe("2.5.1")
|
|
expect(dependencies["@silvia-odwyer/photon-node"]).toBe("0.3.4")
|
|
})
|