I have the following code which downloads a pdf:
import html2pdf from 'html2pdf.js'
export const addFooter = (pdf) => {
const totalPages = pdf.internal.getNumberOfPages()
...
}
export const downloadPDF = async (...) => {
const pdfContent = document.getElementById("export")
const opts = {...}
await html2pdf().from(pdfContent).set(opts).toPdf().get('pdf').then(addFooter).save()
}
I would like to be able to mock the save method using jest.
Up until now I have:
jest.mock('html2pdf.js', () => () => ({
from: () => ({
set: () => ({
toPdf: () => ({
get: () => Promise.resolve({
internal: {
getNumberOfPages: () => {}
}
})
})
})
})
}))
But running the tests give me:
TypeError: (0 , _html2pdf.default)(...).from(...).set(...).toPdf(...).get(...).then(...).save is not a function
Maybe someone have an idea how to mock the save method?