78 lines
2.6 KiB
JavaScript
78 lines
2.6 KiB
JavaScript
// tests/integration/api.test.js
|
|
const request = require('supertest');
|
|
const app = require('../../index');
|
|
|
|
describe('API Integration Tests', () => {
|
|
test('GET / should return welcome message', async () => {
|
|
const response = await request(app)
|
|
.get('/')
|
|
.expect(200);
|
|
|
|
expect(response.body).toHaveProperty('message');
|
|
expect(response.body.message).toBe('Welcome to MerchantsOfHope.org - TSYS Group Recruiting Platform');
|
|
expect(response.body).toHaveProperty('status');
|
|
expect(response.body.status).toBe('running');
|
|
expect(response.body).toHaveProperty('tenantId');
|
|
expect(response.body.tenantId).toBe('default');
|
|
});
|
|
|
|
test('GET /health should return health status', async () => {
|
|
const response = await request(app)
|
|
.get('/health')
|
|
.expect(200);
|
|
|
|
expect(response.body).toHaveProperty('status');
|
|
expect(response.body.status).toBe('OK');
|
|
expect(response.body).toHaveProperty('service');
|
|
expect(response.body.service).toBe('MOH Portal API');
|
|
expect(response.body).toHaveProperty('tenantId');
|
|
expect(response.body.tenantId).toBe('default');
|
|
});
|
|
|
|
test('GET /nonexistent should return 404', async () => {
|
|
const response = await request(app)
|
|
.get('/nonexistent')
|
|
.expect(404);
|
|
|
|
expect(response.body).toHaveProperty('error');
|
|
expect(response.body.error).toBe('Route not found');
|
|
expect(response.body).toHaveProperty('tenantId');
|
|
expect(response.body.tenantId).toBe('default');
|
|
});
|
|
|
|
test('GET /api/auth should return 404 since no implementation yet', async () => {
|
|
const response = await request(app)
|
|
.get('/api/auth')
|
|
.expect(404);
|
|
|
|
expect(response.body).toHaveProperty('error');
|
|
expect(response.body).toHaveProperty('tenantId');
|
|
});
|
|
|
|
test('GET /api/job-seekers should return 404 since no implementation yet', async () => {
|
|
const response = await request(app)
|
|
.get('/api/job-seekers')
|
|
.expect(404);
|
|
|
|
expect(response.body).toHaveProperty('error');
|
|
expect(response.body).toHaveProperty('tenantId');
|
|
});
|
|
|
|
test('GET /api/job-providers should return 404 since no implementation yet', async () => {
|
|
const response = await request(app)
|
|
.get('/api/job-providers')
|
|
.expect(404);
|
|
|
|
expect(response.body).toHaveProperty('error');
|
|
expect(response.body).toHaveProperty('tenantId');
|
|
});
|
|
|
|
test('GET /api/tenants should return 404 since no implementation yet', async () => {
|
|
const response = await request(app)
|
|
.get('/api/tenants')
|
|
.expect(404);
|
|
|
|
expect(response.body).toHaveProperty('error');
|
|
expect(response.body).toHaveProperty('tenantId');
|
|
});
|
|
}); |