import axios from "axios"; import primary from "./primary.js"; import secondary from "./secondary.js"; import single from "./single.js"; import failing from "./failing.js"; // Constants const endLiveCount = 2; const reportingUrl = `${process.env.QUALITEER_URL}/api/dev/rabbit/TestResults`; // Pull args const args = process.argv.slice(2); const test = (args.find((v)=>v.includes("test=")) ?? "").replace("test=",""); const pipelineData = (args.find((v)=>v.includes("pipelineData=")) ?? "").replace("pipelineData=",""); const pipelineTriggers = (args.find((v)=>v.includes("pipelineTriggers=")) ?? "").replace("pipelineTriggers=",""); const pipelineDashboardSocket = (args.find((v)=>v.includes("pipelineDashboardSocket=")) ?? "").replace("pipelineDashboardSocket=","") || undefined; const logNow = () => console.log(Date.now()); const liveIndicator = () => { for (var i = 0; i < endLiveCount; i++) setTimeout(logNow, i * 1000); } const runTests = () => { switch (test) { case "primary": return primary(); case "secondary": return secondary(pipelineData); case "single": return single(); case "failing": return failing(); default: return single(); } } // Run liveIndicator(); setTimeout(()=>{ const status = runTests(); const testResult = {...status, name:test, pipelineTriggers: pipelineTriggers ? pipelineTriggers : undefined, pipelineDashboardSocket} axios.post(reportingUrl, {testResult}).catch((e)=>{console.log(e.response.status)}); },endLiveCount * 1000);