418493f2b20884a28632f7a9b4661efe23820def
[vid.git] / vid-webpack-master / src / app / shared / components / model-information / model-information.service.spec.ts
1 import {ModelInformationService} from "./model-information.service";
2 import {ModelInformationItem} from "./model-information.component";
3
4 describe('ModelInformationService', () => {
5   let underTest:ModelInformationService;
6
7   beforeEach(() => {
8     underTest = new ModelInformationService();
9   });
10
11   test('when call to filterModelItems then items with empty values are filtered', () =>{
12     expect(underTest.filterModelItems([
13       ModelInformationItem.createInstance("emptyValue", ""),
14       ModelInformationItem.createInstance("nullValue", null),
15       ModelInformationItem.createInstance("undefinedValue", undefined),
16       ModelInformationItem.createInstance("spacesValue", " "),
17       new ModelInformationItem("emptyArray", "id", [], "c", false)
18     ])).toHaveLength(0);
19   });
20
21   test('when call to filterModelItems then mandatory items with empty values are not filtered', () =>{
22     const mandatoryItem:ModelInformationItem = new ModelInformationItem("a", "b", [""], "c", true);
23     expect(underTest.filterModelItems([mandatoryItem])).toEqual([mandatoryItem]);
24   });
25
26   test('when call to filterModelItems then items with values are not filtered', () =>{
27     expect(underTest.filterModelItems([
28       ModelInformationItem.createInstance("withString", "a"),
29       ModelInformationItem.createInstance("withNumber", 1),
30     ])).toHaveLength(2);
31   });
32 });