mirror of
https://github.com/Ark0N/Codeman.git
synced 2026-10-20 09:09:35 +02:00
fix(#567): route test for a custom folder two levels under the cases directory
Pins the user-facing fix end to end: POST /api/cases with a path two levels down returns 200, lands in the linked-cases registry and is scaffolded. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
af52de4d05
commit
8dbcf6e282
1 file changed
+15
@@ -183,6 +183,21 @@ describe('POST /api/cases with a custom path', () => {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('creates and links a folder two levels under the cases directory (not listed as a local case)', async () => {
|
||||||
|
const { app } = await createRouteTestHarness(registerCaseRoutes);
|
||||||
|
mkdirSync(join(CASES_DIR(), 'parent-dir'), { recursive: true });
|
||||||
|
try {
|
||||||
|
const target = join(realpathSync(join(CASES_DIR(), 'parent-dir')), 'nested');
|
||||||
|
const res = await create(app, { name: 'nested', path: target });
|
||||||
|
expect(res.statusCode).toBe(200);
|
||||||
|
expect(res.json().data.case).toEqual({ name: 'nested', path: target });
|
||||||
|
expect(linked()).toEqual({ nested: target });
|
||||||
|
expect(existsSync(join(target, 'CLAUDE.md'))).toBe(true);
|
||||||
|
} finally {
|
||||||
|
safeRmHomeTree(join(CASES_DIR(), 'parent-dir'));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
it('multi-user: a non-admin is refused (403) and nothing is created; an admin is allowed', async () => {
|
it('multi-user: a non-admin is refused (403) and nothing is created; an admin is allowed', async () => {
|
||||||
process.env.CODEMAN_MULTIUSER = '1';
|
process.env.CODEMAN_MULTIUSER = '1';
|
||||||
const user = await createRouteTestHarness(registerCaseRoutes, { authUser: { username: 'bob', role: 'user' } });
|
const user = await createRouteTestHarness(registerCaseRoutes, { authUser: { username: 'bob', role: 'user' } });
|
||||||
|
|||||||
Reference in new issue
Block a user