Jus*_*tin 5 jestjs next.js react-testing-library
我的 api 文件夹中有一个函数,可以搜索一组服务并根据 slug 返回单个服务。
api函数是:
import {services} from '../../../public/data/service.js'
export default async function getSingleService (req, res) {
const serviceId = req.query.serviceID
const result = services.filter((each) => each.url === serviceId )
if(result.length > 0) {
return res.status(200).json(result[0])
} else {
res.status(404).json({message: 'Service not found'})
}
}
Run Code Online (Sandbox Code Playgroud)
我如何为这个函数编写测试?我刚开始开玩笑,任何帮助都会很好。
小智 7
不确定您是否仍在寻找答案,但这似乎对我有用。它适用于默认的“hello”路由。我在这里找到的
import { createMocks } from 'node-mocks-http';
import handler from '../../../pages/api/hello';
describe('/api/hello', () => {
test('should returna an object with a name', async () => {
const { req, res } = createMocks({
method: 'GET'
});
await handler(req, res);
expect(res._getStatusCode()).toBe(
200
);
expect(
JSON.parse(res._getData())
).toHaveProperty('name');
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3347 次 |
| 最近记录: |