diff --git a/src/backtest-client.test.ts b/src/backtest-client.test.ts index 379e81b..8226e46 100644 --- a/src/backtest-client.test.ts +++ b/src/backtest-client.test.ts @@ -150,6 +150,17 @@ describe('BacktestClient', () => { }); }); + describe('getAssets', () => { + it('returns all symbols from bar data', async () => { + const assets = await client.getAssets({ status: 'active', asset_class: 'us_equity' }); + const symbols = assets.map(a => a.symbol); + expect(symbols).toEqual(['QQQ', 'TQQQ', 'SQQQ']); + expect(assets[0].status).toBe('active'); + expect(assets[0].asset_class).toBe('us_equity'); + expect(assets[0].fractionable).toBe(true); + }); + }); + describe('getAsset', () => { it('returns asset info', async () => { const asset = await client.getAsset('TQQQ'); @@ -157,4 +168,16 @@ describe('BacktestClient', () => { expect(asset.fractionable).toBe(true); }); }); + + describe('createOrder - unknown symbol', () => { + it('throws when no bar data exists', async () => { + await expect(client.createOrder({ + symbol: 'AAPL', + notional: 1000, + side: 'buy', + type: 'market', + time_in_force: 'day', + })).rejects.toThrow('No bar data for AAPL'); + }); + }); });