3 changed files with 460 additions and 112 deletions
@ -0,0 +1,224 @@ |
|||
const request = require('supertest'); |
|||
const expect = require('chai').expect; |
|||
const app = require('../Reject.js'); |
|||
|
|||
// 测试API端点
|
|||
describe('API Endpoints', () => { |
|||
// 测试数据库连接
|
|||
describe('GET /api/test-db', () => { |
|||
it('should return database connection status', async () => { |
|||
const res = await request(app) |
|||
.get('/api/test-db') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(200); |
|||
expect(res.body).to.be.an('object'); |
|||
expect(res.body).to.have.property('success'); |
|||
}); |
|||
}); |
|||
|
|||
// 测试获取货源列表
|
|||
describe('GET /api/supplies', () => { |
|||
it('should return supplies list', async () => { |
|||
const res = await request(app) |
|||
.get('/api/supplies') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(200); |
|||
expect(res.body).to.be.an('object'); |
|||
expect(res.body).to.have.property('success'); |
|||
expect(res.body).to.have.property('data'); |
|||
}); |
|||
}); |
|||
|
|||
// 测试获取供应商列表
|
|||
describe('GET /api/suppliers', () => { |
|||
it('should return suppliers list', async () => { |
|||
const res = await request(app) |
|||
.get('/api/suppliers') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(200); |
|||
expect(res.body).to.be.an('object'); |
|||
expect(res.body).to.have.property('success'); |
|||
expect(res.body).to.have.property('data'); |
|||
}); |
|||
}); |
|||
|
|||
// 测试获取联系人列表
|
|||
describe('GET /api/contacts', () => { |
|||
it('should return contacts list', async () => { |
|||
const res = await request(app) |
|||
.get('/api/contacts') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(200); |
|||
expect(res.body).to.be.an('object'); |
|||
expect(res.body).to.have.property('success'); |
|||
expect(res.body).to.have.property('data'); |
|||
}); |
|||
}); |
|||
|
|||
// 测试获取审核失败原因
|
|||
describe('GET /api/supplies/:id/reject-reason', () => { |
|||
it('should return reject reason for supply', async () => { |
|||
// 首先获取一个货源ID
|
|||
const suppliesRes = await request(app) |
|||
.get('/api/supplies') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
if (suppliesRes.body.data && suppliesRes.body.data.length > 0) { |
|||
const supplyId = suppliesRes.body.data[0].id; |
|||
const res = await request(app) |
|||
.get(`/api/supplies/${supplyId}/reject-reason`) |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(200); |
|||
expect(res.body).to.be.an('object'); |
|||
expect(res.body).to.have.property('success'); |
|||
} |
|||
}); |
|||
}); |
|||
|
|||
// 测试获取拒绝审核API路由注册
|
|||
describe('GET /api/supplies/:id/reject', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/supplies/1/reject') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
|
|||
// 测试获取供应商审核通过API路由注册
|
|||
describe('GET /api/suppliers/:id/approve', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/suppliers/1/approve') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
|
|||
// 测试获取供应商审核拒绝API路由注册
|
|||
describe('GET /api/suppliers/:id/reject', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/suppliers/1/reject') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
|
|||
// 测试获取供应商开始合作API路由注册
|
|||
describe('GET /api/suppliers/:id/cooperate', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/suppliers/1/cooperate') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
|
|||
// 测试获取供应商终止合作API路由注册
|
|||
describe('GET /api/suppliers/:id/terminate', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/suppliers/1/terminate') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
|
|||
// 测试获取创建货源API路由注册
|
|||
describe('GET /api/supplies/create', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/supplies/create') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
|
|||
// 测试获取图片上传API路由注册
|
|||
describe('GET /api/upload-image', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/upload-image') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
|
|||
// 测试获取下架货源API路由注册
|
|||
describe('GET /api/supplies/:id/unpublish', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/supplies/1/unpublish') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
|
|||
// 测试获取上架货源API路由注册
|
|||
describe('GET /api/supplies/:id/publish', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/supplies/1/publish') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
|
|||
// 测试获取删除货源API路由注册
|
|||
describe('GET /api/supplies/:id/delete', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/supplies/1/delete') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
|
|||
// 测试获取更新货源状态API路由注册
|
|||
describe('GET /api/supplies/:id', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/supplies/1') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
|
|||
// 测试获取编辑货源API路由注册
|
|||
describe('GET /api/supplies/:id/edit', () => { |
|||
it('should return method not allowed for GET', async () => { |
|||
const res = await request(app) |
|||
.get('/api/supplies/1/edit') |
|||
.set('Accept', 'application/json'); |
|||
|
|||
expect(res.status).to.equal(405); // Method Not Allowed
|
|||
}); |
|||
}); |
|||
}); |
|||
|
|||
// 测试服务器启动
|
|||
describe('Server', () => { |
|||
it('should be listening on port 3000', () => { |
|||
// 这个测试主要验证app对象是否被正确导出
|
|||
expect(app).to.be.an('object'); |
|||
expect(app).to.have.property('listen'); |
|||
expect(app.listen).to.be.a('function'); |
|||
}); |
|||
}); |
|||
Loading…
Reference in new issue