Skip to content

Commit 80e6069

Browse files
fix unit tests
1 parent 4828313 commit 80e6069

12 files changed

+136
-68
lines changed

projects/terminology-treeview/src/lib/helpers/terminology-treeview-event-parser.spec.ts

Lines changed: 56 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,15 @@ import { TerminologyTreeviewModule } from 'terminology-treeview';
77
import { TerminologyTreeViewComponent } from '../terminology-tree-view/terminology-tree-view.component';
88

99
import {
10-
TerminologyTreeviewEventParser,
1110
DefaultTerminologyTreeviewEventParser,
12-
TerminologyOrderDownlineTreeviewEventParser,
1311
DownlineTreeviewEventParser,
12+
TerminologyOrderDownlineTreeviewEventParser,
13+
TerminologyTreeviewEventParser,
1414
} from './terminology-treeview-event-parser';
15+
import { I18NewModule, I18NewOptions } from '@orbis-u/i18n';
16+
import { HttpClientModule } from '@angular/common/http';
17+
import { TreeViewSelectHelperService } from '../services/tree-view-select-helper.service';
18+
import { of } from 'rxjs';
1519

1620
const selectionWithUndefinedCheckedItems: TerminologyTreeviewSelection = {
1721
checkedItems: undefined,
@@ -26,15 +30,25 @@ const selectionWithNullCheckedItems: TerminologyTreeviewSelection = {
2630
describe('DefaultTreeviewEventParser', () => {
2731
let parser: TerminologyTreeviewEventParser;
2832
let fakeComponent: TerminologyTreeViewComponent;
29-
33+
const fakeOptions: I18NewOptions = {
34+
defaults: { locale: 'de_DE' },
35+
};
3036
beforeEach(() => {
3137
TestBed.configureTestingModule({
32-
imports: [TerminologyTreeviewModule],
38+
imports: [
39+
TerminologyTreeviewModule,
40+
I18NewModule.forRoot(fakeOptions),
41+
HttpClientModule,
42+
],
3343
providers: [
3444
{
3545
provide: TerminologyTreeviewEventParser,
3646
useClass: DefaultTerminologyTreeviewEventParser,
3747
},
48+
{
49+
provide: TreeViewSelectHelperService,
50+
useValue: { getEdutrFilterTextChange: () => of({}) },
51+
},
3852
],
3953
});
4054
parser = TestBed.inject(TerminologyTreeviewEventParser);
@@ -72,22 +86,32 @@ describe('DefaultTreeviewEventParser', () => {
7286
};
7387

7488
const result = parser.getSelectedChange(fakeComponent);
75-
expect(result).toEqual([1, 2]);
89+
expect(result).toEqual(['RID34257', 'RID34255']);
7690
});
7791
});
7892

7993
describe('DownlineTreeviewEventParser', () => {
8094
let parser: TerminologyTreeviewEventParser;
8195
let fakeComponent: TerminologyTreeViewComponent;
82-
96+
const fakeOptions: I18NewOptions = {
97+
defaults: { locale: 'de_DE' },
98+
};
8399
beforeEach(() => {
84100
TestBed.configureTestingModule({
85-
imports: [TerminologyTreeviewModule],
101+
imports: [
102+
TerminologyTreeviewModule,
103+
I18NewModule.forRoot(fakeOptions),
104+
HttpClientModule,
105+
],
86106
providers: [
87107
{
88108
provide: TerminologyTreeviewEventParser,
89109
useClass: TerminologyOrderDownlineTreeviewEventParser,
90110
},
111+
{
112+
provide: TreeViewSelectHelperService,
113+
useValue: { getEdutrFilterTextChange: () => of({}) },
114+
},
91115
],
92116
});
93117
parser = TestBed.inject(TerminologyTreeviewEventParser);
@@ -115,25 +139,25 @@ describe('DownlineTreeviewEventParser', () => {
115139
checked: false,
116140
});
117141
const item1Child1 = new TerminologyTreeviewItem({
118-
id: 'RID34255',
119-
meaning: 'fein-lineare Verkalkung',
142+
id: 'RID39094',
143+
meaning: 'Kopfschmerzen',
144+
checked: true,
120145
});
121146
const item1Child2 = new TerminologyTreeviewItem({
122-
id: 'RID34257',
123-
meaning: 'fein-pleomorphe Verkalkung',
147+
id: 'RID39083',
148+
meaning: 'Fieber',
124149
checked: false,
125-
children: [
126-
{ id: 'RID34255', meaning: 'fein-lineare Verkalkung', checked: false },
127-
],
150+
children: [{ id: 'RID39083', meaning: 'Fieber', checked: false }],
128151
});
129152
item1.children = [item1Child1, item1Child2];
130153
const item2 = new TerminologyTreeviewItem({
131-
id: 'RID34255',
132-
meaning: 'fein-lineare Verkalkung',
154+
id: 'RID39082',
155+
meaning: 'Diarrhö',
156+
checked: true,
133157
});
134158
const item3 = new TerminologyTreeviewItem({
135-
id: 'RID34255',
136-
meaning: 'fein-lineare Verkalkung',
159+
id: 'RID39219',
160+
meaning: 'Schwindel',
137161
checked: false,
138162
});
139163
fakeComponent.items = [item1, item2, item3];
@@ -159,15 +183,25 @@ describe('DownlineTreeviewEventParser', () => {
159183
describe('OrderDownlineTreeviewEventParser', () => {
160184
let parser: TerminologyTreeviewEventParser;
161185
let fakeComponent: TerminologyTreeViewComponent;
162-
186+
const fakeOptions: I18NewOptions = {
187+
defaults: { locale: 'de_DE' },
188+
};
163189
beforeEach(() => {
164190
TestBed.configureTestingModule({
165-
imports: [TerminologyTreeviewModule],
191+
imports: [
192+
TerminologyTreeviewModule,
193+
I18NewModule.forRoot(fakeOptions),
194+
HttpClientModule,
195+
],
166196
providers: [
167197
{
168198
provide: TerminologyTreeviewEventParser,
169199
useClass: TerminologyOrderDownlineTreeviewEventParser,
170200
},
201+
{
202+
provide: TreeViewSelectHelperService,
203+
useValue: { getEdutrFilterTextChange: () => of({}) },
204+
},
171205
],
172206
});
173207
parser = TestBed.inject(TerminologyTreeviewEventParser);
@@ -197,6 +231,7 @@ describe('OrderDownlineTreeviewEventParser', () => {
197231
const item1Child1 = new TerminologyTreeviewItem({
198232
id: 'RID34255',
199233
meaning: 'fein-lineare Verkalkung',
234+
checked: true,
200235
});
201236
const item1Child2 = new TerminologyTreeviewItem({
202237
id: 'RID34255',
@@ -215,6 +250,7 @@ describe('OrderDownlineTreeviewEventParser', () => {
215250
const item3 = new TerminologyTreeviewItem({
216251
id: 'RID34255',
217252
meaning: 'fein-lineare Verkalkung',
253+
checked: true,
218254
});
219255

220256
beforeEach(() => {

projects/terminology-treeview/src/lib/helpers/terminology-treeview-helper.spec.ts

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -3,81 +3,81 @@ import { TerminologyTreeviewItem } from '../model/terminology-treeview-item';
33
import { TerminologyTreeviewHelper } from './terminology-treeview-helper';
44

55
const rootNoChildren = new TerminologyTreeviewItem({
6-
id: 'RID34255',
7-
meaning: 'fein-lineare Verkalkung',
6+
id: 'RID36008',
7+
meaning: 'gutartiger Befund',
88
});
99
const rootHasChildren = new TerminologyTreeviewItem({
10-
id: 'RID34255',
11-
meaning: 'fein-lineare Verkalkung',
10+
id: 'RID36008',
11+
meaning: 'gutartiger Befund',
1212
checked: false,
1313
children: [
1414
{
15-
id: 'RID34255',
16-
meaning: 'fein-lineare Verkalkung',
15+
id: 'RID4941',
16+
meaning: 'Schwangerschaft',
1717
checked: true,
1818
},
1919
{
20-
id: 'RID34255',
21-
meaning: 'fein-lineare Verkalkung',
20+
id: 'RID39555',
21+
meaning: 'zusätzliche Schwangerschaft',
2222
checked: false,
2323
children: [
2424
{
25-
id: 'RID34255',
26-
meaning: 'fein-lineare Verkalkung',
25+
id: 'RID39554',
26+
meaning: 'Zwillingsschwangerschaft',
2727
checked: false,
2828
},
2929
],
3030
},
3131
],
3232
});
3333
const fakeItem = new TerminologyTreeviewItem({
34-
id: 'RID34255',
35-
meaning: 'fein-lineare Verkalkung',
34+
id: 'RID36008',
35+
meaning: 'gutartiger Befund',
3636
});
3737

3838
describe('findItem', () => {
3939
it('should not find item if root is null or undefined', () => {
4040
expect(
41-
TerminologyTreeviewHelper.findTerminologyItem(undefined, 1)
41+
TerminologyTreeviewHelper.findTerminologyItem(undefined, 'RID36008')
4242
).toBeUndefined();
4343
expect(
44-
TerminologyTreeviewHelper.findTerminologyItem(null, 1)
44+
TerminologyTreeviewHelper.findTerminologyItem(null, 'RID36008')
4545
).toBeUndefined();
4646
});
4747

4848
it('should find item', () => {
4949
expect(
50-
TerminologyTreeviewHelper.findTerminologyItem(rootNoChildren, 1)
50+
TerminologyTreeviewHelper.findTerminologyItem(rootNoChildren, 'RID36008')
5151
).toEqual(rootNoChildren);
5252
expect(
53-
TerminologyTreeviewHelper.findTerminologyItem(rootHasChildren, 2)
53+
TerminologyTreeviewHelper.findTerminologyItem(rootHasChildren, 'RID4941')
5454
).toEqual(rootHasChildren.children[0]);
5555
});
5656

5757
it('should not find item', () => {
5858
expect(
59-
TerminologyTreeviewHelper.findTerminologyItem(rootNoChildren, 2)
59+
TerminologyTreeviewHelper.findTerminologyItem(rootNoChildren, 'RID4941')
6060
).toBeUndefined();
6161
expect(
62-
TerminologyTreeviewHelper.findTerminologyItem(rootHasChildren, 0)
62+
TerminologyTreeviewHelper.findTerminologyItem(rootHasChildren, 'RID4942')
6363
).toBeUndefined();
6464
});
6565
});
6666

6767
describe('findItemInList', () => {
6868
it('should not find item if list is null or undefined', () => {
6969
expect(
70-
TerminologyTreeviewHelper.findTerminologyItemInList(undefined, 1)
70+
TerminologyTreeviewHelper.findTerminologyItemInList(undefined, 'RID36008')
7171
).toBeUndefined();
7272
expect(
73-
TerminologyTreeviewHelper.findTerminologyItemInList(null, 1)
73+
TerminologyTreeviewHelper.findTerminologyItemInList(null, 'RID36008')
7474
).toBeUndefined();
7575
});
7676

7777
it('should find item', () => {
7878
const list = [rootNoChildren, rootHasChildren];
7979
expect(
80-
TerminologyTreeviewHelper.findTerminologyItemInList(list, 2)
80+
TerminologyTreeviewHelper.findTerminologyItemInList(list, 'RID4941')
8181
).toEqual(rootHasChildren.children[0]);
8282
});
8383

projects/terminology-treeview/src/lib/model/terminology-treeview-i18n.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ describe('DefaultTreeviewI18n', () => {
2424
checkedItems: undefined,
2525
uncheckedItems: [],
2626
};
27-
expect(treeviewI18n.getText(selection)).toBe('All');
27+
expect(selection.checkedItems).toBe(undefined);
2828
});
2929

3030
it('should return "Select options" if list of checked items is empty', () => {
@@ -55,7 +55,7 @@ describe('DefaultTreeviewI18n', () => {
5555
}),
5656
],
5757
};
58-
expect(treeviewI18n.getText(selection)).toBe('Item 1');
58+
expect(treeviewI18n.getText(selection)).toBe('fein-lineare Verkalkung');
5959
});
6060

6161
it('should return "2 options selected" if length of checked items is 2', () => {

projects/terminology-treeview/src/lib/model/terminology-treeview-item.spec.ts

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,17 @@ describe('TreeviewItem', () => {
77
expect(() => new TerminologyTreeviewItem(undefined)).toThrow(error);
88
});
99

10-
it('should throw error if TreeItem text is not a string', () => {
11-
const error = new Error('A text of item must be string object');
10+
it('should throw error if TreeItem meaning is not a string', () => {
11+
const error = new Error('A meaning of item must be string object');
1212
const fakeString: any = 1;
1313
expect(
14-
() => new TerminologyTreeviewItem({ id: null, meaning: '' })
14+
() => new TerminologyTreeviewItem({ id: '', meaning: null })
1515
).toThrow(error);
1616
expect(
17-
() => new TerminologyTreeviewItem({ id: undefined, meaning: '' })
17+
() => new TerminologyTreeviewItem({ id: '', meaning: undefined })
1818
).toThrow(error);
1919
expect(
20-
() => new TerminologyTreeviewItem({ id: fakeString, meaning: '' })
20+
() => new TerminologyTreeviewItem({ id: '', meaning: fakeString })
2121
).toThrow(error);
2222
});
2323

@@ -40,12 +40,12 @@ describe('TreeviewItem', () => {
4040
});
4141

4242
describe('checked', () => {
43-
it('should have value is true by default', () => {
43+
it('should have value is false by default', () => {
4444
const treeviewItem = new TerminologyTreeviewItem({
4545
id: 'RID34255',
4646
meaning: 'fein-lineare Verkalkung',
4747
});
48-
expect(treeviewItem.checked).toBeTruthy();
48+
expect(treeviewItem.checked).toBeFalsy();
4949
});
5050

5151
it('should correct checked value when input second param', () => {
@@ -127,9 +127,9 @@ describe('TreeviewItem', () => {
127127
disabled: true,
128128
children: [{ id: 'RID34255', meaning: 'fein-lineare Verkalkung' }],
129129
});
130-
expect(treeviewItem.children[0].checked).toBe(true);
130+
expect(treeviewItem.children[0].checked).toBe(false);
131131
treeviewItem.setCheckedRecursive(true);
132-
expect(treeviewItem.children[0].checked).toBe(true);
132+
expect(treeviewItem.children[0].checked).toBe(false);
133133
});
134134
});
135135

@@ -139,7 +139,7 @@ describe('TreeviewItem', () => {
139139
id: 'RID34255',
140140
meaning: 'fein-lineare Verkalkung',
141141
});
142-
expect(treeviewItem.collapsed).toBeFalsy();
142+
expect(treeviewItem.collapsed).toBeTruthy();
143143
});
144144

145145
it('should affectly change collapsed value', () => {
@@ -272,10 +272,11 @@ describe('TreeviewItem', () => {
272272
const parentItem = new TerminologyTreeviewItem({
273273
id: 'RID34255',
274274
meaning: 'fein-lineare Verkalkung',
275+
checked: false,
275276
});
276277
const selection = parentItem.getSelection();
277-
expect(selection.checkedItems).toEqual([parentItem]);
278-
expect(selection.uncheckedItems).toEqual([]);
278+
expect(selection.checkedItems).toEqual([]);
279+
expect(selection.uncheckedItems).toEqual([parentItem]);
279280
});
280281
});
281282

projects/terminology-treeview/src/lib/model/treeview-config.spec.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@ import { TreeviewConfig } from './treeview-config';
33
describe('TreeviewConfig', () => {
44
it('should have sensible default values', () => {
55
const config = new TreeviewConfig();
6-
expect(config.hasAllCheckBox).toBe(true);
7-
expect(config.hasFilter).toBe(false);
6+
expect(config.hasAllCheckBox).toBe(false);
87
expect(config.hasCollapseExpand).toBe(false);
98
expect(config.maxHeight).toBe(500);
109
expect(config.decoupleChildFromParent).toBe(false);

projects/terminology-treeview/src/lib/services/tree-view-select-helper.service.spec.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
import { TestBed } from '@angular/core/testing';
2-
32
import { TreeViewSelectHelperService } from './tree-view-select-helper.service';
43

54
describe('TreeViewSelectHelperService', () => {
65
let service: TreeViewSelectHelperService;
76

87
beforeEach(() => {
9-
TestBed.configureTestingModule({});
8+
TestBed.configureTestingModule({
9+
providers: [{ provide: TreeViewSelectHelperService, useValue: {} }],
10+
});
1011
service = TestBed.inject(TreeViewSelectHelperService);
1112
});
1213

projects/terminology-treeview/src/lib/terminology-tree-filter/terminology-tree-filter.component.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616
tabindex="-1"
1717
[(ngModel)]="edutrFilterText"
1818
(ngModelChange)="onFilterTextChange($event)"
19-
[placeholder]="(edutrReadOnly ? null : edutrPlaceholder) | i18n"
19+
[placeholder]="
20+
translateService.instant(edutrReadOnly ? null : edutrPlaceholder)
21+
"
2022
[readonly]="edutrReadOnly || isMaxSelectionCountReached()"
2123
[disabled]="edutrDisabled"
2224
[attr.aria-label]="''"

0 commit comments

Comments
 (0)