|
@@ -2,19 +2,26 @@ import React from 'react';
|
|
|
import { shallow } from 'enzyme';
|
|
import { shallow } from 'enzyme';
|
|
|
import { DashboardRow } from '../dashgrid/DashboardRow';
|
|
import { DashboardRow } from '../dashgrid/DashboardRow';
|
|
|
import { PanelModel } from '../panel_model';
|
|
import { PanelModel } from '../panel_model';
|
|
|
|
|
+import config from '../../../core/config';
|
|
|
|
|
|
|
|
describe('DashboardRow', () => {
|
|
describe('DashboardRow', () => {
|
|
|
let wrapper, panel, getPanelContainer, dashboardMock;
|
|
let wrapper, panel, getPanelContainer, dashboardMock;
|
|
|
|
|
|
|
|
beforeEach(() => {
|
|
beforeEach(() => {
|
|
|
- dashboardMock = {toggleRow: jest.fn()};
|
|
|
|
|
|
|
+ dashboardMock = { toggleRow: jest.fn() };
|
|
|
|
|
+
|
|
|
|
|
+ config.bootData = {
|
|
|
|
|
+ user: {
|
|
|
|
|
+ orgRole: 'Admin',
|
|
|
|
|
+ },
|
|
|
|
|
+ };
|
|
|
|
|
|
|
|
getPanelContainer = jest.fn().mockReturnValue({
|
|
getPanelContainer = jest.fn().mockReturnValue({
|
|
|
getDashboard: jest.fn().mockReturnValue(dashboardMock),
|
|
getDashboard: jest.fn().mockReturnValue(dashboardMock),
|
|
|
- getPanelLoader: jest.fn()
|
|
|
|
|
|
|
+ getPanelLoader: jest.fn(),
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
- panel = new PanelModel({collapsed: false});
|
|
|
|
|
|
|
+ panel = new PanelModel({ collapsed: false });
|
|
|
wrapper = shallow(<DashboardRow panel={panel} getPanelContainer={getPanelContainer} />);
|
|
wrapper = shallow(<DashboardRow panel={panel} getPanelContainer={getPanelContainer} />);
|
|
|
});
|
|
});
|
|
|
|
|
|
|
@@ -30,4 +37,14 @@ describe('DashboardRow', () => {
|
|
|
expect(dashboardMock.toggleRow.mock.calls).toHaveLength(1);
|
|
expect(dashboardMock.toggleRow.mock.calls).toHaveLength(1);
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
|
|
+ it('should have two actions as admin', () => {
|
|
|
|
|
+ expect(wrapper.find('.dashboard-row__actions .pointer')).toHaveLength(2);
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
|
|
+ it('should have zero actions as viewer', () => {
|
|
|
|
|
+ config.bootData.user.orgRole = 'Viewer';
|
|
|
|
|
+ panel = new PanelModel({ collapsed: false });
|
|
|
|
|
+ wrapper = shallow(<DashboardRow panel={panel} getPanelContainer={getPanelContainer} />);
|
|
|
|
|
+ expect(wrapper.find('.dashboard-row__actions .pointer')).toHaveLength(0);
|
|
|
|
|
+ });
|
|
|
});
|
|
});
|