jjzjj

mocha-mongoose

全部标签

javascript - 修改 Mongoose 对象文字结果不起作用

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:Whycan’tyoumodifythedatareturnedbyaMongooseQuery(ex:findById)首先,我对mongoDB进行查询,获得了所有正确的结果,但只有对对象文字的小修改不起作用。我正在尝试做的是为评论添加新字段。我尝试使用DBref方法,但它不起作用,所以我现在进行了2次查询。varquery=Rss.findOne({_id:itemId});query.exec(function(err,feed){if(!err&&feed.comments){console.log(f

javascript - should.js 不会导致 mocha 测试失败

我对单元测试、mocha和should.js非常陌生,我正在尝试为返回promise的异步方法编写测试。这是我的测试代码:varshould=require("should"),tideRetriever=require("../tide-retriever"),moment=require("moment"),timeFormat="YYYY-MM-DD-HH:mm:ss",from=moment("2013-03-06T00:00:00",timeFormat),to=moment("2013-03-12T23:59:00",timeFormat),expectedCount=30

javascript - Nodejs Mongoose 未定义的保存模型不是函数

我使用NodejsExpress路由和Mongoose来保存数据。我毫无问题地完成了核心路由CRUD操作。但是,当我尝试对模型的一个字段执行一些操作,然后尝试使用model.save保存模型时,它说.save()方法:“undefinedisnotafunction”所以,这是代码。片段编号(1)工作得很好:router.put('/:myId',function(req,res,next){varourUpdateData=req.body;Model.findOne({myId:req.params.myId.toString()},function(err,foundModel)

javascript - 如何在 mocha 中使用嵌套测试执行使测试依赖

我有两个测试(A,B)的简单示例,其中B取决于正在运行的A。如果我使用的是Mocha,我可以在A中嵌套测试B:describe.only('AB:',function(){describe('A',function(){it('A1',function(){assert.equal(1,2);});describe('B',function(){it('B1',function(){assert.equal(1,1);});});});});但即使A失败,A和B也会运行。这与不使用嵌套有何不同?describe.only('AB:',function(){describe('A&B',

javascript - mocha done() 和 async await 的矛盾问题

我有以下测试用例:it("shouldpassthetest",asyncfunction(done){awaitasyncFunction();true.should.eq(true);done();});运行它断言:Error:Resolutionmethodisoverspecified.SpecifyacallbackorreturnaPromise;notboth.如果我删除done();语句,它断言:Error:Timeoutof2000msexceeded.Forasynctestsandhooks,ensure"done()"iscalled;ifreturningaP

javascript - 如何使用 Mocha 创建自定义记者

我确定我在这里遗漏了一些明显的东西!我已经阅读了此处的说明(https://github.com/visionmedia/mocha/wiki/Third-party-reporters),并获取了他们的代码并将其添加为一个新的节点模块(即它位于node_modules/my-reporter/reporter.js中)。但是,我似乎无法让mocha加载这位记者。我尝试了很多变体……mochaallTests.js-R./node_modules/my-reporter/reporter.jsmochaallTests.js-Rmy-reporter但没有任何作用:-(我可以在JS文件

javascript - Mongoose 不保存嵌套对象

我很困惑为什么Mongoose没有保存我的对象:varobjectToSave=newModelToSave({_id:req.params.id,Item:customObject.Item//doesn'tsavewithcustomObject.getItem()neither});但是正在保存这个;如下所示或使用硬编码值:varobjectToSave=newModelToSave({_id:req.params.id,Item:{SubItem:{property1:customObject.Item.SubItem.property1,//alsosaveswithcust

javascript - 模型的 findOne 方法上的 Mongoose TypeError

以下TypeError出现在一些旧代码中。TypeError:Object#hasnomethod'findOne'最近受影响的模型定义了两个新的静态方法,这些方法引用了外部模型。退出新的静态方法后,我能够确定根本原因是外部模型的require语句。该模式如下所示:varUserModel=require('./user');varGroupSchema=newSchema({name:String,users:[{type:Schema.ObjectId,ref:'UserModel'}],});GroupSchema.statics.findSomeUsers=function(g

javascript - Mocha/Chai 测试预期与实际对象数组

当两者都是对象数组时,断言预期结果与实际结果相匹配的最佳方法是什么?我的直接想法是使用Array原型(prototype)过滤器并检查交集是否与预期的大小相同,即:describe('select',function(){it("shouldreturnselectedcolumns",function(done){varquery="selectlunchTime,name";varactual=...resultsofthequery,anarrayofanonymousobjects...//expectedresultsvarexpected=[{"lunchTime":"12

javascript - 为什么我的 mocha/chai Error throw 测试失败了?

我有一个要测试的简单javascript包。我想检查是否抛出了错误,但是当我的测试运行并抛出错误时,测试被标记为失败。代码如下:varshould=require('chai').should(),expect=require('chai').expect();describe('#myTestSuite',function(){it('shouldcheckforTypeErrors',function(){//Pulledstraightfromthe'throw'sectionof//http://chaijs.com/api/bdd/varerr=newReferenceErr