diff --git a/platform/commonUI/browse/test/suite.json b/platform/commonUI/browse/test/suite.json index e36f345caa..350710df76 100644 --- a/platform/commonUI/browse/test/suite.json +++ b/platform/commonUI/browse/test/suite.json @@ -10,5 +10,6 @@ "navigation/NavigateAction", "navigation/NavigationService", "windowing/FullscreenAction", + "windowing/NewWindowAction", "windowing/WindowTitler" ] diff --git a/platform/commonUI/browse/test/windowing/NewWindowActionSpec.js b/platform/commonUI/browse/test/windowing/NewWindowActionSpec.js new file mode 100644 index 0000000000..327096e8a3 --- /dev/null +++ b/platform/commonUI/browse/test/windowing/NewWindowActionSpec.js @@ -0,0 +1,48 @@ +/***************************************************************************** + * Open MCT Web, Copyright (c) 2014-2015, United States Government + * as represented by the Administrator of the National Aeronautics and Space + * Administration. All rights reserved. + * + * Open MCT Web is licensed under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0. + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + * + * Open MCT Web includes source code licensed under additional open source + * licenses. See the Open Source Licenses file (LICENSES.md) included with + * this source code distribution or the Licensing information page available + * at runtime from the About dialog for additional information. + *****************************************************************************/ +/*global define,Promise,describe,it,expect,beforeEach,waitsFor,jasmine,afterEach,window*/ + +define( + ["../../src/windowing/NewWindowAction"], + function (NewWindowAction) { + "use strict"; + + describe("The new window action", function () { + var action, + mockWindow, + mockCurrentUrl; + + beforeEach(function () { + mockWindow = jasmine.createSpyObj("$window", ["open", "location"]); + mockWindow.location.href = "http://www.mockUrl.com"; + action = new NewWindowAction(mockWindow); + + }); + + it("New window is opened", function () { + action.perform(); + expect(mockWindow.open).toHaveBeenCalledWith("http://www.mockUrl.com"); + }); + + }); + } +); \ No newline at end of file