Dies ist meine Funktion
$scope.buildForm = function (majorObjectId, name) {
$window.open("/FormBuilder/Index#/" + $scope.currentAppId + "/form/" + majorObjectId + "/" + name);
};
Das ist mein Jasmin Test spec ist
it('should open new window for buildForm and with expected id', function() {
scope.majorObjectId = mockObjectId;
scope.currentAppId = mockApplicationId;
var name = "DepartmentMajor";
scope.buildForm(mockObjectId, name);
scope.$digest();
expect(window.open).toHaveBeenCalled();
spyOn(window, 'open');
spyOn(window, 'open').and.returnValue("/FormBuilder/Index#/" + scope.currentAppId + "/form/" + scope.majorObjectId + "/" + name);
});
aber wenn ich versuche, dies zu laufen ist eine neue Registerkarte öffnen und Ich möchte nicht, dass dies geschieht, ich möchte nur überprüfen, ob die angegebenen returnValues nicht vorhanden sind !!
sein, es '$ Fenster sein sollte 'Ich glaube an Ihre Tests, Inject' $ window' – Chandermani
Ich habe $ window injiziert, aber selbst nach dem Ausführen wird eine neue Registerkarte geöffnet –