test: verify open bid form reacts to rotating source records

This commit is contained in:
2026-09-06 15:02:52 +03:00
parent ff1a4bca70
commit 1e36c17487
2 changed files with 24 additions and 0 deletions
+17
View File
@@ -96,6 +96,23 @@ const ui=await createServer({server:{host:'127.0.0.1',port:0,proxy:{'/api':{targ
res.setHeader('Content-Type','application/json');res.end(JSON.stringify({success:true,job:qaJobs.getAiJob(user.email,created.id)}));
}catch(error){res.writeHead(400,{'Content-Type':'application/json'});res.end(JSON.stringify({success:false,error:error.message}));}});return;
}
if(req.url==='/qa-source-update') {
const html=`<html lang="tr"><head><meta name="viewport" content="width=device-width,initial-scale=1"></head><body><div id="root"></div><script type="module">
import React from '/node_modules/.vite/deps/react.js';
import ReactDOM from '/node_modules/.vite/deps/react-dom_client.js';
import {AppProvider,useApp} from '/src/context/AppContext.jsx';
import {BidPackageBuilder} from '/src/components/BidPackageBuilder.jsx';
import '/src/index.css';
const selected=${JSON.stringify(tenders[0])};
function Probe(){const {setTenders}=useApp();return React.createElement('main',{},
React.createElement('h1',{},'Yerel kaynak güncelleme testi'),
React.createElement('p',{},'Yalnız sentetik veri. Açık dosya korunurken güncel kaynak değişir.'),
React.createElement('button',{onClick:()=>setTenders([{...selected,id:'qa-rotated-source',baslik:'QA Güncellenmiş alım',kazananFirma:'QA Kazanan'}])},'Aynı İKN için yeni kayıt ID ve kazanan yayımla'),
React.createElement(BidPackageBuilder,{tender:selected}));}
ReactDOM.createRoot(document.getElementById('root')).render(React.createElement(AppProvider,{},React.createElement(Probe)));
</script></body></html>`;
res.setHeader('Content-Type','text/html; charset=utf-8');res.end(await server.transformIndexHtml('/qa-source-update',html));return;
}
if(req.url==='/qa-brief-controls') {res.setHeader('Content-Type','text/html; charset=utf-8');res.end(`<html lang="tr"><h1>Yerel haftalık özet testi</h1><button id="read">Özet okuma hatası</button><button id="write">Özet kayıt hatası</button><button id="none">Özet hatalarını kapat</button><p role="status"></p><script>for(const mode of ['read','write','none'])document.getElementById(mode).onclick=async()=>{const r=await fetch('/qa-brief-failure?mode='+mode,{method:'POST'});document.querySelector('[role=status]').textContent=await r.text();};</script></html>`);return;}
if(req.url?.startsWith('/qa-brief-failure?')&&req.method==='POST'){briefFailure=new URL(req.url,'http://localhost').searchParams.get('mode');res.end('Özet test durumu: '+briefFailure);return;}
if(req.url?.startsWith('/api/me/brief')&&((briefFailure==='read'&&req.method==='GET')||(briefFailure==='write'&&req.method==='POST'))){res.writeHead(503,{'Content-Type':'application/json'});res.end(JSON.stringify({success:false,error:'QA: Haftalık özet deposuna erişilemiyor.'}));return;}