微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

诗浓间谍无法窥探原型功能

如何解决诗浓间谍无法窥探原型功能

我正在尝试编写一个测试来确认是否正在调用函数。我的班级是这样的

const MyLogger = require('my-logging').Logger;

function MyDriver(opts) {
    // some code here
}

MyDriver.prototype.log = function (message) {
    // some code here
     myLogger = new MyLogger();
     myLogger.send();
}

我正在尝试编写一个测试来检查是否正在调用 send 上的 MyLogger 函数

我的测试是这样的:

const MyDriver = require('mydriver');
const MyLogger = require('my-logging').Logger;
const { spy } = require('sinon');
const { expect } = require('chai');

describe('MyDriver',() => {
    let myLoggerSpy;
    before('prepare driver',() => {
        driver = new MyDriver();

        // deFinition of send method is via prototype,like: `Logger.prototype.send = function(context,callback)...` 
        myLoggerSpy = spy(MyLogger.prototype,'send');
    });
    it('test driver',() => {
        driver.log(level,message,Meta);

        expect(myLoggerSpy.called).to.equal(true);
    });

我对其进行了测试,可以看到调用了 send 方法,但测试一直失败。

有人可以建议这里有什么问题吗?

谢谢!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?