Sha256: c2195ea991f3308f2d1399a8681727d556d2330de50e9fc3a84a6e8634a38421
Contents?: true
Size: 1.78 KB
Versions: 9
Compression:
Stored size: 1.78 KB
Contents
import { testActionSnapshotWithFixtures } from '@theforeman/test'; import API from 'foremanReact/API'; import { getInsightsSyncSettings, setInsightsSyncEnabled, } from '../InsightsSettingsActions'; import { rhCloudStateWrapper } from '../../../../ForemanRhCloudTestHelpers'; const serverMock = { data: { insightsSyncEnabled: true }, }; jest.mock('foremanReact/API'); API.get.mockImplementation(() => serverMock); API.patch.mockImplementation(() => serverMock); const runWithGetState = (state, action, params) => dispatch => { const getState = () => rhCloudStateWrapper({ InsightsCloudSync: state }); action(params)(dispatch, getState); }; const fixtures = { 'should generate INSIGHTS_SYNC_SETTINGS_GET_SUCCESS action': () => runWithGetState({ settings: {} }, getInsightsSyncSettings, {}), 'should handle getInsightsSyncSettings with error ': () => { API.get.mockImplementationOnce(() => Promise.reject(new Error('Network error!')) ); return runWithGetState({ settings: {} }, getInsightsSyncSettings, {}); }, 'should generate INSIGHTS_SYNC_SETTING_SET action': () => runWithGetState( { settings: { insightsSyncEnabled: false } }, setInsightsSyncEnabled, true ), 'should handle setInsightsSyncEnabled with error ': () => { API.patch.mockImplementationOnce(() => Promise.reject(new Error('Network error!')) ); return runWithGetState( { settings: { insightsSyncEnabled: false } }, setInsightsSyncEnabled, true ); }, }; describe('InsightsSettings actions', () => { const { location } = window; beforeAll(() => { delete window.location; window.location = { href: jest.fn() }; }); afterAll(() => { window.location = location; }); return testActionSnapshotWithFixtures(fixtures); });
Version data entries
9 entries across 9 versions & 1 rubygems