2016-07-06 22 views

Trả lời

2

phương pháp tĩnh:

sinon.stub(YourClass, 'yourClassMethod').callsFake(() => { 
    return {} 
}) 

không phương pháp tĩnh:

sinon.stub(YourClass.prototype, 'yourClassMethod').callsFake(() => { 
    return {} 
}) 
3

Sử dụng Sinon phiên bản 3.1.0 tôi có thể thử (stub) biến tĩnh tin sử dụng mã đưa ra dưới đây:

const YourClass = require('./lib/YourClass'); 
const mockStaticMethod = sinon.stub(YourClass, '_yourStaticMethod').returns('I am called'); 

Điều duy nhất bạn phải nhớ rằng tham số đầu tiên trong phương thức sinon.stub() phải là lớp chính nó. Nó không phải là đối tượng của lớp đó như const yourClassObject = new YourClass();. Lý do là bất kỳ đối tượng nào của lớp sẽ không cho phép bạn truy cập các phương thức tĩnh.

Các vấn đề liên quan