Add Jest for unit testing (incomplete)

This commit is contained in:
2025-11-07 09:50:37 -08:00
parent 8f1dd23b62
commit 24681a7cbf
4 changed files with 4170 additions and 6 deletions

20
src/lib/api.test.ts Normal file
View File

@@ -0,0 +1,20 @@
import { Axios } from 'axios';
import MockAdapter from 'axios-mock-adapter';
import { HeaptraderAPI } from './api';
import { expect, jest, test } from '@jest/globals';
let mock: MockAdapter;
class HeaptraderAPITest extends HeaptraderAPI
{
constructor()
{
super("");
mock = new MockAdapter(this._axios);
}
}
test('check uptime', async () => {
const api = new HeaptraderAPI();
await api.heartbeat();
});

View File

@@ -3,16 +3,16 @@ import { consola } from 'consola/browser';
import type { Listing, User } from './models';
import { CreateListingRequestSchema, LoginRequestSchema, RegisterRequestSchema, type CreateListingRequest, type LoginRequest, type RegisterRequest } from './requests';
interface RequestError
export interface RequestError
{
message: string;
}
class HeaptraderAPI
export class HeaptraderAPI
{
private _axios: Axios;
private _user?: User;
private _lastUserUpdateTimeMs?: number;
protected _axios: Axios;
protected _user?: User;
protected _lastUserUpdateTimeMs?: number;
constructor(baseURL: string = "http://localhost")
{