finished http-client tests
This commit is contained in:
parent
557c157228
commit
1899078523
4 changed files with 204 additions and 46 deletions
49
libs/http-client/test/mock-server.test.ts
Normal file
49
libs/http-client/test/mock-server.test.ts
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
import { describe, test, expect, beforeAll, afterAll } from 'bun:test';
|
||||
import { MockServer } from './mock-server.js';
|
||||
|
||||
describe('Mock Server Tests', () => {
|
||||
let mockServer: MockServer;
|
||||
let baseUrl: string;
|
||||
|
||||
beforeAll(async () => {
|
||||
mockServer = new MockServer();
|
||||
await mockServer.start();
|
||||
baseUrl = mockServer.getBaseUrl();
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await mockServer.stop();
|
||||
});
|
||||
|
||||
test('should return status codes', async () => {
|
||||
const response = await fetch(`${baseUrl}/status/200`);
|
||||
expect(response.status).toBe(200);
|
||||
|
||||
const response404 = await fetch(`${baseUrl}/status/404`);
|
||||
expect(response404.status).toBe(404);
|
||||
});
|
||||
|
||||
test('should handle headers endpoint', async () => {
|
||||
const response = await fetch(`${baseUrl}/headers`, {
|
||||
headers: {
|
||||
'X-Test-Header': 'test-value'
|
||||
}
|
||||
});
|
||||
expect(response.status).toBe(200);
|
||||
const data = await response.json();
|
||||
expect(data.headers['x-test-header']).toBe('test-value');
|
||||
});
|
||||
|
||||
test('should handle basic auth', async () => {
|
||||
const credentials = btoa('user:pass');
|
||||
const response = await fetch(`${baseUrl}/basic-auth/user/pass`, {
|
||||
headers: {
|
||||
'Authorization': `Basic ${credentials}`
|
||||
}
|
||||
});
|
||||
expect(response.status).toBe(200);
|
||||
const data = await response.json();
|
||||
expect(data.authenticated).toBe(true);
|
||||
expect(data.user).toBe('user');
|
||||
});
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue