Files
ng-signals-template/src/app/users/domain/user.spec.ts
T
ehoandClaude Sonnet 5 927404afd7 feat: minimal signals + RemoteData template with a users feature
Extracted from atomic-design-poc: RemoteData<E,T> (bare union + fromResource,
no combinators) + a trimmed <app-async> switch, no Elm-style store — state is
resource() plus one plain signal. Minimal DDD layering per context
(domain/infrastructure/application/ui) combined with atomic design inside
ui/ (atoms/molecules/organisms/templates/pages), mirroring the POC's
conventions at template scale.

One worked feature (users/): a list with a click-through to a detail view
(its own independent resource() fetch) and a Back action. Tests are
BDD-style (describe/it, one assertion per it) and black-box (assert
rendered DOM/emitted events only) - 100% branch/line coverage. README.md
documents what's deliberately omitted vs. the POC and the concrete growth
path back to it.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-31 23:27:09 +02:00

17 lines
459 B
TypeScript

import { describe, expect, it } from 'vitest';
import { isEmptyUserList } from './user';
describe('isEmptyUserList', () => {
it('is empty for an empty list', () => {
expect(isEmptyUserList([])).toBe(true);
});
it('is not empty when a user is present', () => {
expect(isEmptyUserList([{ id: 1, name: 'Ada' }])).toBe(false);
});
it('is empty when the list is undefined', () => {
expect(isEmptyUserList(undefined)).toBe(true);
});
});