Add tests for get media data

This commit is contained in:
Dolan
2022-06-15 01:44:57 +01:00
parent f414b4ee9a
commit c7b68a40e4

View File

@ -43,19 +43,27 @@ describe("Compiler", () => {
sections: [ sections: [
{ {
headers: { headers: {
default: new Header(), default: new Header({
children: [new Paragraph("test")],
}),
}, },
footers: { footers: {
default: new Footer(), default: new Footer({
children: [new Paragraph("test")],
}),
}, },
children: [], children: [],
}, },
{ {
headers: { headers: {
default: new Header(), default: new Header({
children: [new Paragraph("test")],
}),
}, },
footers: { footers: {
default: new Footer(), default: new Footer({
children: [new Paragraph("test")],
}),
}, },
children: [], children: [],
}, },
@ -99,5 +107,39 @@ describe("Compiler", () => {
compiler.compile(file); compiler.compile(file);
expect(spy.callCount).to.equal(12); expect(spy.callCount).to.equal(12);
}); });
it("should work with media datas", () => {
// This test is required because before, there was a case where Document was formatted twice, which was inefficient
// This also caused issues such as running prepForXml multiple times as format() was ran multiple times.
const paragraph = new Paragraph("");
const file = new File({
sections: [
{
properties: {},
children: [paragraph],
},
],
});
// tslint:disable-next-line: no-string-literal
sinon.stub(compiler["imageReplacer"], "getMediaData").returns([
{
stream: Buffer.from(""),
fileName: "test",
transformation: {
pixels: {
x: 100,
y: 100,
},
emus: {
x: 100,
y: 100,
},
},
},
]);
compiler.compile(file);
});
}); });
}); });