qt-public-ui
Version:
新设计规范下业务组件库
89 lines (88 loc) • 3.09 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _react = _interopRequireDefault(require("react"));
var _enzyme = require("enzyme");
var _testUtils = require("react-dom/test-utils");
var _index = _interopRequireDefault(require("../index"));
var stepBarContent = [{
key: 'step1',
icon: 'ant-like',
tips: 'step1-bababababablalalallalallallaa...',
title: '获客'
}, {
key: 'step2',
icon: 'ant-like',
tips: 'step2-bababababablalalallalallallaa...',
title: '激活'
}, {
key: 'step3',
icon: 'ant-like',
tips: 'step3-bababababablalalallalallallaa...',
title: '分享'
}, {
key: 'step4',
icon: 'ant-like',
tips: 'step4-bababababablalalallalallallaa...',
title: '转化',
disabled: true
}, {
key: 'step5',
icon: 'ant-like',
tips: 'step-5bababababablalalallalallallaa...',
title: '运营',
disabled: true
}];
describe('StepBar', function () {
function showPopover(wrapper, index) {
(0, _testUtils.act)(function () {
wrapper.find('.umui-step-bar-item').at(index).children().simulate('mouseenter');
jest.runAllTimers();
});
wrapper.update();
}
beforeEach(function () {
jest.useFakeTimers();
});
afterEach(function () {
jest.useRealTimers();
});
it('Show tips when hovering', /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
var wrapper;
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_index["default"], {
content: stepBarContent,
onClick: console.log
}));
showPopover(wrapper, 2);
expect(wrapper.find('.ant-tooltip-inner').text()).toBe('step3-bababababablalalallalallallaa...');
case 3:
case "end":
return _context.stop();
}
}, _callee);
})));
it('Click event is ok', function () {
var fn = jest.fn();
var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_index["default"], {
content: stepBarContent,
onClick: fn
}));
wrapper.find('.umui-step-bar-item').at(2).children().simulate('click');
expect(wrapper.find('.umui-step-bar-item').at(2).hasClass('umui-step-bar-active')).toBe(true);
expect(fn).toHaveBeenCalled();
});
it('Disable is ok', function () {
var fn = jest.fn();
var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_index["default"], {
content: stepBarContent,
onClick: fn
}));
wrapper.find('.umui-step-bar-item').at(4).children().simulate('click');
expect(wrapper.find('.umui-step-bar-item').at(4).hasClass('umui-step-bar-active')).toBe(false);
expect(fn).not.toHaveBeenCalled();
});
});