Как мне высмеять объект окна? Я занимаюсь расширением firefox, и я хочу использовать jasmine для тестирования javascript.
В моем javascript я
function submit() {
...
var url = window.arguments[0];
...
}
Очевидно, что я должен mock window.arguments [0] в жасмине, потому что этот объект не существует, если не передается какой-либо параметр из window.openDialog
Это моя попытка издеваться над этим с помощью "с"
it("should submit to server", function() {
var localContext = {
"window": {
arguments: ["http://localhost"]
}
}
with(localContext);
Но я все еще получаю эту ошибку TypeError: Не могу прочитать свойство '0' из undefined, он, как при запуске теста window.arguments [0], будет уничтожен реальным окном, потому что если я делаю
window.arguments[0]
внутри теста, он правильно печатает "http://localhost". но когда дело доходит до метода submit(), он показывает ошибку, что window.argument undefined.