import fs from 'node:fs/promises'; import assert from 'node:assert/strict'; const source=await fs.readFile('scripts/supplier-evaluation-check.mjs','utf8'); const common=source.slice(source.indexOf('const base ='),source.indexOf('const author =')); await new Function('fs','assert','return (async()=>{'+common+` const viewer=client();await viewer.enter('admin'); const dashboard=await viewer.request('/dashboard'); if(dashboard.page?.props.context?.enforced)await viewer.request('/contexto','POST',{area:'procurement',option:'procurement.internal'}); const response=await viewer.request('/stock/requisicoes');assert.equal(response.status,200); const p=response.page.props;assert.equal(response.page.component,'stock/requests');assert.equal(p.ready,true);assert.equal(p.canPrepare,false); assert.ok(p.views.some(v=>v.key==='all'));assert.ok(Array.isArray(p.records.data));assert.equal(typeof p.records.total,'number');assert.ok(p.checkedAt); for(const view of ['review','reserve','delivery','receipt']){const r=await viewer.request('/stock/requisicoes?view='+view);assert.equal(r.status,200);assert.equal(r.page.props.records.total,0);} const settings=await viewer.request('/administracao/parametrizacao');assert.equal(settings.status,200); assert.ok(settings.page.props.workflowTasks.warehouse_request_prepare);assert.ok(settings.page.props.workflowTasks.warehouse_request_review);assert.ok(settings.page.props.workflowTasks.warehouse_request_deliver); await fs.writeFile('docs/proofs/warehouse-workdesk-http.json',JSON.stringify({checked_at:new Date().toISOString(),environment:base,component:'stock/requests',read_only_administrator:true,task_views_enforce_permissions:true,filters_and_pagination:true,profile_tasks_present:true,accounts_or_grants_changed:false,business_commands:false,visual_browser_review:false},null,2)); console.log('Acompanhamento de armazém: consulta, tarefas por competência e paginação conferidos em HTTP.'); `+'})()')(fs,assert);