import { TeamcityReporter } from "./TeamcityReporter.ts"; // Check if running in TeamCity environment const isTeamCity = process.env.TEAMCITY_VERSION !== undefined; // Override console methods to capture test output if needed if (isTeamCity) { // You can add global beforeAll/afterAll if needed console.log("TeamCity reporter enabled"); } // Export wrapper functions for test suites export function setupTeamCityReporting() { if (!isTeamCity) { return { reportSuiteStart: () => {}, reportSuiteEnd: () => {}, reportTestStart: () => {}, reportTestEnd: () => {}, reportTestFailed: () => {}, reportTestError: () => {}, }; } return { reportSuiteStart: (name: string) => { TeamcityReporter.reportSuiteStart(name); }, reportSuiteEnd: (name: string) => { TeamcityReporter.reportSuiteEnd(name); }, reportTestStart: (name: string) => { TeamcityReporter.reportTestStart(name); }, reportTestEnd: (name: string) => { TeamcityReporter.reportTestEnd(name); }, reportTestFailed: ( name: string, message: string, details: string, comparison?: { expected: string; actual: string }, ) => { TeamcityReporter.reportTestFailed(name, message, details, { comparisonFailure: !!comparison, expected: comparison?.expected || "", actual: comparison?.actual || "", }); }, reportTestError: (name: string, error: Error) => { TeamcityReporter.reportTestError(name, error); }, }; }