UNPKG

zarm

Version:

基于 React 的移动端UI库

114 lines (102 loc) 4.11 kB
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator"; import _regeneratorRuntime from "@babel/runtime/regenerator"; import * as React from 'react'; import { render, waitFor } from '@testing-library/react'; import { act } from 'react-dom/test-utils'; import WaterMark from '../index'; describe('WaterMark', function () { it('renders correctly', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() { return _regeneratorRuntime.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return act( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() { var _render, asFragment; return _regeneratorRuntime.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _render = render( /*#__PURE__*/React.createElement(WaterMark, { text: "\u4F17\u5B89\u79D1\u6280" })), asFragment = _render.asFragment; expect(asFragment()).toMatchSnapshot(); case 2: case "end": return _context.stop(); } } }, _callee); }))); case 2: case "end": return _context2.stop(); } } }, _callee2); }))); it('image watermark', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4() { return _regeneratorRuntime.wrap(function _callee4$(_context4) { while (1) { switch (_context4.prev = _context4.next) { case 0: _context4.next = 2; return act( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() { var _render2, asFragment; return _regeneratorRuntime.wrap(function _callee3$(_context3) { while (1) { switch (_context3.prev = _context3.next) { case 0: _render2 = render( /*#__PURE__*/React.createElement(WaterMark, { image: "https://zarm.design/images/logo.1a6cfc30.svg" })), asFragment = _render2.asFragment; expect(asFragment()).toMatchSnapshot(); case 2: case "end": return _context3.stop(); } } }, _callee3); }))); case 2: case "end": return _context4.stop(); } } }, _callee4); }))); var originalError = console.error; // @ts-ignore // eslint-disable-next-line no-return-assign afterEach(function () { return console.error = originalError; }); var consoleOutput = []; var mockedError = function mockedError(output) { consoleOutput.push(output); }; // eslint-disable-next-line no-return-assign beforeEach(function () { return console.error = mockedError; }); it.only('canvas non-supported', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee5() { var mockCanvasContext; return _regeneratorRuntime.wrap(function _callee5$(_context5) { while (1) { switch (_context5.prev = _context5.next) { case 0: mockCanvasContext = jest.spyOn(HTMLCanvasElement.prototype, 'getContext'); mockCanvasContext.mockReturnValue(null); render( /*#__PURE__*/React.createElement(WaterMark, null)); _context5.next = 5; return waitFor(function () { expect(consoleOutput).toEqual(['当前环境不支持 Canvas']); }); case 5: mockCanvasContext.mockRestore(); case 6: case "end": return _context5.stop(); } } }, _callee5); }))); });