///
///
///
///
import * as fs from "fs";
import {LocalPacker} from "../../export/packer/local";
import {assert} from "chai";
import {Document} from "../../docx/document";
import {Properties} from "../../properties";
import {DefaultStyle} from "../../styles/sample";
import {Paragraph} from "../../docx/paragraph";
import {DefaultStylesFactory} from "../../styles/factory";
describe("Packer", () => {
let packer: LocalPacker;
let stylesFactory: DefaultStylesFactory;
beforeEach(() => {
let document = new Document();
let paragraph = new Paragraph("test text");
let heading = new Paragraph("Hello world").heading1();
document.addParagraph(new Paragraph("title").title());
document.addParagraph(heading);
document.addParagraph(new Paragraph("heading 2").heading2());
document.addParagraph(paragraph);
let properties = new Properties({
creator: "Dolan Miu",
revision: "1",
lastModifiedBy: "Dolan Miu"
});
stylesFactory = new DefaultStylesFactory();
packer = new LocalPacker(document, stylesFactory.newInstance(), properties);
});
describe("#pack()", () => {
it("should create a standard docx file", function (done) {
this.timeout(99999999);
packer.pack("build-tests/tests/test.docx");
let int = setInterval(() => {
const stats = fs.statSync("build-tests/tests/test.docx");
if (stats.size > 2000) {
clearInterval(int);
clearTimeout(out);
done();
}
}, 1000);
let out = setTimeout(() => {
clearInterval(int);
try {
assert(false, 'did not create a file within the alloted time');
} catch (e){
done(e);
}
}, 2000);
});
});
});