Skip to content

Commit 6cb368c

Browse files
committed
[WIP] test(signal): correct tests
1 parent d7e1aff commit 6cb368c

File tree

6 files changed

+101
-140
lines changed

6 files changed

+101
-140
lines changed

packages/router-component-store/src/lib/global-router-store/nested-route-title.spec.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ describe(`${GlobalRouterStore.name} nested route title`, () => {
8181
await expect(
8282
firstValueFrom(ngrxStore.select(ngrxRouterStore.selectTitle))
8383
).resolves.toBe(
84-
// NOTE(@LayZeeDK) Seems to be a bug in NgRx Router Store 15.0.0
84+
// NOTE(@LayZeeDK) Seems to be a bug in NgRx Router Store
8585
undefined
8686
);
8787
}
@@ -115,7 +115,7 @@ describe(`${GlobalRouterStore.name} nested route title`, () => {
115115
await expect(
116116
firstValueFrom(ngrxStore.select(ngrxRouterStore.selectTitle))
117117
).resolves.toBe(
118-
// NOTE(@LayZeeDK) Seems to be a bug in NgRx Router Store 15.0.0
118+
// NOTE(@LayZeeDK) Seems to be a bug in NgRx Router Store
119119
undefined
120120
);
121121
}
@@ -140,7 +140,7 @@ describe(`${GlobalRouterStore.name} nested route title`, () => {
140140
await expect(
141141
firstValueFrom(ngrxStore.select(ngrxRouterStore.selectTitle))
142142
).resolves.toBe(
143-
// NOTE(@LayZeeDK) Seems to be a bug in NgRx Router Store 15.0.0
143+
// NOTE(@LayZeeDK) Seems to be a bug in NgRx Router Store
144144
undefined
145145
);
146146
});

packages/router-signal-store/src/lib/global-router-signal-store/nested-route-title.spec.ts

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,6 @@ describe(`${GlobalRouterSignalStore.name} nested route title`, () => {
6464
When the ${GlobalRouterSignalStoreTestGrandchildComponent.name} route is activated
6565
Then the title signal emits the resolved title for the leaf route`,
6666
async ({ RoutedComponent }) => {
67-
expect.assertions(2);
68-
6967
const expectedTitle = 'grandchild-route-title';
7068
const { routerSignalStore, ngrxRouterStore, ngrxStore } =
7169
await globalRouterSignalStoreSetup({
@@ -77,7 +75,8 @@ describe(`${GlobalRouterSignalStore.name} nested route title`, () => {
7775

7876
expect(routerSignalStore.title()).toBe(expectedTitle);
7977
expect(ngrxStore.selectSignal(ngrxRouterStore.selectTitle)()).toBe(
80-
expectedTitle
78+
// NOTE(@LayZeeDK) Seems to be a bug in NgRx Router Store
79+
undefined
8180
);
8281
}
8382
);
@@ -92,8 +91,6 @@ describe(`${GlobalRouterSignalStore.name} nested route title`, () => {
9291
When the ${GlobalRouterSignalStoreTestChildComponent.name} route is activated
9392
Then the title signal emits the resolved title for the leaf route`,
9493
async ({ RoutedComponent }) => {
95-
expect.assertions(2);
96-
9794
const expectedTitle = 'child-route-title';
9895
const { routerSignalStore, ngrxRouterStore, ngrxStore } =
9996
await globalRouterSignalStoreSetup({
@@ -105,7 +102,8 @@ describe(`${GlobalRouterSignalStore.name} nested route title`, () => {
105102

106103
expect(routerSignalStore.title()).toBe(expectedTitle);
107104
expect(ngrxStore.selectSignal(ngrxRouterStore.selectTitle)()).toBe(
108-
expectedTitle
105+
// NOTE(@LayZeeDK) Seems to be a bug in NgRx Router Store
106+
undefined
109107
);
110108
}
111109
);
@@ -119,8 +117,6 @@ describe(`${GlobalRouterSignalStore.name} nested route title`, () => {
119117
When the ${GlobalRouterSignalStoreTestParentComponent.name} route is activated
120118
Then the title signal emits the resolved title for the leaf route`,
121119
async ({ RoutedComponent }) => {
122-
expect.assertions(2);
123-
124120
const expectedTitle = 'parent-route-title';
125121
const { routerSignalStore, ngrxRouterStore, ngrxStore } =
126122
await globalRouterSignalStoreSetup({
@@ -132,7 +128,8 @@ describe(`${GlobalRouterSignalStore.name} nested route title`, () => {
132128

133129
expect(routerSignalStore.title()).toBe(expectedTitle);
134130
expect(ngrxStore.selectSignal(ngrxRouterStore.selectTitle)()).toBe(
135-
expectedTitle
131+
// NOTE(@LayZeeDK) Seems to be a bug in NgRx Router Store
132+
undefined
136133
);
137134
}
138135
);

packages/router-signal-store/src/lib/local-router-signal-store/componentless-nested-route-parameters.spec.ts

Lines changed: 54 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { computed } from '@angular/core';
12
import { Params, RouterConfigOptions, Routes } from '@angular/router';
23
import { firstValueFrom } from 'rxjs';
34
import { RouterSignalStore } from '../router-signal-store';
@@ -64,7 +65,7 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
6465
And componentless route parameters before the ${LocalRouterSignalStoreTestParentComponent.name} are emitted`,
6566
async (navigateTo) => {
6667
expect.assertions(3);
67-
const { routerSignalStore, componentStore } =
68+
const { activatedRoute, routerSignalStore } =
6869
await localRouterSignalStoreSetup({
6970
navigateTo,
7071
paramsInheritanceStrategy,
@@ -78,23 +79,20 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
7879
parent: 'parent-route-parameter',
7980
shadowed: 'parent-route-parameter',
8081
};
81-
await expect(
82-
firstValueFrom(routerSignalStore.routeParams$)
83-
).resolves.toEqual(expectedRouteParameters);
82+
expect(routerSignalStore.routeParams()).toEqual(
83+
expectedRouteParameters
84+
);
8485
await expect(
8586
firstValueFrom(activatedRoute.params)
8687
).resolves.toEqual(expectedRouteParameters);
87-
await expect(
88-
firstValueFrom(
89-
componentStore.select({
90-
componentlessBeforeParent: routerSignalStore.selectRouteParam(
91-
'componentlessBeforeParent'
92-
),
93-
parent: routerSignalStore.selectRouteParam('parent'),
94-
shadowed: routerSignalStore.selectRouteParam('shadowed'),
95-
})
96-
)
97-
).resolves.toEqual(expectedRouteParameters);
88+
const actualRouteParameters = computed(() => ({
89+
componentlessBeforeParent: routerSignalStore.selectRouteParam(
90+
'componentlessBeforeParent'
91+
)(),
92+
parent: routerSignalStore.selectRouteParam('parent')(),
93+
shadowed: routerSignalStore.selectRouteParam('shadowed')(),
94+
}));
95+
expect(actualRouteParameters()).toEqual(expectedRouteParameters);
9896
}
9997
);
10098
}
@@ -112,7 +110,7 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
112110
And componentless route parameters before the ${LocalRouterSignalStoreTestChildComponent.name} are emitted`,
113111
async (navigateTo) => {
114112
expect.assertions(3);
115-
const { routerSignalStore, componentStore } =
113+
const { activatedRoute, routerSignalStore } =
116114
await localRouterSignalStoreSetup({
117115
navigateTo,
118116
RoutedComponent: LocalRouterSignalStoreTestChildComponent,
@@ -125,23 +123,20 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
125123
child: 'child-route-parameter',
126124
shadowed: 'child-route-parameter',
127125
};
128-
await expect(
129-
firstValueFrom(routerSignalStore.routeParams$)
130-
).resolves.toEqual(expectedRouteParameters);
126+
expect(routerSignalStore.routeParams()).toEqual(
127+
expectedRouteParameters
128+
);
131129
await expect(firstValueFrom(activatedRoute.params)).resolves.toEqual(
132130
expectedRouteParameters
133131
);
134-
await expect(
135-
firstValueFrom(
136-
componentStore.select({
137-
componentlessBeforeChild: routerSignalStore.selectRouteParam(
138-
'componentlessBeforeChild'
139-
),
140-
child: routerSignalStore.selectRouteParam('child'),
141-
shadowed: routerSignalStore.selectRouteParam('shadowed'),
142-
})
143-
)
144-
).resolves.toEqual(expectedRouteParameters);
132+
const actualRouteParameters = computed(() => ({
133+
componentlessBeforeChild: routerSignalStore.selectRouteParam(
134+
'componentlessBeforeChild'
135+
)(),
136+
child: routerSignalStore.selectRouteParam('child')(),
137+
shadowed: routerSignalStore.selectRouteParam('shadowed')(),
138+
}));
139+
expect(actualRouteParameters()).toEqual(expectedRouteParameters);
145140
}
146141
);
147142

@@ -150,7 +145,7 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
150145
Then route parameters for the ${LocalRouterSignalStoreTestGrandchildComponent.name} route are emitted
151146
And componentless route parameters before the ${LocalRouterSignalStoreTestGrandchildComponent.name} are emitted`, async () => {
152147
expect.assertions(3);
153-
const { routerSignalStore, componentStore } =
148+
const { activatedRoute, routerSignalStore } =
154149
await localRouterSignalStoreSetup({
155150
navigateTo:
156151
'componentless-route-parameter-before-parent;shadowed=componentless-route-parameter-before-parent/parent-route-parameter;shadowed=parent-route-parameter/componentless-route-parameter-before-child;shadowed=componentless-route-parameter-before-child/child-route-parameter;shadowed=child-route-parameter/componentless-route-parameter-before-grandchild;shadowed=componentless-route-parameter-before-grandchild/grandchild-route-parameter;shadowed=grandchild-route-parameter',
@@ -164,23 +159,18 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
164159
grandchild: 'grandchild-route-parameter',
165160
shadowed: 'grandchild-route-parameter',
166161
};
167-
await expect(
168-
firstValueFrom(routerSignalStore.routeParams$)
169-
).resolves.toEqual(expectedRouteParameters);
162+
expect(routerSignalStore.routeParams()).toEqual(expectedRouteParameters);
170163
await expect(firstValueFrom(activatedRoute.params)).resolves.toEqual(
171164
expectedRouteParameters
172165
);
173-
await expect(
174-
firstValueFrom(
175-
componentStore.select({
176-
componentlessBeforeGrandchild: routerSignalStore.selectRouteParam(
177-
'componentlessBeforeGrandchild'
178-
),
179-
grandchild: routerSignalStore.selectRouteParam('grandchild'),
180-
shadowed: routerSignalStore.selectRouteParam('shadowed'),
181-
})
182-
)
183-
).resolves.toEqual(expectedRouteParameters);
166+
const actualRouteParameters = computed(() => ({
167+
componentlessBeforeGrandchild: routerSignalStore.selectRouteParam(
168+
'componentlessBeforeGrandchild'
169+
)(),
170+
grandchild: routerSignalStore.selectRouteParam('grandchild')(),
171+
shadowed: routerSignalStore.selectRouteParam('shadowed')(),
172+
}));
173+
expect(actualRouteParameters()).toEqual(expectedRouteParameters);
184174
});
185175
});
186176

@@ -196,14 +186,12 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
196186
And route parameters for the ${LocalRouterSignalStoreTestParentComponent.name} route are emitted
197187
And componentless route parameters before the ${LocalRouterSignalStoreTestParentComponent.name} are emitted`,
198188
async (navigateTo) => {
199-
expect.assertions(3);
200-
const { routerSignalStore, componentStore } =
201-
await localRouterSignalStoreSetup({
202-
navigateTo,
203-
paramsInheritanceStrategy: 'always',
204-
RoutedComponent: LocalRouterSignalStoreTestChildComponent,
205-
routes,
206-
});
189+
const { routerSignalStore } = await localRouterSignalStoreSetup({
190+
navigateTo,
191+
paramsInheritanceStrategy: 'always',
192+
RoutedComponent: LocalRouterSignalStoreTestChildComponent,
193+
routes,
194+
});
207195

208196
const expectedRouteParameters: Params = {
209197
componentlessBeforeParent:
@@ -217,7 +205,7 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
217205
expect(routerSignalStore.routeParams()).toEqual(
218206
expectedRouteParameters
219207
);
220-
expect({
208+
const actualRouteParameters = computed(() => ({
221209
componentlessBeforeParent: routerSignalStore.selectRouteParam(
222210
'componentlessBeforeParent'
223211
)(),
@@ -227,7 +215,8 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
227215
)(),
228216
child: routerSignalStore.selectRouteParam('child')(),
229217
shadowed: routerSignalStore.selectRouteParam('shadowed')(),
230-
}).toEqual(expectedRouteParameters);
218+
}));
219+
expect(actualRouteParameters()).toEqual(expectedRouteParameters);
231220
}
232221
);
233222

@@ -239,15 +228,13 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
239228
And componentless route parameters before the ${LocalRouterSignalStoreTestChildComponent.name} are emitted
240229
And route parameters for the ${LocalRouterSignalStoreTestParentComponent.name} route are emitted
241230
And componentless route parameters before the ${LocalRouterSignalStoreTestParentComponent.name} are emitted`, async () => {
242-
expect.assertions(3);
243-
const { routerSignalStore, componentStore } =
244-
await localRouterSignalStoreSetup({
245-
navigateTo:
246-
'componentless-route-parameter-before-parent;shadowed=componentless-route-parameter-before-parent/parent-route-parameter;shadowed=parent-route-parameter/componentless-route-parameter-before-child;shadowed=componentless-route-parameter-before-child/child-route-parameter;shadowed=child-route-parameter/componentless-route-parameter-before-grandchild;shadowed=componentless-route-parameter-before-grandchild/grandchild-route-parameter;shadowed=grandchild-route-parameter',
247-
paramsInheritanceStrategy: 'always',
248-
RoutedComponent: LocalRouterSignalStoreTestGrandchildComponent,
249-
routes,
250-
});
231+
const { routerSignalStore } = await localRouterSignalStoreSetup({
232+
navigateTo:
233+
'componentless-route-parameter-before-parent;shadowed=componentless-route-parameter-before-parent/parent-route-parameter;shadowed=parent-route-parameter/componentless-route-parameter-before-child;shadowed=componentless-route-parameter-before-child/child-route-parameter;shadowed=child-route-parameter/componentless-route-parameter-before-grandchild;shadowed=componentless-route-parameter-before-grandchild/grandchild-route-parameter;shadowed=grandchild-route-parameter',
234+
paramsInheritanceStrategy: 'always',
235+
RoutedComponent: LocalRouterSignalStoreTestGrandchildComponent,
236+
routes,
237+
});
251238

252239
const expectedRouteParameters: Params = {
253240
componentlessBeforeParent:
@@ -261,7 +248,7 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
261248
shadowed: 'grandchild-route-parameter',
262249
};
263250
expect(routerSignalStore.routeParams()).toEqual(expectedRouteParameters);
264-
expect({
251+
const actualRouteParameters = computed(() => ({
265252
componentlessBeforeParent: routerSignalStore.selectRouteParam(
266253
'componentlessBeforeParent'
267254
)(),
@@ -275,7 +262,8 @@ describe(`${LocalRouterSignalStore.name} componentless nested route parameters`,
275262
)(),
276263
grandchild: routerSignalStore.selectRouteParam('grandchild')(),
277264
shadowed: routerSignalStore.selectRouteParam('shadowed')(),
278-
}).toEqual(expectedRouteParameters);
265+
}));
266+
expect(actualRouteParameters()).toEqual(expectedRouteParameters);
279267
});
280268
});
281269
});

packages/router-signal-store/src/lib/local-router-signal-store/nested-current-route.spec.ts

Lines changed: 30 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import {
33
RouterConfigOptions,
44
Routes,
55
} from '@angular/router';
6-
import { firstValueFrom } from 'rxjs';
76
import { RouterSignalStore } from '../router-signal-store';
87
import { LocalRouterSignalStore } from './local-router-signal-store';
98
import { localRouterSignalStoreSetup } from './test-util/local-router-signal-store-setup';
@@ -71,17 +70,17 @@ describe(`${LocalRouterSignalStore.name} nested current route`, () => {
7170
When the "%s" route is activated
7271
Then current route state for the ${LocalRouterSignalStoreTestParentComponent.name} route is emitted`,
7372
async (navigateTo) => {
74-
expect.assertions(2);
75-
const { routerSignalStore } = await localRouterSignalStoreSetup({
76-
navigateTo,
77-
paramsInheritanceStrategy,
78-
RoutedComponent: LocalRouterSignalStoreTestParentComponent,
79-
routes,
80-
});
73+
const { activatedRoute, routerSignalStore } =
74+
await localRouterSignalStoreSetup({
75+
navigateTo,
76+
paramsInheritanceStrategy,
77+
RoutedComponent: LocalRouterSignalStoreTestParentComponent,
78+
routes,
79+
});
8180

82-
await expect(
83-
firstValueFrom(routerSignalStore.currentRoute$)
84-
).resolves.toEqual(expectedRoutes.parent);
81+
expect(routerSignalStore.currentRoute()).toEqual(
82+
expectedRoutes.parent
83+
);
8584
const {
8685
children,
8786
data,
@@ -110,17 +109,17 @@ describe(`${LocalRouterSignalStore.name} nested current route`, () => {
110109
When the "%s" route is activated
111110
Then current route state for the ${LocalRouterSignalStoreTestChildComponent.name} route is emitted`,
112111
async (navigateTo) => {
113-
expect.assertions(2);
114-
const { routerSignalStore } = await localRouterSignalStoreSetup({
115-
navigateTo,
116-
paramsInheritanceStrategy,
117-
RoutedComponent: LocalRouterSignalStoreTestChildComponent,
118-
routes,
119-
});
112+
const { activatedRoute, routerSignalStore } =
113+
await localRouterSignalStoreSetup({
114+
navigateTo,
115+
paramsInheritanceStrategy,
116+
RoutedComponent: LocalRouterSignalStoreTestChildComponent,
117+
routes,
118+
});
120119

121-
await expect(
122-
firstValueFrom(routerSignalStore.currentRoute$)
123-
).resolves.toEqual(expectedRoutes.child);
120+
expect(routerSignalStore.currentRoute()).toEqual(
121+
expectedRoutes.child
122+
);
124123
const {
125124
children,
126125
data,
@@ -147,17 +146,17 @@ describe(`${LocalRouterSignalStore.name} nested current route`, () => {
147146
it(` And ${RouterSignalStore.name} is injected at ${LocalRouterSignalStoreTestGrandchildComponent.name}
148147
When the ${LocalRouterSignalStoreTestGrandchildComponent.name} route is activated
149148
Then route state for the ${LocalRouterSignalStoreTestGrandchildComponent.name} route is emitted`, async () => {
150-
expect.assertions(2);
151-
const { routerSignalStore } = await localRouterSignalStoreSetup({
152-
navigateTo: '/parent/child/grandchild',
153-
paramsInheritanceStrategy,
154-
RoutedComponent: LocalRouterSignalStoreTestGrandchildComponent,
155-
routes,
156-
});
149+
const { activatedRoute, routerSignalStore } =
150+
await localRouterSignalStoreSetup({
151+
navigateTo: '/parent/child/grandchild',
152+
paramsInheritanceStrategy,
153+
RoutedComponent: LocalRouterSignalStoreTestGrandchildComponent,
154+
routes,
155+
});
157156

158-
await expect(
159-
firstValueFrom(routerSignalStore.currentRoute$)
160-
).resolves.toEqual(expectedRoutes.grandchild);
157+
expect(routerSignalStore.currentRoute()).toEqual(
158+
expectedRoutes.grandchild
159+
);
161160
const {
162161
children,
163162
data,

0 commit comments

Comments
 (0)