0
好吧,所以這裏的細節:我有一個名爲FileA.js的文件。在FileA.js中,我有一個原型FileAObject.prototype,並具有相關函數funcAlpha()。因此,我們有這樣的事情:茉莉花和Spying/Mocking - JavaScript原型
文件= FILEA
function someFunction() {
SomeFunctionality...
}
function FileAObject() {
Object definition
}
FileAObject.prototype.funcAlpha = function() {
...
}
我想窺探funcAlpha()。據我所知,典型的模擬看起來是這樣的:
var FILE_A = $.import('path.to.file.directory', 'FileA');
<rest of code here>
spyOn(FILE_A, 'funcAlpha').andCallFake(function() {
return fakeResult;
}
<complete test>
現在當我運行我的測試時,這是行不通的。因爲funcAlpha是FileAObject的一個屬性,並且(顯然)不是FileA,所以該調用將不起作用。但是,我不知道如何獲得間諜的目標。我對JavaScript很陌生,這是一個有用的但相當混亂的問題子集。任何幫助將不勝感激!
您是否從模塊FileA導出您的'FileAObject'? –
@HamletHakobyan你是什麼意思? –
@HamletHakobyan我修改了上面的條目以更好地展示文件的結構 –