UNPKG

veriqa

Version:

🎯 Smart Manual QA Test Advisor with AI-Powered Regression Suggestions and Advanced Git Integration

46 lines (39 loc) • 1.65 kB
const request = require('supertest'); const app = require('../test-api'); describe('User API Tests', () => { describe('GET /api/users', () => { it('should return all users', async () => { const response = await request(app).get('/api/users'); expect(response.status).toBe(200); expect(response.body).toHaveLength(2); expect(response.body[0].name).toBe('John Doe'); }); }); describe('GET /api/users/:id', () => { it('should return a specific user', async () => { const response = await request(app).get('/api/users/1'); expect(response.status).toBe(200); expect(response.body.name).toBe('John Doe'); }); it('should return 404 for non-existent user', async () => { const response = await request(app).get('/api/users/999'); expect(response.status).toBe(404); expect(response.body.error).toBe('User not found'); }); }); describe('POST /api/users', () => { it('should create a new user', async () => { const newUser = { name: 'Bob Wilson', email: 'bob@example.com' }; const response = await request(app).post('/api/users').send(newUser); expect(response.status).toBe(201); expect(response.body.name).toBe('Bob Wilson'); expect(response.body.email).toBe('bob@example.com'); expect(response.body.id).toBeDefined(); }); it('should return 400 for missing required fields', async () => { const response = await request(app).post('/api/users').send({ name: 'Bob' }); expect(response.status).toBe(400); expect(response.body.error).toBe('Name and email are required'); }); }); });