Global and Local Clear (#2418)
* first proto of global clear, working on tables * global clear works on plots * styling * Status bar migration to top of layout, WIP - Refine and remove legacy styles for Indicators; - Significant cleanup in Indicator markup; - Remove unnecessary wrapper component StatusBar.vue; - Move collapse-button styles to a more general location in _controls .scss; - New hasMenu mixin to allow easier application of disclosure control styling; * Status bar migration to top of layout, WIP - Refine styles and markup for Indicators; - Better separation of styles for clickable and non-clickable Indicators; * Status bar migration to top of layout, WIP - Added tracking style to indicator-template; - Moved click action to button in label of globalClearIndicator; - Removed unnecessary markup in Indicators.vue; - Commented out __head collapse button for now in Layout.vue; * Status Bar Migration WIP - Significant progress styling Indicators and their hover bubbles; - Pull back from clickable Indicators to hover approach; - Better theme-based constants for Indicator menu-related colors; * Status Bar Migration WIP - Significant refactor of label element naming in multiple indicator markup files; - Refactor label-related CSS; - Better class naming: no-collapse > no-minify; - Refactor example *-launch files to use buttons instead of <a> tags; - Significant progress on expanding shell head and button styling; * Status Bar Migration WIP - Cleanups, sanding on Indicator CSS; - Added local storage retention for head expanded state; - Adjust dark theme colors for $colorWarningHi for better legibility; - Other minor tweaks and fixes; * Status Bar Migration WIP - Suppress background in Indicators; - Restore Snow as default theme; * add a local clear action, rename plugin * objectViews extends eventemitter, table view provider provides an onClearData function that is called from ObjectView when clear event is emitted. TODO - support plots * add support for plots via legacy view provider * add test for clearDataAction * remove focus from test file * install the following plugins by default: Import Export Folder View Tabs View Flexible Layout LAD Table Go To Original Action * update test to include plugin level tests * remove focus from unit test
This commit is contained in:
committed by
Andrew Henry
parent
9517c1f2cd
commit
362e565a09
62
src/plugins/clearData/test/clearDataActionSpec.js
Normal file
62
src/plugins/clearData/test/clearDataActionSpec.js
Normal file
@@ -0,0 +1,62 @@
|
||||
/*****************************************************************************
|
||||
* Open MCT, Copyright (c) 2014-2018, United States Government
|
||||
* as represented by the Administrator of the National Aeronautics and Space
|
||||
* Administration. All rights reserved.
|
||||
*
|
||||
* Open MCT 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 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.
|
||||
*****************************************************************************/
|
||||
|
||||
import ClearDataActionPlugin from '../plugin.js';
|
||||
import ClearDataAction from '../clearDataAction.js';
|
||||
|
||||
describe('When the Clear Data Plugin is installed,', function () {
|
||||
var mockObjectViews = jasmine.createSpyObj('objectViews', ['emit']),
|
||||
mockIndicatorProvider = jasmine.createSpyObj('indicators', ['add']),
|
||||
mockContextMenuProvider = jasmine.createSpyObj('contextMenu', ['registerAction']),
|
||||
openmct = {
|
||||
objectViews: mockObjectViews,
|
||||
indicators: mockIndicatorProvider,
|
||||
contextMenu: mockContextMenuProvider,
|
||||
install: function (plugin) {
|
||||
plugin(this);
|
||||
}
|
||||
},
|
||||
mockObjectPath = [
|
||||
{name: 'mockObject1'},
|
||||
{name: 'mockObject2'}
|
||||
];
|
||||
|
||||
it('Global Clear Indicator is installed', function () {
|
||||
openmct.install(ClearDataActionPlugin([]));
|
||||
|
||||
expect(mockIndicatorProvider.add).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('Clear Data context menu action is installed', function () {
|
||||
openmct.install(ClearDataActionPlugin([]));
|
||||
|
||||
expect(mockContextMenuProvider.registerAction).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('clear data action emits a clearData event when invoked', function () {
|
||||
let action = new ClearDataAction(openmct);
|
||||
|
||||
action.invoke(mockObjectPath);
|
||||
|
||||
expect(mockObjectViews.emit).toHaveBeenCalledWith('clearData', mockObjectPath[0]);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user