Newer
Older
import { AppError } from "../src/lib/errors";
it("should return pdf document metadata including signatures", async () => {
const file = fs.readFileSync(
path.resolve(__dirname, "./abacus-two-signatures.pdf")
);
const parser = new PDFparser(file);
const actual = await parser.getPDFMeta();
it("should return pdf document metadata without signatures", async () => {
const file = fs.readFileSync(path.resolve(__dirname, "./example.pdf"));
const parser = new PDFparser(file);
const actual = await parser.getPDFMeta();
expect(actual.pages).toEqual(1);
expect(actual.title).toEqual("PDF Digital Signatures");
expect(actual.author).toEqual("Tecxoft");
});
it("should throw error without file", async () => {
try {
const parser = new PDFparser(null);
const actual = await parser.getPDFMeta();
} catch (error) {
expect(error).toBeInstanceOf(AppError);
}
});
it("should throw error if file type is different then pdf", async () => {
const file = fs.readFileSync(path.resolve(__dirname, "./test.txt"));
try {
const parser = new PDFparser(file);
const actual = await parser.getPDFMeta();
} catch (error) {
expect(error).toBeInstanceOf(AppError);
expect(error.message).toEqual("Only pdf file type is supported");
}
});