UNPKG

adui

Version:

<div> <img src="https://wxa.wxs.qq.com/mpweb/delivery/legacy/wxadtouch/upload/t1/od834zef_52939fc6.png" style="margin:40px 0 0 -8px; background-color: #fcfcfc; box-shadow: none;" /> </div>

135 lines (134 loc) 24.1 kB
"use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } var React = _interopRequireWildcard(require("react")); var _enzyme = require("enzyme"); var _reactTestRenderer = _interopRequireDefault(require("react-test-renderer")); var _ = _interopRequireDefault(require("..")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; } function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } window.ResizeObserver = window.ResizeObserver || jest.fn().mockImplementation(function () { return { disconnect: jest.fn(), observe: jest.fn(), unobserve: jest.fn() }; }); var Column = _["default"].Column; var dataSource = [{ key: 0, one: "第一项" }, { key: 1, one: "第二项" }, { key: 2, one: "第三项" }]; var ExpandMounter = function (_React$Component) { function ExpandMounter() { var _this; _classCallCheck(this, ExpandMounter); for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } _this = _callSuper(this, ExpandMounter, [].concat(args)); _this.state = { keys: null }; return _this; } _inherits(ExpandMounter, _React$Component); return _createClass(ExpandMounter, [{ key: "render", value: function render() { var _this2 = this; var keys = this.state.keys; return React.createElement(_["default"], { dataSource: dataSource, expandedRowKeys: keys, onExpandChange: function onExpandChange(argKeys) { return _this2.setState({ keys: argKeys }); } }, React.createElement(Column, { title: "one", dataIndex: "one" })); } }]); }(React.Component); describe("base", function () { it("快照核对", function () { var wrapper = _reactTestRenderer["default"].create(React.createElement(_["default"], { dataSource: dataSource, defaultExpandedRowKeys: [1], onExpandChange: function onExpandChange() {} }, React.createElement(Column, { title: "one", dataIndex: "one" }))); expect(wrapper).toMatchSnapshot(); }); it("是否能内部驱动", function () { var onExpandChange = jest.fn(); var wrapper = (0, _enzyme.mount)(React.createElement(_["default"], { dataSource: dataSource, onExpandChange: onExpandChange, defaultExpandedRowKeys: [1] }, React.createElement(Column, { title: "one", dataIndex: "one" }))); expect(wrapper.find("Table").state().expandedRowKeys).toEqual([1]); wrapper.find("Icon").at(0).simulate("click"); expect(wrapper.find("Table").state().expandedRowKeys).toEqual([1, 0]); }); it("是否能外部控制", function () { var onExpandChange = jest.fn(); var wrapper0 = (0, _enzyme.mount)(React.createElement(_["default"], { dataSource: dataSource, onExpandChange: onExpandChange, expandedRowKeys: [1] }, React.createElement(Column, { title: "one", dataIndex: "one" }))); expect(wrapper0.find("Table").state().expandedRowKeys).toEqual([1]); wrapper0.find("Icon").at(0).simulate("click"); expect(wrapper0.find("Table").state().expandedRowKeys).toEqual([1]); var wrapper1 = (0, _enzyme.mount)(React.createElement(ExpandMounter, null)); wrapper1.find("Icon").at(0).simulate("click"); expect(wrapper1.find("Table").state().expandedRowKeys).toEqual([0]); wrapper1.find("Icon").at(0).simulate("click"); expect(wrapper1.find("Table").state().expandedRowKeys).toEqual([]); }); it("是否支持 expandOnRowClick", function () { var onExpandChange = jest.fn(); var wrapper = (0, _enzyme.mount)(React.createElement(_["default"], { dataSource: dataSource, defaultExpandedRowKeys: [1], onExpandChange: onExpandChange, expandOnRowClick: true }, React.createElement(Column, { title: "one", dataIndex: "one" }))); wrapper.find('[role="row"]').at(0).simulate("click"); expect(onExpandChange).toHaveBeenCalledWith([1, 0]); }); }); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwicmVxdWlyZSIsIl9lbnp5bWUiLCJfcmVhY3RUZXN0UmVuZGVyZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiXyIsImUiLCJfX2VzTW9kdWxlIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiV2Vha01hcCIsInIiLCJ0IiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIl9jbGFzc0NhbGxDaGVjayIsIlR5cGVFcnJvciIsIl9kZWZpbmVQcm9wZXJ0aWVzIiwibGVuZ3RoIiwibyIsImVudW1lcmFibGUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsIl90b1Byb3BlcnR5S2V5Iiwia2V5IiwiX2NyZWF0ZUNsYXNzIiwicHJvdG90eXBlIiwiX3RvUHJpbWl0aXZlIiwiU3ltYm9sIiwidG9QcmltaXRpdmUiLCJTdHJpbmciLCJOdW1iZXIiLCJfY2FsbFN1cGVyIiwiX2dldFByb3RvdHlwZU9mIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4iLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiUmVmbGVjdCIsImNvbnN0cnVjdCIsImNvbnN0cnVjdG9yIiwiYXBwbHkiLCJfYXNzZXJ0VGhpc0luaXRpYWxpemVkIiwiUmVmZXJlbmNlRXJyb3IiLCJCb29sZWFuIiwidmFsdWVPZiIsInNldFByb3RvdHlwZU9mIiwiZ2V0UHJvdG90eXBlT2YiLCJiaW5kIiwiX2luaGVyaXRzIiwiY3JlYXRlIiwidmFsdWUiLCJfc2V0UHJvdG90eXBlT2YiLCJ3aW5kb3ciLCJSZXNpemVPYnNlcnZlciIsImplc3QiLCJmbiIsIm1vY2tJbXBsZW1lbnRhdGlvbiIsImRpc2Nvbm5lY3QiLCJvYnNlcnZlIiwidW5vYnNlcnZlIiwiQ29sdW1uIiwiVGFibGUiLCJkYXRhU291cmNlIiwib25lIiwiRXhwYW5kTW91bnRlciIsIl9SZWFjdCRDb21wb25lbnQiLCJfdGhpcyIsIl9sZW4iLCJhcmd1bWVudHMiLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY29uY2F0Iiwic3RhdGUiLCJrZXlzIiwicmVuZGVyIiwiX3RoaXMyIiwiY3JlYXRlRWxlbWVudCIsImV4cGFuZGVkUm93S2V5cyIsIm9uRXhwYW5kQ2hhbmdlIiwiYXJnS2V5cyIsInNldFN0YXRlIiwidGl0bGUiLCJkYXRhSW5kZXgiLCJDb21wb25lbnQiLCJkZXNjcmliZSIsIml0Iiwid3JhcHBlciIsIlRlc3RSZW5kZXJlciIsImRlZmF1bHRFeHBhbmRlZFJvd0tleXMiLCJleHBlY3QiLCJ0b01hdGNoU25hcHNob3QiLCJtb3VudCIsImZpbmQiLCJ0b0VxdWFsIiwiYXQiLCJzaW11bGF0ZSIsIndyYXBwZXIwIiwid3JhcHBlcjEiLCJleHBhbmRPblJvd0NsaWNrIiwidG9IYXZlQmVlbkNhbGxlZFdpdGgiXSwic291cmNlcyI6WyIuLi8uLi8uLi9jb21wb25lbnRzL3RhYmxlL19fdGVzdHNfXy9leHBhbmRSb3cudGVzdC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSBcInJlYWN0XCJcbmltcG9ydCB7IG1vdW50IH0gZnJvbSBcImVuenltZVwiXG5pbXBvcnQgVGVzdFJlbmRlcmVyIGZyb20gXCJyZWFjdC10ZXN0LXJlbmRlcmVyXCJcbmltcG9ydCBUYWJsZSBmcm9tIFwiLi5cIlxuXG53aW5kb3cuUmVzaXplT2JzZXJ2ZXIgPVxuICB3aW5kb3cuUmVzaXplT2JzZXJ2ZXIgfHxcbiAgamVzdC5mbigpLm1vY2tJbXBsZW1lbnRhdGlvbigoKSA9PiAoe1xuICAgIGRpc2Nvbm5lY3Q6IGplc3QuZm4oKSxcbiAgICBvYnNlcnZlOiBqZXN0LmZuKCksXG4gICAgdW5vYnNlcnZlOiBqZXN0LmZuKCksXG4gIH0pKVxuXG5jb25zdCB7IENvbHVtbiB9ID0gVGFibGVcblxuY29uc3QgZGF0YVNvdXJjZSA9IFtcbiAge1xuICAgIGtleTogMCxcbiAgICBvbmU6IFwi56ys5LiA6aG5XCIsXG4gIH0sXG4gIHtcbiAgICBrZXk6IDEsXG4gICAgb25lOiBcIuesrOS6jOmhuVwiLFxuICB9LFxuICB7XG4gICAga2V5OiAyLFxuICAgIG9uZTogXCLnrKzkuInpoblcIixcbiAgfSxcbl1cblxuY2xhc3MgRXhwYW5kTW91bnRlciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRlID0ge1xuICAgIGtleXM6IG51bGwsXG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgeyBrZXlzIH0gPSB0aGlzLnN0YXRlXG4gICAgcmV0dXJuIChcbiAgICAgIDxUYWJsZVxuICAgICAgICBkYXRhU291cmNlPXtkYXRhU291cmNlfVxuICAgICAgICBleHBhbmRlZFJvd0tleXM9e2tleXN9XG4gICAgICAgIG9uRXhwYW5kQ2hhbmdlPXsoYXJnS2V5cykgPT4gdGhpcy5zZXRTdGF0ZSh7IGtleXM6IGFyZ0tleXMgfSl9XG4gICAgICA+XG4gICAgICAgIDxDb2x1bW4gdGl0bGU9XCJvbmVcIiBkYXRhSW5kZXg9XCJvbmVcIiAvPlxuICAgICAgPC9UYWJsZT5cbiAgICApXG4gIH1cbn1cblxuZGVzY3JpYmUoXCJiYXNlXCIsICgpID0+IHtcbiAgaXQoXCLlv6vnhafmoLjlr7lcIiwgKCkgPT4ge1xuICAgIGNvbnN0IHdyYXBwZXIgPSBUZXN0UmVuZGVyZXIuY3JlYXRlKFxuICAgICAgPFRhYmxlXG4gICAgICAgIGRhdGFTb3VyY2U9e2RhdGFTb3VyY2V9XG4gICAgICAgIGRlZmF1bHRFeHBhbmRlZFJvd0tleXM9e1sxXX1cbiAgICAgICAgb25FeHBhbmRDaGFuZ2U9eygpID0+IHt9fVxuICAgICAgPlxuICAgICAgICA8Q29sdW1uIHRpdGxlPVwib25lXCIgZGF0YUluZGV4PVwib25lXCIgLz5cbiAgICAgIDwvVGFibGU+XG4gICAgKVxuICAgIGV4cGVjdCh3cmFwcGVyKS50b01hdGNoU25hcHNob3QoKVxuICB9KVxuXG4gIGl0KFwi5piv5ZCm6IO95YaF6YOo6amx5YqoXCIsICgpID0+IHtcbiAgICBjb25zdCBvbkV4cGFuZENoYW5nZSA9IGplc3QuZm4oKVxuICAgIGNvbnN0IHdyYXBwZXIgPSBtb3VudChcbiAgICAgIDxUYWJsZVxuICAgICAgICBkYXRhU291cmNlPXtkYXRhU291cmNlfVxuICAgICAgICBvbkV4cGFuZENoYW5nZT17b25FeHBhbmRDaGFuZ2V9XG4gICAgICAgIGRlZmF1bHRFeHBhbmRlZFJvd0tleXM9e1sxXX1cbiAgICAgID5cbiAgICAgICAgPENvbHVtbiB0aXRsZT1cIm9uZVwiIGRhdGFJbmRleD1cIm9uZVwiIC8+XG4gICAgICA8L1RhYmxlPlxuICAgIClcbiAgICBleHBlY3Qod3JhcHBlci5maW5kKFwiVGFibGVcIikuc3RhdGUoKS5leHBhbmRlZFJvd0tleXMpLnRvRXF1YWwoWzFdKVxuICAgIHdyYXBwZXIuZmluZChcIkljb25cIikuYXQoMCkuc2ltdWxhdGUoXCJjbGlja1wiKVxuICAgIGV4cGVjdCh3cmFwcGVyLmZpbmQoXCJUYWJsZVwiKS5zdGF0ZSgpLmV4cGFuZGVkUm93S2V5cykudG9FcXVhbChbMSwgMF0pXG4gIH0pXG5cbiAgaXQoXCLmmK/lkKbog73lpJbpg6jmjqfliLZcIiwgKCkgPT4ge1xuICAgIGNvbnN0IG9uRXhwYW5kQ2hhbmdlID0gamVzdC5mbigpXG4gICAgY29uc3Qgd3JhcHBlcjAgPSBtb3VudChcbiAgICAgIDxUYWJsZVxuICAgICAgICBkYXRhU291cmNlPXtkYXRhU291cmNlfVxuICAgICAgICBvbkV4cGFuZENoYW5nZT17b25FeHBhbmRDaGFuZ2V9XG4gICAgICAgIGV4cGFuZGVkUm93S2V5cz17WzFdfVxuICAgICAgPlxuICAgICAgICA8Q29sdW1uIHRpdGxlPVwib25lXCIgZGF0YUluZGV4PVwib25lXCIgLz5cbiAgICAgIDwvVGFibGU+XG4gICAgKVxuICAgIGV4cGVjdCh3cmFwcGVyMC5maW5kKFwiVGFibGVcIikuc3RhdGUoKS5leHBhbmRlZFJvd0tleXMpLnRvRXF1YWwoWzFdKVxuICAgIHdyYXBwZXIwLmZpbmQoXCJJY29uXCIpLmF0KDApLnNpbXVsYXRlKFwiY2xpY2tcIilcbiAgICBleHBlY3Qod3JhcHBlcjAuZmluZChcIlRhYmxlXCIpLnN0YXRlKCkuZXhwYW5kZWRSb3dLZXlzKS50b0VxdWFsKFsxXSlcblxuICAgIGNvbnN0IHdyYXBwZXIxID0gbW91bnQoPEV4cGFuZE1vdW50ZXIgLz4pXG4gICAgd3JhcHBlcjEuZmluZChcIkljb25cIikuYXQoMCkuc2ltdWxhdGUoXCJjbGlja1wiKVxuICAgIGV4cGVjdCh3cmFwcGVyMS5maW5kKFwiVGFibGVcIikuc3RhdGUoKS5leHBhbmRlZFJvd0tleXMpLnRvRXF1YWwoWzBdKVxuICAgIHdyYXBwZXIxLmZpbmQoXCJJY29uXCIpLmF0KDApLnNpbXVsYXRlKFwiY2xpY2tcIilcbiAgICBleHBlY3Qod3JhcHBlcjEuZmluZChcIlRhYmxlXCIpLnN0YXRlKCkuZXhwYW5kZWRSb3dLZXlzKS50b0VxdWFsKFtdKVxuICB9KVxuXG4gIGl0KFwi5piv5ZCm5pSv5oyBIGV4cGFuZE9uUm93Q2xpY2tcIiwgKCkgPT4ge1xuICAgIGNvbnN0IG9uRXhwYW5kQ2hhbmdlID0gamVzdC5mbigpXG4gICAgY29uc3Qgd3JhcHBlciA9IG1vdW50KFxuICAgICAgPFRhYmxlXG4gICAgICAgIGRhdGFTb3VyY2U9e2RhdGFTb3VyY2V9XG4gICAgICAgIGRlZmF1bHRFeHBhbmRlZFJvd0tleXM9e1sxXX1cbiAgICAgICAgb25FeHBhbmRDaGFuZ2U9e29uRXhwYW5kQ2hhbmdlfVxuICAgICAgICBleHBhbmRPblJvd0NsaWNrXG4gICAgICA+XG4gICAgICAgIDxDb2x1bW4gdGl0bGU9XCJvbmVcIiBkYXRhSW5kZXg9XCJvbmVcIiAvPlxuICAgICAgPC9UYWJsZT5cbiAgICApXG4gICAgd3JhcHBlci5maW5kKCdbcm9sZT1cInJvd1wiXScpLmF0KDApLnNpbXVsYXRlKFwiY2xpY2tcIilcbiAgICBleHBlY3Qob25FeHBhbmRDaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKFsxLCAwXSlcbiAgfSlcbn0pXG4iXSwibWFwcGluZ3MiOiI7OztBQUFBLElBQUFBLEtBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLGtCQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxDQUFBLEdBQUFELHNCQUFBLENBQUFILE9BQUE7QUFBc0IsU0FBQUcsdUJBQUFFLENBQUEsV0FBQUEsQ0FBQSxJQUFBQSxDQUFBLENBQUFDLFVBQUEsR0FBQUQsQ0FBQSxnQkFBQUEsQ0FBQTtBQUFBLFNBQUFFLHlCQUFBRixDQUFBLDZCQUFBRyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFELHdCQUFBLFlBQUFBLHlCQUFBRixDQUFBLFdBQUFBLENBQUEsR0FBQUssQ0FBQSxHQUFBRCxDQUFBLEtBQUFKLENBQUE7QUFBQSxTQUFBTix3QkFBQU0sQ0FBQSxFQUFBSSxDQUFBLFNBQUFBLENBQUEsSUFBQUosQ0FBQSxJQUFBQSxDQUFBLENBQUFDLFVBQUEsU0FBQUQsQ0FBQSxlQUFBQSxDQUFBLGdCQUFBTSxPQUFBLENBQUFOLENBQUEsMEJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUssQ0FBQSxHQUFBSCx3QkFBQSxDQUFBRSxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBRSxHQUFBLENBQUFQLENBQUEsVUFBQUssQ0FBQSxDQUFBRyxHQUFBLENBQUFSLENBQUEsT0FBQVMsQ0FBQSxLQUFBQyxTQUFBLFVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsQ0FBQSxJQUFBZixDQUFBLG9CQUFBZSxDQUFBLE9BQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBakIsQ0FBQSxFQUFBZSxDQUFBLFNBQUFHLENBQUEsR0FB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