mirror of
https://github.com/marcogll/passkit-generator.git
synced 2026-03-15 16:25:21 +00:00
98 lines
2.9 KiB
TypeScript
98 lines
2.9 KiB
TypeScript
import { createPass } from "../lib/factory";
|
|
import formatMessage from "../lib/messages";
|
|
import * as fs from "fs";
|
|
import * as path from "path";
|
|
|
|
describe("createPass", () => {
|
|
it("should throw if first argument is not provided", async () => {
|
|
await expectAsync(createPass(undefined)).toBeRejectedWithError(
|
|
formatMessage("CP_NO_OPTS")
|
|
);
|
|
});
|
|
|
|
try {
|
|
let certificatesPath = "../certificates";
|
|
|
|
try {
|
|
fs.accessSync(path.resolve(__dirname, certificatesPath));
|
|
} catch (err) {
|
|
certificatesPath = "../certs";
|
|
|
|
try {
|
|
fs.accessSync(path.resolve(__dirname, certificatesPath));
|
|
} catch (err) {
|
|
certificatesPath = "";
|
|
}
|
|
}
|
|
|
|
if (certificatesPath) {
|
|
it("should return a pass instance", async () => {
|
|
await expectAsync(createPass({
|
|
model: path.resolve(__dirname, "../examples/models/exampleBooking.pass"),
|
|
certificates: {
|
|
signerCert: path.resolve(__dirname, certificatesPath, "./signerCert.pem"),
|
|
signerKey: {
|
|
keyFile: path.resolve(__dirname, certificatesPath, "./signerKey.pem"),
|
|
passphrase: "password1234"
|
|
},
|
|
wwdr: path.resolve(__dirname, certificatesPath, "./WWDR.pem"),
|
|
}
|
|
})).toBeResolved();
|
|
});
|
|
|
|
describe("Model validation", () => {
|
|
it("Should reject with non valid model", async () => {
|
|
await expectAsync(createPass({
|
|
// @ts-expect-error
|
|
model: 0,
|
|
certificates: {
|
|
signerCert: path.resolve(__dirname, certificatesPath, "./signerCert.pem"),
|
|
signerKey: {
|
|
keyFile: path.resolve(__dirname, certificatesPath, "./signerKey.pem"),
|
|
passphrase: "password1234"
|
|
},
|
|
wwdr: path.resolve(__dirname, certificatesPath, "./WWDR.pem"),
|
|
}
|
|
})).toBeRejected();
|
|
|
|
await expectAsync(createPass({
|
|
model: undefined,
|
|
certificates: {
|
|
signerCert: path.resolve(__dirname, certificatesPath, "./signerCert.pem"),
|
|
signerKey: {
|
|
keyFile: path.resolve(__dirname, certificatesPath, "./signerKey.pem"),
|
|
passphrase: "password1234"
|
|
},
|
|
wwdr: path.resolve(__dirname, certificatesPath, "./WWDR.pem"),
|
|
}
|
|
})).toBeRejected();
|
|
|
|
await expectAsync(createPass({
|
|
model: null,
|
|
certificates: {
|
|
signerCert: path.resolve(__dirname, certificatesPath, "./signerCert.pem"),
|
|
signerKey: {
|
|
keyFile: path.resolve(__dirname, certificatesPath, "./signerKey.pem"),
|
|
passphrase: "password1234"
|
|
},
|
|
wwdr: path.resolve(__dirname, certificatesPath, "./WWDR.pem"),
|
|
}
|
|
})).toBeRejected();
|
|
|
|
await expectAsync(createPass({
|
|
model: {},
|
|
certificates: {
|
|
signerCert: path.resolve(__dirname, certificatesPath, "./signerCert.pem"),
|
|
signerKey: {
|
|
keyFile: path.resolve(__dirname, certificatesPath, "./signerKey.pem"),
|
|
passphrase: "password1234"
|
|
},
|
|
wwdr: path.resolve(__dirname, certificatesPath, "./WWDR.pem"),
|
|
}
|
|
})).toBeRejected();
|
|
});
|
|
});
|
|
}
|
|
} catch (err) { }
|
|
});
|