Fix tests

This commit is contained in:
Dolan
2018-03-22 23:04:46 +00:00
parent a0e034bd55
commit a954c69458
3 changed files with 88 additions and 6 deletions

View File

@ -5,7 +5,6 @@ export type WidthTypes = "dxa" | "pct" | "nil" | "auto";
export class TableProperties extends XmlComponent {
constructor() {
super("w:tblPr");
this.root.push(new TableBorders());
}
public setWidth(type: WidthTypes, w: number | string): TableProperties {
@ -17,6 +16,11 @@ export class TableProperties extends XmlComponent {
this.root.push(new TableLayout("fixed"));
return this;
}
public setBorder(): TableProperties {
this.root.push(new TableBorders());
return this;
}
}
interface ITableWidth {

View File

@ -5,6 +5,83 @@ import { Formatter } from "../../export/formatter";
import { Paragraph } from "../paragraph";
import { Table } from "./";
const DEFAULT_TABLE_PROPERTIES = {
"w:tblBorders": [
{
"w:top": [
{
_attr: {
"w:color": "auto",
"w:space": 0,
"w:sz": 4,
"w:val": "single",
},
},
],
},
{
"w:left": [
{
_attr: {
"w:color": "auto",
"w:space": 0,
"w:sz": 4,
"w:val": "single",
},
},
],
},
{
"w:bottom": [
{
_attr: {
"w:color": "auto",
"w:space": 0,
"w:sz": 4,
"w:val": "single",
},
},
],
},
{
"w:right": [
{
_attr: {
"w:color": "auto",
"w:space": 0,
"w:sz": 4,
"w:val": "single",
},
},
],
},
{
"w:insideH": [
{
_attr: {
"w:color": "auto",
"w:space": 0,
"w:sz": 4,
"w:val": "single",
},
},
],
},
{
"w:insideV": [
{
_attr: {
"w:color": "auto",
"w:space": 0,
"w:sz": 4,
"w:val": "single",
},
},
],
},
],
};
describe("Table", () => {
describe("#constructor", () => {
it("creates a table with the correct number of rows and columns", () => {
@ -13,7 +90,7 @@ describe("Table", () => {
const cell = { "w:tc": [{ "w:tcPr": [] }, { "w:p": [{ "w:pPr": [] }] }] };
expect(tree).to.deep.equal({
"w:tbl": [
{ "w:tblPr": [] },
{ "w:tblPr": [DEFAULT_TABLE_PROPERTIES] },
{
"w:tblGrid": [{ "w:gridCol": [{ _attr: { "w:w": 1 } }] }, { "w:gridCol": [{ _attr: { "w:w": 1 } }] }],
},
@ -55,7 +132,7 @@ describe("Table", () => {
});
expect(tree).to.deep.equal({
"w:tbl": [
{ "w:tblPr": [] },
{ "w:tblPr": [DEFAULT_TABLE_PROPERTIES] },
{
"w:tblGrid": [{ "w:gridCol": [{ _attr: { "w:w": 1 } }] }, { "w:gridCol": [{ _attr: { "w:w": 1 } }] }],
},
@ -84,7 +161,7 @@ describe("Table", () => {
});
expect(tree).to.deep.equal({
"w:tbl": [
{ "w:tblPr": [] },
{ "w:tblPr": [DEFAULT_TABLE_PROPERTIES] },
{
"w:tblGrid": [{ "w:gridCol": [{ _attr: { "w:w": 1 } }] }, { "w:gridCol": [{ _attr: { "w:w": 1 } }] }],
},
@ -104,7 +181,7 @@ describe("Table", () => {
.which.is.an("array")
.with.has.length.at.least(1);
expect(tree["w:tbl"][0]).to.deep.equal({
"w:tblPr": [{ "w:tblW": [{ _attr: { "w:type": "pct", "w:w": 1000 } }] }],
"w:tblPr": [DEFAULT_TABLE_PROPERTIES, { "w:tblW": [{ _attr: { "w:type": "pct", "w:w": 1000 } }] }],
});
});
});
@ -118,7 +195,7 @@ describe("Table", () => {
.which.is.an("array")
.with.has.length.at.least(1);
expect(tree["w:tbl"][0]).to.deep.equal({
"w:tblPr": [{ "w:tblLayout": [{ _attr: { "w:type": "fixed" } }] }],
"w:tblPr": [DEFAULT_TABLE_PROPERTIES, { "w:tblLayout": [{ _attr: { "w:type": "fixed" } }] }],
});
});
});

View File

@ -12,6 +12,7 @@ export class Table extends XmlComponent {
super("w:tbl");
this.properties = new TableProperties();
this.root.push(this.properties);
this.properties.setBorder();
const gridCols: number[] = [];
for (let i = 0; i < cols; i++) {