import test from 'node:test'; import assert from 'node:assert/strict'; import { readFileSync } from 'node:fs'; const marketReferenceSource = readFileSync(new URL('../src/apps/market-reference-ingest.mjs', import.meta.url), 'utf8'); const strategyEngineSource = readFileSync(new URL('../src/apps/strategy-engine.mjs', import.meta.url), 'utf8'); test('market reference ingest publishes BTC/USDC route-specific prices', () => { assert.match(marketReferenceSource, /XBTUSDC/); assert.match(marketReferenceSource, /btc_usdc_reference/); assert.match(marketReferenceSource, /usdc_per_btc/); assert.match(marketReferenceSource, /buildPriceId\(now, referencePair\.priceRoute\.routeId\)/); }); test('strategy engine stores and consumes latest prices by price route', () => { assert.match(strategyEngineSource, /latest_price_events_by_route/); assert.match(strategyEngineSource, /state\.latest_price_events_by_route\[routeId\] = event/); assert.match(strategyEngineSource, /resolvePriceEventForDemand\(event, tradingConfig\)/); assert.match(strategyEngineSource, /pair\?\.priceRoute\?\.routeId/); assert.match(strategyEngineSource, /return state\.latest_price_events_by_route\[routeId\] \|\| null/); });