All tests fixed. Deployment on NAS prepared
This commit is contained in:
52
tests/00_smoke.spec.ts
Normal file
52
tests/00_smoke.spec.ts
Normal file
@@ -0,0 +1,52 @@
|
||||
import { test, expect } from '@playwright/test';
|
||||
|
||||
test.describe('Smoke Tests - Backend Refactor', () => {
|
||||
test('Login, Exercises, and Session Flow', async ({ request }) => {
|
||||
const email = `smoke_${Date.now()}@example.com`;
|
||||
const password = 'password123';
|
||||
|
||||
// 1. Register
|
||||
const registerRes = await request.post('http://localhost:3001/api/auth/register', {
|
||||
data: { email, password }
|
||||
});
|
||||
expect(registerRes.ok()).toBeTruthy();
|
||||
const registerBody = await registerRes.json();
|
||||
// Check new structure
|
||||
expect(registerBody.success).toBe(true);
|
||||
expect(registerBody.data).toHaveProperty('token');
|
||||
const token = registerBody.data.token;
|
||||
|
||||
// 2. Get Exercises
|
||||
const exercisesRes = await request.get('http://localhost:3001/api/exercises', {
|
||||
headers: { Authorization: `Bearer ${token}` }
|
||||
});
|
||||
expect(exercisesRes.ok()).toBeTruthy();
|
||||
const exercisesBody = await exercisesRes.json();
|
||||
expect(exercisesBody.success).toBe(true);
|
||||
expect(Array.isArray(exercisesBody.data)).toBe(true);
|
||||
|
||||
// 3. Create Session
|
||||
const sessionRes = await request.post('http://localhost:3001/api/sessions', {
|
||||
headers: { Authorization: `Bearer ${token}` },
|
||||
data: {
|
||||
id: "test-session-" + Date.now(),
|
||||
startTime: new Date().toISOString(),
|
||||
sets: []
|
||||
}
|
||||
});
|
||||
expect(sessionRes.ok()).toBeTruthy();
|
||||
const sessionBody = await sessionRes.json();
|
||||
expect(sessionBody.success).toBe(true);
|
||||
expect(sessionBody.data).toHaveProperty('id');
|
||||
|
||||
// 4. Get Active Session
|
||||
const activeRes = await request.get('http://localhost:3001/api/sessions/active', {
|
||||
headers: { Authorization: `Bearer ${token}` }
|
||||
});
|
||||
expect(activeRes.ok()).toBeTruthy();
|
||||
const activeBody = await activeRes.json();
|
||||
expect(activeBody.success).toBe(true);
|
||||
expect(activeBody.data).toHaveProperty('session');
|
||||
expect(activeBody.data.session.id).toBe(sessionBody.data.id);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user