Fix timeout issues in Alpaca tests.

This commit is contained in:
Carter Bertolini 2023-10-31 16:58:06 -04:00
parent 54a3341968
commit 91134a42d5
4 changed files with 12 additions and 22 deletions

View File

@ -18,16 +18,11 @@ class AlpacaActivity {
export class AlpacaActionProvider { export class AlpacaActionProvider {
readonly alpaca: Alpaca; readonly alpaca: Alpaca;
readonly fetchActions = (options: ActionFetchOptions): Promise<ActionFetchResponse> => { readonly fetchActions = (options: ActionFetchOptions): Promise<ActionFetchResponse> => {
return (this.alpaca.getAccountActivities({ return (this.alpaca.getAccountActivities({
activityTypes: "FILL", activityTypes: "FILL",
until: undefined as any,
after: undefined as any,
direction: "desc", direction: "desc",
date: undefined as any,
pageSize: undefined as any,
pageToken: undefined as any,
}) as Promise<AlpacaActivity[]>).then((activities) => { }) as Promise<AlpacaActivity[]>).then((activities) => {
return new ActionFetchResponse( return new ActionFetchResponse(
activities activities
@ -45,9 +40,9 @@ export class AlpacaActionProvider {
}).catch((err) => { }).catch((err) => {
return err; return err;
}); });
} };
constructor(alpaca: Alpaca) { constructor(alpaca: Alpaca) {
this.alpaca = alpaca; this.alpaca = alpaca;
} }
} }

View File

@ -5,4 +5,4 @@ export * from './interface/actions';
export * from './alpaca/exchange'; export * from './alpaca/exchange';
export * from './alpaca/portfolio'; export * from './alpaca/portfolio';
export * from './alpaca/quote'; export * from './alpaca/quote';

View File

@ -100,7 +100,6 @@ export class ActionFetchOptions {
* Represents the response of a fetch action request. * Represents the response of a fetch action request.
*/ */
export class ActionFetchResponse { export class ActionFetchResponse {
/** /**
* An array of `Action` objects. * An array of `Action` objects.
*/ */

View File

@ -18,28 +18,24 @@ const logger = createLogger({
}); });
describe('Alpaca Tests', () => { describe('Alpaca Tests', () => {
test('portfolio fetch', () => { test('portfolio fetch', async () => {
expect(process.env.ALPACA_API_KEY).toBeDefined(); expect(process.env.ALPACA_API_KEY).toBeDefined();
expect(process.env.ALPACA_SECRET_KEY).toBeDefined(); expect(process.env.ALPACA_SECRET_KEY).toBeDefined();
const exchange = new AlpacaExchange(process.env.ALPACA_API_KEY!, process.env.ALPACA_SECRET_KEY!, true); const exchange = new AlpacaExchange(process.env.ALPACA_API_KEY!, process.env.ALPACA_SECRET_KEY!, true);
expect(exchange.portfolioProvider.fetchPortfolio()).resolves.toBeDefined(); await expect(exchange.portfolioProvider.fetchPortfolio()).resolves.toBeDefined();
}); }, 10000);
test('quote fetch', () => { test('quote fetch', async () => {
expect(process.env.ALPACA_API_KEY).toBeDefined(); expect(process.env.ALPACA_API_KEY).toBeDefined();
expect(process.env.ALPACA_SECRET_KEY).toBeDefined(); expect(process.env.ALPACA_SECRET_KEY).toBeDefined();
const exchange = new AlpacaExchange(process.env.ALPACA_API_KEY!, process.env.ALPACA_SECRET_KEY!, true); const exchange = new AlpacaExchange(process.env.ALPACA_API_KEY!, process.env.ALPACA_SECRET_KEY!, true);
expect(exchange.quoteProvider.fetchQuote("AAPL")).resolves.toBeDefined(); await expect(exchange.quoteProvider.fetchQuote("AAPL")).resolves.toBeDefined();
}); }, 10000);
test('action fetch', async () => { test('action fetch', async () => {
expect(process.env.ALPACA_API_KEY).toBeDefined(); expect(process.env.ALPACA_API_KEY).toBeDefined();
expect(process.env.ALPACA_SECRET_KEY).toBeDefined(); expect(process.env.ALPACA_SECRET_KEY).toBeDefined();
const exchange = new AlpacaExchange(process.env.ALPACA_API_KEY!, process.env.ALPACA_SECRET_KEY!, true); const exchange = new AlpacaExchange(process.env.ALPACA_API_KEY!, process.env.ALPACA_SECRET_KEY!, true);
await expect(exchange.actionProvider.fetchActions(new ActionFetchOptions)).resolves.toBeDefined();
const actions = await exchange.actionProvider.fetchActions(new ActionFetchOptions); }, 10000);
logger.info(JSON.stringify(actions));
//expect(exchange.actionProvider.fetchActions(new ActionFetchOptions)).resolves.toBeDefined();
});
}); });