| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- import { Toast, Icon, Button } from '../../index';
- import { advanceBy, advanceTo, clear } from 'jest-date-mock';
- import sleep from '@douyinfe/semi-ui/_test_/utils/function/sleep';
- import { BASE_CLASS_PREFIX } from '../../../semi-foundation/base/constants';
- import { JSDOM } from 'jsdom';
- import { mount } from 'enzyme';
- describe('Toast - 2', () => {
- beforeEach(() => {
- // semi-animation会使用Date.now(),所以这里需要clear掉全局的advanceTo对Date的修改
- clear();
- const tw = document.querySelector(`.${BASE_CLASS_PREFIX}-toast-wrapper`);
- if (tw) {
- tw.innerHTML = '';
- }
- });
- afterEach(() => {});
- it('close via command call & duration = 0', async () => {
- let opts = {
- content: 'close by manual',
- duration: 0,
- motion:false
- };
- let id = Toast.info(opts);
- let toast = document.getElementsByClassName(`${BASE_CLASS_PREFIX}-toast-info`);
- expect(toast.length).toEqual(1);
- Toast.close(id);
- // wait, make sure react had update render content
- await sleep(400);
- expect(toast.length).toEqual(0);
- });
- it('different type toast', () => {
- Toast.info({ content: 'info' });
- Toast.success({ content: 'success' });
- Toast.warning({ content: 'warning' });
- Toast.error({ content: 'error' });
- expect(document.querySelector(`.${BASE_CLASS_PREFIX}-toast-info .${BASE_CLASS_PREFIX}-toast-content-text`).innerHTML).toEqual('info');
- expect(document.querySelector(`.${BASE_CLASS_PREFIX}-toast-success .${BASE_CLASS_PREFIX}-toast-content-text`).innerHTML).toEqual('success');
- expect(document.querySelector(`.${BASE_CLASS_PREFIX}-toast-warning .${BASE_CLASS_PREFIX}-toast-content-text`).innerHTML).toEqual('warning');
- expect(document.querySelector(`.${BASE_CLASS_PREFIX}-toast-error .${BASE_CLASS_PREFIX}-toast-content-text`).innerHTML).toEqual('error');
- });
- it('top/bottom/right/left', () => {
- let opts = {
- content: 'Hi, Bytedance dance dance',
- duration: 0,
- top: 500,
- left: 20,
- bottom: 30,
- right: 40,
- };
- Toast.info(opts);
- let toastWrapper = document.getElementsByClassName(`${BASE_CLASS_PREFIX}-toast-wrapper`)[0];
- let style = toastWrapper.style;
- expect(style.top).toEqual('500px');
- expect(style.left).toEqual('20px');
- expect(style.bottom).toEqual('30px');
- expect(style.right).toEqual('40px');
- });
- });
|