56 lines
1.5 KiB
JavaScript
56 lines
1.5 KiB
JavaScript
// 回收站 API 测试
|
|
const request = require('supertest');
|
|
const app = require('../../backend/src/index');
|
|
|
|
describe('Trash API', () => {
|
|
let token;
|
|
|
|
beforeAll(async () => {
|
|
const loginRes = await request(app)
|
|
.post('/api/auth/login')
|
|
.send({ username: 'testuser', password: 'test123' });
|
|
token = loginRes.body.token;
|
|
});
|
|
|
|
describe('GET /api/trash', () => {
|
|
it('should get trashed files', async () => {
|
|
const response = await request(app)
|
|
.get('/api/trash')
|
|
.set('Authorization', `Bearer ${token}`);
|
|
|
|
expect(response.status).toBe(200);
|
|
expect(response.body).toHaveProperty('files');
|
|
});
|
|
});
|
|
|
|
describe('POST /api/trash/:id/restore', () => {
|
|
it('should restore file', async () => {
|
|
const response = await request(app)
|
|
.post('/api/trash/1/restore')
|
|
.set('Authorization', `Bearer ${token}`);
|
|
|
|
expect(response.status).toBe(200);
|
|
});
|
|
});
|
|
|
|
describe('DELETE /api/trash/:id', () => {
|
|
it('should permanently delete file', async () => {
|
|
const response = await request(app)
|
|
.delete('/api/trash/1')
|
|
.set('Authorization', `Bearer ${token}`);
|
|
|
|
expect(response.status).toBe(200);
|
|
});
|
|
});
|
|
|
|
describe('POST /api/trash/empty', () => {
|
|
it('should empty trash', async () => {
|
|
const response = await request(app)
|
|
.post('/api/trash/empty')
|
|
.set('Authorization', `Bearer ${token}`);
|
|
|
|
expect(response.status).toBe(200);
|
|
});
|
|
});
|
|
});
|