小编akl*_*l47的帖子

剔除中间件

我正在尝试使用 Sinon 在快速路由中删除一些自定义中间件,但它没有按我预期的那样工作。我希望它不会记录“我正在验证...”,而是将“存根”记录到控制台。看起来 sinon 没有正确地剔除中间件。

测试/test.js

const chai = require('chai');
const chaiHttp = require('chai-http');
const sinon = require('sinon');
chai.use(chaiHttp);
const should = chai.should();
const auth = require('../auth');

const app = require('../app')

describe('My routes', function() {
    let checkTokenStub;
    beforeEach(()=>{
        checkTokenStub = sinon.stub(auth,'checkToken').callsFake(()=>{
            console.log('Stubbed');
        });;
    })
     it('returns hello', function(done) {
            chai.request(app)
                .get('/')
                .set('X-Auth-Token', 'xyz123')
                .end((err,res)=>{
                    res.text.should.be.eql('Hello')

                    done(err)
                })
        });
    });
Run Code Online (Sandbox Code Playgroud)

应用程序.js

var express = require('express'),
    app = express();
var router = express.Router();
app.use('/', require('./router'));

module.exports = app;
Run Code Online (Sandbox Code Playgroud)

认证.js

exports.checkToken = function(req, res, …
Run Code Online (Sandbox Code Playgroud)

node.js sinon chai chai-http

5
推荐指数
1
解决办法
1101
查看次数

标签 统计

chai ×1

chai-http ×1

node.js ×1

sinon ×1