72 lines
2.1 KiB
React
72 lines
2.1 KiB
React
|
import React from 'react';
|
||
|
import {mountWithIntl} from '../../helpers/intl-helpers.jsx';
|
||
|
import MonitorList from '../../../src/components/monitor-list/monitor-list.jsx';
|
||
|
import {OrderedMap} from 'immutable';
|
||
|
import configureStore from 'redux-mock-store';
|
||
|
import {Provider} from 'react-redux';
|
||
|
|
||
|
describe('MonitorListComponent', () => {
|
||
|
const store = configureStore()({scratchGui: {
|
||
|
monitorLayout: {
|
||
|
monitors: {},
|
||
|
savedMonitorPositions: {}
|
||
|
},
|
||
|
vm: {
|
||
|
runtime: {
|
||
|
requestUpdateMonitor: () => {},
|
||
|
getLabelForOpcode: () => ''
|
||
|
}
|
||
|
}
|
||
|
}});
|
||
|
const draggable = false;
|
||
|
const onMonitorChange = jest.fn();
|
||
|
const stageSize = {
|
||
|
width: 100,
|
||
|
height: 100,
|
||
|
widthDefault: 100,
|
||
|
heightDefault: 100
|
||
|
};
|
||
|
|
||
|
let monitors = OrderedMap({});
|
||
|
|
||
|
// Wrap this in a function so it gets test specific states and can be reused.
|
||
|
const getComponent = function () {
|
||
|
return (
|
||
|
<Provider store={store}>
|
||
|
<MonitorList
|
||
|
draggable={draggable}
|
||
|
monitors={monitors}
|
||
|
stageSize={stageSize}
|
||
|
onMonitorChange={onMonitorChange}
|
||
|
/>
|
||
|
</Provider>
|
||
|
);
|
||
|
};
|
||
|
|
||
|
test('it renders the correct step size for discrete sliders', () => {
|
||
|
monitors = OrderedMap({
|
||
|
id1: {
|
||
|
visible: true,
|
||
|
mode: 'slider',
|
||
|
isDiscrete: true
|
||
|
}
|
||
|
});
|
||
|
const wrapper = mountWithIntl(getComponent());
|
||
|
const input = wrapper.find('input');
|
||
|
expect(input.props().step).toBe(1);
|
||
|
});
|
||
|
|
||
|
test('it renders the correct step size for non-discrete sliders', () => {
|
||
|
monitors = OrderedMap({
|
||
|
id1: {
|
||
|
visible: true,
|
||
|
mode: 'slider',
|
||
|
isDiscrete: false
|
||
|
}
|
||
|
});
|
||
|
const wrapper = mountWithIntl(getComponent());
|
||
|
const input = wrapper.find('input');
|
||
|
expect(input.props().step).toBe(0.01);
|
||
|
});
|
||
|
});
|