2016-04-12 23 views
-4

Email not found davasını test etmek için mocha komut dosyası yazdım.Node.js mocha testing: AssertionError: false olması beklenen doğru

it('Returns "Email not found"', function(done) { 

    userModelMock.seedUsers(); 
    var testUser = userModelMock.getTestUser(), 
     nonExistentEmailAddress = '[email protected]'; 

    controller.resetPassword(nonExistentEmailAddress, function(err, apiResponse) { 

     if (err) return done(err); 
     should(apiResponse.success).equal(false); 
     should(apiResponse.extras.msg) 
      .equal(ApiMessages.EMAIL_NOT_FOUND); 
     done(); 
    }) 
}); 

ben terminalde mocha çalıştırdığınızda bu hata var: İşte kod

if (err) return done(err); 
     should(apiResponse.success).equal(false); 
     should(apiResponse.extras.msg) 
      .equal(ApiMessages.EMAIL_NOT_FOUND); 
     done(); 

nasıl düzeltebilirim: Bu hata aşağıdaki satırları oluyor

1) Returns "Email not found": 

    AssertionError: expected true to be false 
    + expected - actual 

    -true 
    +false 

    at Assertion.fail (D:\PhoneGap_Projects\login\www\server\node_modules\should\lib\assertion.js:92:17) 
    at Assertion.Object.defineProperty.value (D:\PhoneGap_Projects\login\www\server\node_modules\should\lib\assertion.js:164:1 
    at D:\PhoneGap_Projects\login\www\server\test\account-controller-test.js:211:37 
    at D:\PhoneGap_Projects\login\www\server\controllers\account.js:186:16 
    at UserMock.findOne (D:\PhoneGap_Projects\login\www\server\test\user-mock.js:65:12) 
    at AccountController.resetPassword (D:\PhoneGap_Projects\login\www\server\controllers\account.js:166:18) 
    at Context.<anonymous> (D:\PhoneGap_Projects\login\www\server\test\account-controller-test.js:208:16) 
    at callFnAsync (C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runnable.js:338:8) 
    at Test.Runnable.run (C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runnable.js:290:7) 
    at Runner.runTest (C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runner.js:422:10) 
    at C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runner.js:533:12 
    at next (C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runner.js:342:14) 
    at C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runner.js:352:7 
    at next (C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runner.js:284:14) 
    at C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runner.js:315:7 
    at done (C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runnable.js:276:5) 
    at C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runnable.js:349:7 
    at Context.<anonymous> (D:\PhoneGap_Projects\login\www\server\test\account-controller-test.js:25:5) 
    at callFnAsync (C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runnable.js:338:8) 
    at Hook.Runnable.run (C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runnable.js:290:7) 
    at next (C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runner.js:298:10) 
    at Immediate._onImmediate (C:\Users\Ajay Kulkarni-enEXL\AppData\Roaming\npm\node_modules\mocha\lib\runner.js:320:5) 

bu hata?

+0

neden düşürüldü? –

cevap

0

Bu bir hata değil. Testinizde, apiResponse.success'un false olmasını beklediğinizi yazdınız. Ama api'niz true'u geri gönderir, böylece test başarısız olur. Bu nedenle testiniz doğru şekilde çalışıyor, ancak api'niz success'u true'a göndermelidir veya testiniz success'un true olmasını beklemelidir.

İlgili konular