@enact/ui
Version:
A collection of simplified unstyled cross-platform UI components for Enact
44 lines (43 loc) • 1.73 kB
JavaScript
;
require("@testing-library/jest-dom");
var _react = require("@testing-library/react");
var _ResolutionDecorator = _interopRequireDefault(require("../ResolutionDecorator"));
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
describe('ResolutionDecorator Specs', function () {
test('should apply resolution classes to the wrapped component', function () {
var Component = (0, _ResolutionDecorator["default"])('div');
(0, _react.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(Component, {
"data-testid": "component"
}));
var div = _react.screen.getByTestId('component').className;
var expected = true;
var actual = div.includes('enact-res-standard') && (div.includes('enact-orientation-landscape') || div.includes('enact-orientation-portrait'));
expect(actual).toBe(expected);
});
test('should allow custom screen types', function () {
var name = 'mhd';
var screens = [{
name: name,
pxPerRem: 36,
width: 1440,
height: 920,
aspectRatioName: 'hdtv',
base: true
}];
var Component = (0, _ResolutionDecorator["default"])({
screenTypes: screens
}, 'div');
(0, _react.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(Component, {
"data-testid": "component"
}));
var div = _react.screen.getByTestId('component');
expect(div).toHaveClass('enact-res-mhd');
});
test.skip('should update the resolution when the screen is resized', function () {
// TODO: write a test
});
test.skip('should not allow dynamic resolution updates when \'dynamic\' config option is false', function () {
// TODO: write a test
});
});