Task Summary
Several dashboard and hub components ship without unit tests. Add a
behavior-focused .spec.ts file alongside each component listed below.
Target observable behavior — event handlers, service calls, navigation,
form submission — and avoid asserting on implementation details like URL
string literals.
Components needing specs:
- dashboard/component/user/share-access/share-access.component.ts
(form validation, email sending, access-grant flow)
- hub/component/hub.component.ts
(navigation and route subscription logic)
- hub/component/landing-page/landing-page.component.ts
- hub/component/about/local-login/local-login.component.ts
- hub/component/workflow/detail/hub-workflow-detail.component.ts
- dashboard/component/user/search-bar/search-bar.component.ts
(search behavior, debouncing)
- dashboard/component/user/user-dataset/user-dataset.component.ts
(list rendering, deletion, pagination)
- dashboard/component/user/user-dataset/user-dataset-list-item/
user-dataset-list-item.component.ts
Conventions: place each spec next to its component, mock injected services
with Jasmine spies, use fakeAsync/tick for async behavior, and assert on
spy calls / emitted outputs rather than URL strings.
Task Type
Task Summary
Several dashboard and hub components ship without unit tests. Add a
behavior-focused
.spec.tsfile alongside each component listed below.Target observable behavior — event handlers, service calls, navigation,
form submission — and avoid asserting on implementation details like URL
string literals.
Components needing specs:
(form validation, email sending, access-grant flow)
(navigation and route subscription logic)
(search behavior, debouncing)
(list rendering, deletion, pagination)
user-dataset-list-item.component.ts
Conventions: place each spec next to its component, mock injected services
with Jasmine spies, use fakeAsync/tick for async behavior, and assert on
spy calls / emitted outputs rather than URL strings.
Task Type