forked from thymikee/jest-preset-angular
-
Notifications
You must be signed in to change notification settings - Fork 0
/
inline.spec.ts
111 lines (98 loc) · 2.12 KB
/
inline.spec.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
import { Component, Input } from "@angular/core";
import { ComponentFixture, TestBed } from "@angular/core/testing";
/**
* Example test component.
*/
@Component({
selector: "tc-jest-inline-test1",
template: `
<div>Line 1</div>
<div>
<div *ngIf="condition1">
{{ value1 }}
</div>
<span *ngIf="condition2">
{{ value2 }}
</span>
</div>
`
})
export class JestInlineSnapBugComponent {
@Input() value1: string = "val1";
@Input() value2: string = "val2";
condition1: boolean = true;
condition2: boolean = false;
}
describe("Jest Snapshot Bug", () => {
let comp: JestInlineSnapBugComponent;
let fixture: ComponentFixture<JestInlineSnapBugComponent>;
beforeEach(() => {
TestBed.configureCompiler({ preserveWhitespaces: false } as any);
TestBed.configureTestingModule({
declarations: [JestInlineSnapBugComponent]
});
fixture = TestBed.createComponent(JestInlineSnapBugComponent);
comp = fixture.componentInstance;
fixture.detectChanges();
});
it("should allow snapshots", () => {
expect(fixture).toMatchInlineSnapshot(`
<tc-jest-inline-test1
condition1={[Function Boolean]}
condition2="false"
value1={[Function String]}
value2={[Function String]}
>
<div>
Line 1
</div><div>
<div>
val1
</div>
</div>
</tc-jest-inline-test1>
`);
comp.condition2 = true;
fixture.detectChanges();
expect(fixture).toMatchInlineSnapshot(`
<tc-jest-inline-test1
condition1={[Function Boolean]}
condition2={[Function Boolean]}
value1={[Function String]}
value2={[Function String]}
>
<div>
Line 1
</div><div>
<div>
val1
</div>
<span>
val2
</span>
</div>
</tc-jest-inline-test1>
`);
comp.condition1 = false;
comp.condition2 = false;
expect(fixture).toMatchInlineSnapshot(`
<tc-jest-inline-test1
condition1="false"
condition2="false"
value1={[Function String]}
value2={[Function String]}
>
<div>
Line 1
</div><div>
<div>
val1
</div>
<span>
val2
</span>
</div>
</tc-jest-inline-test1>
`);
});
});