Ich bekomme folgenden Fehler beim Versuch, Karma Tests spec in meiner App zu starten.
Error: [$injector:modulerr] Failed to instantiate module adf.widget.tabularWidget due to:
Error: Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.
at Error (native)
at C:/Users/dell%20pc/Documents/Work/Client/widgets/TabularWidget/src/ta
bularWidget.js:22:43
at Object.invoke (C:/Users/dell%20pc/Documents/Work/Client/bower_compone...
Das Problem hier ist, dass, wenn ich die Tests ausführen, es nicht die Fenstereigenschaft verspotten. Folgende ist die Datei, in der dieses Problem auftritt ..
'use strict';
(function (windows, angular, $, _) {
angular.module('adf.widget.tabularWidget')
.config(function (dashboardProvider) {
//more code
//issue line
var widgetDefsApiUrl = window.atob(window.api) +
"Widget/definitions?access_token=" + window.atob(window.acstkn);
});
})(window, angular, $, _);
Aber wenn ich jeden Test kommentieren Sie nur diese Zeile Fällen läuft in Ordnung ohne Problem. Also, wenn ich die widgetDefsApiUrl
irgendwie verspotten und es in meine Testfälle injizieren kann, wäre mein Problem gelöst. Aber ich bin nicht sicher, wie es geht. Kann mir bitte jemand in die richtige Richtung zeigen?
EDIT: Ich habe das Problem isoliert. Das Problem ist, dass window.api
ist hier undefiniert daher der window.atob()
gibt den Fehler. Wie würde ich dieses Problem überwinden?