feat(jobs): integrate table and board workspace

This commit is contained in:
cesnimda
2026-09-29 23:01:05 +02:00
parent 6fc8937701
commit 384dfa8a4b
35 changed files with 1191 additions and 60 deletions
@@ -202,7 +202,7 @@ test('full-board population keeps jobs beyond the table page and offers a separa
expect(await screen.findByText('Role 26')).toBeVisible();
expect(screen.getAllByRole('button', { name: /Press Space to pick up/ })).toHaveLength(27);
expect(mockedApi.get).toHaveBeenCalledWith('/jobapplications/board', expect.objectContaining({ params: expect.objectContaining({ includeDeleted: false }) }));
expect(screen.getByRole('link', { name: /Job Applications/ })).toHaveAttribute('href', '/jobs?source=board');
expect(screen.queryByRole('link', { name: /Job Applications/ })).not.toBeInTheDocument();
});
test('keyboard Escape cancels movement without a write and successful movement restores card focus', async () => {
@@ -247,7 +247,7 @@ test('Board sends the shared logical URL query, excluding Table paging and clien
q: 'Board', status: 'Custom review', companyId: 7, location: 'Tromsø', needsFollowUp: true,
readiness: 'interview', includeDeleted: true, sortBy: 'jobTitle', sortDir: 'asc',
} });
expect(screen.getByRole('link', { name: /Job Applications/ })).toHaveAttribute('href', expect.stringContaining('q=Board&status=Custom%20review'));
// The shared workspace owns the view switch; this renderer only loads the supplied query.
});
test('a successful filtered move reloads membership and focuses the board when the job leaves it', async () => {