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>
105 lines (96 loc) • 12.8 kB
JavaScript
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
import React, { useState } from "react";
import { render, mount } from "enzyme";
import TestRenderer from "react-test-renderer";
import sinon from "sinon";
import Pagination from "..";
var PaginationMounter = function PaginationMounter() {
var _useState = useState(1),
_useState2 = _slicedToArray(_useState, 2),
current = _useState2[0],
setCurrent = _useState2[1];
return React.createElement(Pagination, {
pageSize: 10,
current: current,
total: 99,
onChange: function onChange(newCurrent) {
return setCurrent(newCurrent);
},
showButtonJumper: true
});
};
describe("Pagination", function () {
it("是否正确渲染", function () {
var wrapper = TestRenderer.create(React.createElement(Pagination, {
align: "right",
defaultCurrent: 1,
pageSize: 10,
total: 99,
showButtonJumper: true
}));
expect(wrapper).toMatchSnapshot();
});
it("current Prop 是否能验证非整数", function () {
var stub = sinon.stub(console, "error");
render(React.createElement(Pagination, {
current: 3.1
}));
expect(stub.calledTwice).toEqual(true);
stub.restore();
});
it("内部驱动", function () {
var wrapper = mount(React.createElement(Pagination, {
align: "right",
defaultCurrent: 5,
pageSize: 10,
total: 99,
showButtonJumper: true,
showInputJumper: true
}));
expect(wrapper.find("div").at(0).props()["data-current"]).toEqual(5);
wrapper.find("button").at(1).simulate("click");
expect(wrapper.find("div").at(0).props()["data-current"]).toEqual(4);
wrapper.find("button").at(0).simulate("click");
expect(wrapper.find("div").at(0).props()["data-current"]).toEqual(1);
var input = wrapper.find("input");
input.simulate("change", {
target: {
value: "3"
}
});
input.simulate("keydown", {
keyCode: 13
});
expect(wrapper.find("div").at(0).props()["data-current"]).toEqual(3);
input.simulate("change", {
target: {
value: "你好"
}
});
input.simulate("keydown", {
keyCode: 13
});
});
it("外部驱动", function () {
var wrapper1 = mount(React.createElement(Pagination, {
align: "right",
pageSize: 10,
current: 1,
total: 99,
showButtonJumper: true
}));
wrapper1.find("button").at(2).simulate("click");
expect(wrapper1.find("div").at(0).props()["data-current"]).toEqual(1);
wrapper1.find("button").at(3).simulate("click");
expect(wrapper1.find("div").at(0).props()["data-current"]).toEqual(1);
});
var wrapper2 = mount(React.createElement(PaginationMounter, null));
wrapper2.find("button").at(2).simulate("click");
expect(wrapper2.find("div").at(0).props()["data-current"]).toEqual(2);
});
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZVN0YXRlIiwicmVuZGVyIiwibW91bnQiLCJUZXN0UmVuZGVyZXIiLCJzaW5vbiIsIlBhZ2luYXRpb24iLCJQYWdpbmF0aW9uTW91bnRlciIsImN1cnJlbnQiLCJzZXRDdXJyZW50IiwibmV3Q3VycmVudCIsImRlc2NyaWJlIiwiaXQiLCJ3cmFwcGVyIiwiY3JlYXRlIiwiZXhwZWN0IiwidG9NYXRjaFNuYXBzaG90Iiwic3R1YiIsImNvbnNvbGUiLCJjYWxsZWRUd2ljZSIsInRvRXF1YWwiLCJyZXN0b3JlIiwiZmluZCIsImF0IiwicHJvcHMiLCJzaW11bGF0ZSIsImlucHV0IiwidGFyZ2V0IiwidmFsdWUiLCJrZXlDb2RlIiwid3JhcHBlcjEiLCJ3cmFwcGVyMiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9fdGVzdHNfL2luZGV4LnRlc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlICovXG5pbXBvcnQgUmVhY3QsIHsgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IHsgcmVuZGVyLCBtb3VudCB9IGZyb20gXCJlbnp5bWVcIlxuaW1wb3J0IFRlc3RSZW5kZXJlciBmcm9tIFwicmVhY3QtdGVzdC1yZW5kZXJlclwiXG5pbXBvcnQgc2lub24gZnJvbSBcInNpbm9uXCJcbmltcG9ydCBQYWdpbmF0aW9uIGZyb20gXCIuLlwiXG5cbmNvbnN0IFBhZ2luYXRpb25Nb3VudGVyID0gKCkgPT4ge1xuICBjb25zdCBbY3VycmVudCwgc2V0Q3VycmVudF0gPSB1c2VTdGF0ZSgxKVxuICByZXR1cm4gKFxuICAgIDxQYWdpbmF0aW9uXG4gICAgICBwYWdlU2l6ZT17MTB9XG4gICAgICBjdXJyZW50PXtjdXJyZW50fVxuICAgICAgdG90YWw9ezk5fVxuICAgICAgb25DaGFuZ2U9eyhuZXdDdXJyZW50KSA9PiBzZXRDdXJyZW50KG5ld0N1cnJlbnQpfVxuICAgICAgc2hvd0J1dHRvbkp1bXBlclxuICAgIC8+XG4gIClcbn1cblxuZGVzY3JpYmUoXCJQYWdpbmF0aW9uXCIsICgpID0+IHtcbiAgaXQoXCLmmK/lkKbmraPnoa7muLLmn5NcIiwgKCkgPT4ge1xuICAgIGNvbnN0IHdyYXBwZXIgPSBUZXN0UmVuZGVyZXIuY3JlYXRlKFxuICAgICAgPFBhZ2luYXRpb25cbiAgICAgICAgYWxpZ249XCJyaWdodFwiXG4gICAgICAgIGRlZmF1bHRDdXJyZW50PXsxfVxuICAgICAgICBwYWdlU2l6ZT17MTB9XG4gICAgICAgIHRvdGFsPXs5OX1cbiAgICAgICAgc2hvd0J1dHRvbkp1bXBlclxuICAgICAgLz5cbiAgICApXG4gICAgZXhwZWN0KHdyYXBwZXIpLnRvTWF0Y2hTbmFwc2hvdCgpXG4gIH0pXG5cbiAgaXQoXCJjdXJyZW50IFByb3Ag5piv5ZCm6IO96aqM6K+B6Z2e5pW05pWwXCIsICgpID0+IHtcbiAgICBjb25zdCBzdHViID0gc2lub24uc3R1Yihjb25zb2xlLCBcImVycm9yXCIpXG4gICAgcmVuZGVyKDxQYWdpbmF0aW9uIGN1cnJlbnQ9ezMuMX0gLz4pXG4gICAgZXhwZWN0KHN0dWIuY2FsbGVkVHdpY2UpLnRvRXF1YWwodHJ1ZSlcbiAgICBzdHViLnJlc3RvcmUoKVxuICB9KVxuXG4gIGl0KFwi5YaF6YOo6amx5YqoXCIsICgpID0+IHtcbiAgICBjb25zdCB3cmFwcGVyID0gbW91bnQoXG4gICAgICA8UGFnaW5hdGlvblxuICAgICAgICBhbGlnbj1cInJpZ2h0XCJcbiAgICAgICAgZGVmYXVsdEN1cnJlbnQ9ezV9XG4gICAgICAgIHBhZ2VTaXplPXsxMH1cbiAgICAgICAgdG90YWw9ezk5fVxuICAgICAgICBzaG93QnV0dG9uSnVtcGVyXG4gICAgICAgIHNob3dJbnB1dEp1bXBlclxuICAgICAgLz5cbiAgICApXG4gICAgZXhwZWN0KHdyYXBwZXIuZmluZChcImRpdlwiKS5hdCgwKS5wcm9wcygpW1wiZGF0YS1jdXJyZW50XCJdKS50b0VxdWFsKDUpXG4gICAgd3JhcHBlci5maW5kKFwiYnV0dG9uXCIpLmF0KDEpLnNpbXVsYXRlKFwiY2xpY2tcIilcbiAgICBleHBlY3Qod3JhcHBlci5maW5kKFwiZGl2XCIpLmF0KDApLnByb3BzKClbXCJkYXRhLWN1cnJlbnRcIl0pLnRvRXF1YWwoNClcblxuICAgIHdyYXBwZXIuZmluZChcImJ1dHRvblwiKS5hdCgwKS5zaW11bGF0ZShcImNsaWNrXCIpXG4gICAgZXhwZWN0KHdyYXBwZXIuZmluZChcImRpdlwiKS5hdCgwKS5wcm9wcygpW1wiZGF0YS1jdXJyZW50XCJdKS50b0VxdWFsKDEpXG5cbiAgICBjb25zdCBpbnB1dCA9IHdyYXBwZXIuZmluZChcImlucHV0XCIpXG4gICAgaW5wdXQuc2ltdWxhdGUoXCJjaGFuZ2VcIiwgeyB0YXJnZXQ6IHsgdmFsdWU6IFwiM1wiIH0gfSlcbiAgICBpbnB1dC5zaW11bGF0ZShcImtleWRvd25cIiwgeyBrZXlDb2RlOiAxMyB9KVxuICAgIGV4cGVjdCh3cmFwcGVyLmZpbmQoXCJkaXZcIikuYXQoMCkucHJvcHMoKVtcImRhdGEtY3VycmVudFwiXSkudG9FcXVhbCgzKVxuXG4gICAgaW5wdXQuc2ltdWxhdGUoXCJjaGFuZ2VcIiwgeyB0YXJnZXQ6IHsgdmFsdWU6IFwi5L2g5aW9XCIgfSB9KVxuICAgIGlucHV0LnNpbXVsYXRlKFwia2V5ZG93blwiLCB7IGtleUNvZGU6IDEzIH0pXG4gIH0pXG5cbiAgaXQoXCLlpJbpg6jpqbHliqhcIiwgKCkgPT4ge1xuICAgIGNvbnN0IHdyYXBwZXIxID0gbW91bnQoXG4gICAgICA8UGFnaW5hdGlvblxuICAgICAgICBhbGlnbj1cInJpZ2h0XCJcbiAgICAgICAgcGFnZVNpemU9ezEwfVxuICAgICAgICBjdXJyZW50PXsxfVxuICAgICAgICB0b3RhbD17OTl9XG4gICAgICAgIHNob3dCdXR0b25KdW1wZXJcbiAgICAgIC8+XG4gICAgKVxuICAgIHdyYXBwZXIxLmZpbmQoXCJidXR0b25cIikuYXQoMikuc2ltdWxhdGUoXCJjbGlja1wiKVxuICAgIGV4cGVjdCh3cmFwcGVyMS5maW5kKFwiZGl2XCIpLmF0KDApLnByb3BzKClbXCJkYXRhLWN1cnJlbnRcIl0pLnRvRXF1YWwoMSlcblxuICAgIHdyYXBwZXIxLmZpbmQoXCJidXR0b25cIikuYXQoMykuc2ltdWxhdGUoXCJjbGlja1wiKVxuICAgIGV4cGVjdCh3cmFwcGVyMS5maW5kKFwiZGl2XCIpLmF0KDApLnByb3BzKClbXCJkYXRhLWN1cnJlbnRcIl0pLnRvRXF1YWwoMSlcbiAgfSlcblxuICBjb25zdCB3cmFwcGVyMiA9IG1vdW50KDxQYWdpbmF0aW9uTW91bnRlciAvPilcbiAgd3JhcHBlcjIuZmluZChcImJ1dHRvblwiKS5hdCgyKS5zaW11bGF0ZShcImNsaWNrXCIpXG4gIGV4cGVjdCh3cmFwcGVyMi5maW5kKFwiZGl2XCIpLmF0KDApLnByb3BzKClbXCJkYXRhLWN1cnJlbnRcIl0pLnRvRXF1YWwoMilcbn0pXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUNBLE9BQU9BLEtBQVAsSUFBZ0JDLFFBQWhCLFFBQWdDLE9BQWhDO0FBQ0EsU0FBU0MsTUFBVCxFQUFpQkMsS0FBakIsUUFBOEIsUUFBOUI7QUFDQSxPQUFPQyxZQUFQLE1BQXlCLHFCQUF6QjtBQUNBLE9BQU9DLEtBQVAsTUFBa0IsT0FBbEI7QUFDQSxPQUFPQyxVQUFQLE1BQXVCLElBQXZCOztBQUVBLElBQU1DLGlCQUFpQixHQUFHLFNBQXBCQSxpQkFBb0IsR0FBTTtFQUM5QixnQkFBOEJOLFFBQVEsQ0FBQyxDQUFELENBQXRDO0VBQUE7RUFBQSxJQUFPTyxPQUFQO0VBQUEsSUFBZ0JDLFVBQWhCOztFQUNBLE9BQ0Usb0JBQUMsVUFBRDtJQUNFLFFBQVEsRUFBRSxFQURaO0lBRUUsT0FBTyxFQUFFRCxPQUZYO0lBR0UsS0FBSyxFQUFFLEVBSFQ7SUFJRSxRQUFRLEVBQUUsa0JBQUNFLFVBQUQ7TUFBQSxPQUFnQkQsVUFBVSxDQUFDQyxVQUFELENBQTFCO0lBQUEsQ0FKWjtJQUtFLGdCQUFnQjtFQUxsQixFQURGO0FBU0QsQ0FYRDs7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