caterium-app/tests/employee-create-v1774.mjs
2026-09-12 08:53:42 +03:00

12 lines
1.1 KiB
JavaScript

import fs from 'node:fs';
const src=fs.readFileSync('supabase/functions/caterium-create-employee/index.ts','utf8');
let bad=0;const check=(v,m)=>{console.log(`${v?'OK':'FAIL'}: ${m}`);if(!v)bad++};
check(src.includes('prepStatus === "already_member"'),'already_member returns without duplicate creation');
check(src.includes('prepStatus === "existing"'),'existing auth user is handled explicitly');
check(src.includes('return await finalize(existingUserId, false, null)'),'existing auth user is finalized into workspace membership');
check(src.includes('retryStatus === "existing"'),'partial/concurrent auth creation retries finalize');
check(src.includes('sun_employee_finalize_v28'),'employee finalize RPC remains required');
check(!src.includes('if (prep.data?.status !== "new")'),'old early-return bug is removed');
check(src.includes('new Set(["manager", "kitchen", "courier", "viewer"])'),'employee endpoint cannot create another company owner/admin');
check(!src.includes('new Set(["admin", "manager"'),'admin role is excluded from employee creation');
if(bad)process.exit(1);