Files
release-action/__tests__/Artifact.test.ts
2025-02-17 16:15:54 -05:00

41 lines
1.0 KiB
TypeScript

import { Artifact } from "../src/Artifact"
const contentLength = 42
const fakeReadStream = {}
jest.mock("fs", () => {
return {
createReadStream: () => fakeReadStream,
statSync: () => {
return { size: contentLength }
},
}
})
describe("Artifact", () => {
it("defaults contentType to raw", () => {
const artifact = new Artifact("")
expect(artifact.contentType).toBe("raw")
})
it("generates name from path", () => {
const artifact = new Artifact("some/artifact")
expect(artifact.name).toBe("artifact")
})
it("provides contentLength", () => {
const artifact = new Artifact("some/artifact")
expect(artifact.contentLength).toBe(contentLength)
})
it("provides path", () => {
const artifact = new Artifact("some/artifact")
expect(artifact.path).toBe("some/artifact")
})
it("reads artifact", () => {
const artifact = new Artifact("some/artifact")
expect(artifact.readFile()).toBe(fakeReadStream)
})
})