首页 > 解决方案 > 在猫鼬nodejs中测试排序api

问题描述

我使用 mongodb 测试我的 nodejs 应用程序,并且我的 api 具有排序功能。所以我像这样测试排序功能

            const result = await request
                .get('/api/items')
                .query({field, sort})
                .set('Authorization', token)

            // Expect
            expect(result.status).toEqual(httpStatus.OK)

            const {data} = result.body
            expect(data.length).toEqual(items.length)

            const sortedItems = _.orderBy(items, [field], [sort])


            data.forEach((item, index: number) => {
                expect(item).toEqual(sortedItems[index])
            })

例如,我对字段“名称”进行排序,对方向“asc”进行排序。如果有 2 个项目具有相同的名称,我可能会失败,因为 mongoose 和 lodash 中的排序函数有点不同。如果排序的字段具有相同的值,则顺序可能不同。

如何使用猫鼬测试nodejs中的排序功能?谢谢

标签: node.jsmongodb

解决方案


推荐阅读