48 lines
1.2 KiB
JavaScript
48 lines
1.2 KiB
JavaScript
const request = require('supertest');
|
|
const app = require('../../backend/src/index');
|
|
|
|
describe('Files API', () => {
|
|
let token;
|
|
const testUser = {
|
|
username: 'filetest' + Date.now(),
|
|
password: 'test123'
|
|
};
|
|
|
|
beforeAll(async () => {
|
|
// Register and login
|
|
await request(app)
|
|
.post('/api/auth/register')
|
|
.send(testUser);
|
|
|
|
const loginRes = await request(app)
|
|
.post('/api/auth/login')
|
|
.send(testUser);
|
|
|
|
token = loginRes.body.token;
|
|
});
|
|
|
|
describe('GET /api/files', () => {
|
|
it('should get file list', async () => {
|
|
const response = await request(app)
|
|
.get('/api/files')
|
|
.set('Authorization', `Bearer ${token}`);
|
|
|
|
expect(response.status).toBe(200);
|
|
expect(response.body).toHaveProperty('files');
|
|
expect(Array.isArray(response.body.files)).toBe(true);
|
|
});
|
|
});
|
|
|
|
describe('POST /api/files/folder', () => {
|
|
it('should create a new folder', async () => {
|
|
const response = await request(app)
|
|
.post('/api/files/folder')
|
|
.set('Authorization', `Bearer ${token}`)
|
|
.send({ name: 'Test Folder' });
|
|
|
|
expect(response.status).toBe(200);
|
|
expect(response.body).toHaveProperty('success', true);
|
|
});
|
|
});
|
|
});
|