Skip to content

Commit aebc2a7

Browse files
committed
Ignore whitespaces around alignment markers
1 parent 6590028 commit aebc2a7

3 files changed

Lines changed: 16 additions & 2 deletions

File tree

src/modelFactory/alignmentFactory.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { Alignment } from "../models/alignment";
33
export class AlignmentFactory {
44

55
public createAlignments(cells: string[]): Alignment[] {
6-
return cells.map(this.alignmentOf);
6+
return cells.map(cell => this.alignmentOf(cell.trim()));
77
}
88

99
private alignmentOf(cell: string): Alignment {

test/systemTests/resources/alignCenterWithoutBorder-input.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Type|Range| Size
2-
:-:|:-:|:-:
2+
:-: | :-:|:-:
33
sbyte | -128 to 127 | Signed 8-bit integer
44
byte| 0 to 255|Unsigned 8-bit integer
55
char| U+0000 to U+ffff| Unicode 16-bit character

test/unitTests/modelFactory/alignmentFactory.test.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,20 @@ suite("AlignmentFactory tests", () => {
3636
assert.strictEqual(alignments[5], Alignment.Center);
3737
});
3838

39+
test("createAlignments() with separators having mixed alignments and trailing whitespace returns expected alignments", () => {
40+
const separatorCells: string[] = [" :---: ", " :-", " :---", " ----", "-:", ":-: "];
41+
const sut = createFactory();
42+
43+
const alignments = sut.createAlignments(separatorCells);
44+
assert.strictEqual(alignments.length, 6);
45+
assert.strictEqual(alignments[0], Alignment.Center);
46+
assert.strictEqual(alignments[1], Alignment.Left);
47+
assert.strictEqual(alignments[2], Alignment.Left);
48+
assert.strictEqual(alignments[3], Alignment.NotSet);
49+
assert.strictEqual(alignments[4], Alignment.Right);
50+
assert.strictEqual(alignments[5], Alignment.Center);
51+
});
52+
3953
function createFactory(): AlignmentFactory {
4054
return new AlignmentFactory();
4155
}

0 commit comments

Comments
 (0)