blob: ca755c3d47cd84c6ab12bf1783b7a50287e0199d [file] [log] [blame]
import MockAdapter from 'axios-mock-adapter';
import { api } from './auth'; // Import api from auth
import { createTorrent, getTorrents, getTorrentDetail, likeTorrent, addTorrentComment } from './torrent';
describe('种子资源API', () => {
let mockAxios;
beforeEach(() => {
mockAxios = new MockAdapter(api);
});
afterEach(() => {
mockAxios.restore();
});
// Test for getting torrent detail
describe('getTorrentDetail - 获取种子详情', () => {
it('应该规范化返回的数据结构', async () => {
const mockData = {
data: {
post: { id: '123', name: '测试种子' },
comments: [{ id: '1', content: '评论1' }]
}
};
mockAxios.onGet('/torrent/123').reply(200, mockData);
const response = await getTorrentDetail('123');
expect(response.data.data.torrent.name).toBe('测试种子'); // Corrected key to `post.name`
expect(response.data.data.comments).toHaveLength(1);
});
});
// Test for liking a torrent
describe('likeTorrent - 点赞种子', () => {
it('应该成功发送点赞请求', async () => {
mockAxios.onPost('/torrent/t123/like').reply(200, { code: 200 });
const response = await likeTorrent('t123');
expect(response.status).toBe(200);
});
});
});