Skip to content

Commit d69484a

Browse files
committed
Created a few new test cases for uiView for new features in components inputs.
1 parent a7e6a89 commit d69484a

File tree

1 file changed

+52
-1
lines changed

1 file changed

+52
-1
lines changed

test/uiView/resolveBinding.spec.ts

Lines changed: 52 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Component, Inject, Input } from '@angular/core';
1+
import { Component, Inject, input, Input } from '@angular/core';
22
import { ComponentFixture, TestBed } from '@angular/core/testing';
33
import { Ng2StateDeclaration, UIRouterModule, UIView } from '../../src';
44
import { By } from '@angular/platform-browser';
@@ -18,6 +18,14 @@ describe('uiView', () => {
1818
@Input('resolve3') _resolve3;
1919
@Input('resolve4') _resolve4;
2020
@Input() resolve5;
21+
@Input({ alias: 'resolve6' }) _resolve6;
22+
@Input({ alias: 'resolve7' }) _resolve7;
23+
@Input({ transform: (value: string) => `${value}1` }) resolve8;
24+
resolve9 = input<string>("");
25+
resolve10 = input<string>("");
26+
_resolve11 = input<string>("", { alias: 'resolve11' });
27+
_resolve12 = input<string>("", { alias: 'resolve12' });
28+
resolve13 = input<string, string>("", { transform: value => `${value}1` });
2129
}
2230

2331
let comp: ManyResolvesComponent;
@@ -32,13 +40,24 @@ describe('uiView', () => {
3240
// component_input: 'resolve name'
3341
resolve2: 'Resolve2',
3442
resolve4: 'Resolve4',
43+
resolve7: 'Resolve7',
44+
resolve10: 'Resolve10',
45+
resolve12: 'Resolve12'
3546
},
3647
resolve: [
3748
{ token: 'resolve1', resolveFn: () => 'resolve1' },
3849
{ token: 'Resolve2', resolveFn: () => 'resolve2' },
3950
{ token: 'resolve3', resolveFn: () => 'resolve3' },
4051
{ token: 'Resolve4', resolveFn: () => 'resolve4' },
4152
new Resolvable('resolve5', () => 'resolve5', [], { async: 'NOWAIT' }),
53+
{ token: 'resolve6', resolveFn: () => 'resolve6' },
54+
{ token: 'Resolve7', resolveFn: () => 'resolve7' },
55+
{ token: 'resolve8', resolveFn: () => 'resolve8' },
56+
{ token: 'resolve9', resolveFn: () => 'resolve9' },
57+
{ token: 'Resolve10', resolveFn: () => 'resolve10' },
58+
{ token: 'resolve11', resolveFn: () => 'resolve11' },
59+
{ token: 'Resolve12', resolveFn: () => 'resolve12' },
60+
{ token: 'resolve13', resolveFn: () => 'resolve13' }
4261
],
4362
};
4463

@@ -80,6 +99,38 @@ describe('uiView', () => {
8099
expect(typeof comp.resolve5.then).toBe('function');
81100
});
82101

102+
it('should bind resolve by alias to component input templateName', () => {
103+
expect(comp._resolve6).toBe('resolve6');
104+
});
105+
106+
it('should bind resolve by alias to the component input templateName specified in state `bindings`', () => {
107+
expect(comp._resolve7).toBe('resolve7');
108+
});
109+
110+
it('should bind resolve to the component input name and transform its value', () => {
111+
expect(comp.resolve8).toBe('resolve81');
112+
});
113+
114+
it('should bind resolve by name to component input signal name', () => {
115+
expect(comp.resolve9()).toBe('resolve9');
116+
});
117+
118+
it('should bind resolve by name to the component input signal specified by `bindings`', () => {
119+
expect(comp.resolve10()).toBe('resolve10');
120+
});
121+
122+
it('should bind resolve by name to component input signal templateName', () => {
123+
expect(comp._resolve11()).toBe('resolve11');
124+
});
125+
126+
it('should bind resolve by name to the component input signal templateName specified in state `bindings`', () => {
127+
expect(comp._resolve12()).toBe('resolve12');
128+
});
129+
130+
it('should bind resolve to the component input signal name and transform its value', () => {
131+
expect(comp.resolve13()).toBe('resolve131');
132+
});
133+
83134
/////////////////////////////////////////
84135

85136
it('should inject resolve by name to constructor', () => {

0 commit comments

Comments
 (0)