chore: update demo (#1886)

This commit is contained in:
Kyrielin 2023-01-13 15:58:52 +08:00 committed by GitHub
parent 51596cc465
commit b3ab0417b7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 454 additions and 975 deletions

View File

@ -61,7 +61,7 @@
"init": "node script/init-component",
"robot": "publish-cli robot-msg",
"prepare": "husky install",
"update:coverage-badge": "node test/scripts/generate-coverage.js"
"update:coverage-badge": "node script/generate-coverage.js"
},
"config": {
"commitizen": {

View File

@ -46,7 +46,7 @@ fs.readFile(resolveCwd('test/unit/coverage/index.html'), 'utf8', (err, html) =>
}
});
const finalRes = `module.exports = ${JSON.stringify(resultCoverage)}`;
const finalRes = `module.exports = ${JSON.stringify(resultCoverage, null, 2)};\n`;
fs.writeFileSync(resolveCwd('site/test-coverage.js'), finalRes);
console.log('successful re-generate coverage');
}

View File

@ -1,64 +1,374 @@
module.exports = {
input: { statements: '86.23%', branches: '82.08%', functions: '76%', lines: '85.43%' },
util: { statements: '42.61%', branches: '29.8%', functions: '50.89%', lines: '43.62%' },
affix: { statements: '66.66%', branches: '53.57%', functions: '87.5%', lines: '67.21%' },
alert: { statements: '100%', branches: '77.27%', functions: '100%', lines: '100%' },
anchor: { statements: '63.24%', branches: '42.85%', functions: '60%', lines: '64.15%' },
avatar: { statements: '66.66%', branches: '53.65%', functions: '55.55%', lines: '66.66%' },
badge: { statements: '100%', branches: '100%', functions: '100%', lines: '100%' },
breadcrumb: { statements: '87.17%', branches: '60.86%', functions: '80%', lines: '89.47%' },
button: { statements: '96.15%', branches: '92.59%', functions: '100%', lines: '100%' },
calendar: { statements: '88.15%', branches: '67.54%', functions: '78%', lines: '89.95%' },
card: { statements: '97.22%', branches: '81.57%', functions: '100%', lines: '97.14%' },
cascader: { statements: '4.85%', branches: '0%', functions: '0%', lines: '5.43%' },
checkbox: { statements: '90.54%', branches: '83.01%', functions: '100%', lines: '92.85%' },
collapse: { statements: '97.14%', branches: '80%', functions: '93.75%', lines: '97.1%' },
colorPicker: { statements: '93.33%', branches: '100%', functions: '60%', lines: '93.1%' },
comment: { statements: '100%', branches: '100%', functions: '100%', lines: '100%' },
common: { statements: '91.07%', branches: '78.94%', functions: '100%', lines: '96.15%' },
configProvider: { statements: '70.58%', branches: '66.66%', functions: '25%', lines: '68.75%' },
datePicker: { statements: '27.18%', branches: '19.9%', functions: '26.15%', lines: '28.53%' },
dialog: { statements: '84.46%', branches: '71.72%', functions: '88.09%', lines: '86.13%' },
divider: { statements: '100%', branches: '100%', functions: '100%', lines: '100%' },
drawer: { statements: '81.65%', branches: '77.01%', functions: '76.47%', lines: '84.46%' },
dropdown: { statements: '98.27%', branches: '65.38%', functions: '90.9%', lines: '98.27%' },
form: { statements: '45.17%', branches: '27.74%', functions: '38.09%', lines: '46.98%' },
grid: { statements: '61.05%', branches: '28.78%', functions: '80%', lines: '61.05%' },
hooks: { statements: '100%', branches: '88.88%', functions: '100%', lines: '100%' },
image: { statements: '65.95%', branches: '55.17%', functions: '41.66%', lines: '63.63%' },
imageViewer: { statements: '75.71%', branches: '75.43%', functions: '66.66%', lines: '76.11%' },
inputAdornment: { statements: '86.95%', branches: '75%', functions: '100%', lines: '90.9%' },
inputNumber: { statements: '88.77%', branches: '78.33%', functions: '83.33%', lines: '92.39%' },
jumper: { statements: '75%', branches: '45.45%', functions: '50%', lines: '85%' },
link: { statements: '90%', branches: '92.3%', functions: '100%', lines: '88.88%' },
list: { statements: '97.05%', branches: '95.83%', functions: '100%', lines: '97.05%' },
loading: { statements: '86.25%', branches: '64.28%', functions: '78.57%', lines: '89.47%' },
locale: { statements: '73.07%', branches: '72.22%', functions: '83.33%', lines: '73.91%' },
message: { statements: '41.66%', branches: '32.5%', functions: '16.66%', lines: '44.61%' },
notification: { statements: '90%', branches: '73.33%', functions: '88.09%', lines: '93.65%' },
pagination: { statements: '94.64%', branches: '78.12%', functions: '90%', lines: '96.22%' },
popconfirm: { statements: '88.88%', branches: '85.71%', functions: '81.81%', lines: '88.88%' },
popup: { statements: '90.9%', branches: '89.65%', functions: '81.25%', lines: '94.11%' },
progress: { statements: '88.23%', branches: '66.66%', functions: '100%', lines: '88.23%' },
radio: { statements: '95.74%', branches: '80%', functions: '100%', lines: '95.45%' },
rangeInput: { statements: '75.9%', branches: '60.46%', functions: '50%', lines: '76.25%' },
rate: { statements: '64.15%', branches: '45.83%', functions: '70%', lines: '68.88%' },
select: { statements: '100%', branches: '100%', functions: '100%', lines: '100%' },
selectInput: { statements: '83.83%', branches: '72.15%', functions: '69.56%', lines: '86.95%' },
slider: { statements: '89.31%', branches: '66.07%', functions: '92.85%', lines: '90.98%' },
space: { statements: '92.3%', branches: '92.3%', functions: '100%', lines: '91.89%' },
steps: { statements: '87.65%', branches: '65.38%', functions: '100%', lines: '100%' },
swiper: { statements: '73.44%', branches: '43.63%', functions: '85.71%', lines: '72.83%' },
switch: { statements: '84.84%', branches: '78.57%', functions: '100%', lines: '93.1%' },
table: { statements: '45.58%', branches: '28.54%', functions: '42.17%', lines: '46.88%' },
tabs: { statements: '90.74%', branches: '80%', functions: '84.61%', lines: '91.02%' },
tag: { statements: '97.14%', branches: '94.44%', functions: '100%', lines: '100%' },
tagInput: { statements: '50%', branches: '20.31%', functions: '36.84%', lines: '52.66%' },
textarea: { statements: '82.43%', branches: '58.53%', functions: '80.95%', lines: '86.36%' },
timePicker: { statements: '14.28%', branches: '0%', functions: '0%', lines: '14.94%' },
tooltip: { statements: '87.3%', branches: '55.55%', functions: '90.9%', lines: '86.66%' },
transfer: { statements: '86.06%', branches: '67.02%', functions: '84.28%', lines: '87.77%' },
tree: { statements: '23.24%', branches: '6.25%', functions: '20.51%', lines: '23.87%' },
upload: { statements: '14.28%', branches: '0%', functions: '0%', lines: '14.81%' },
watermark: { statements: '54.76%', branches: '65.62%', functions: '40%', lines: '57.5%' },
"input": {
"statements": "86.23%",
"branches": "82.08%",
"functions": "76%",
"lines": "85.43%"
},
"util": {
"statements": "42.61%",
"branches": "29.8%",
"functions": "50.89%",
"lines": "43.62%"
},
"affix": {
"statements": "66.66%",
"branches": "53.57%",
"functions": "87.5%",
"lines": "67.21%"
},
"alert": {
"statements": "100%",
"branches": "77.27%",
"functions": "100%",
"lines": "100%"
},
"anchor": {
"statements": "63.24%",
"branches": "42.85%",
"functions": "60%",
"lines": "64.15%"
},
"avatar": {
"statements": "66.66%",
"branches": "53.65%",
"functions": "55.55%",
"lines": "66.66%"
},
"badge": {
"statements": "100%",
"branches": "100%",
"functions": "100%",
"lines": "100%"
},
"breadcrumb": {
"statements": "87.17%",
"branches": "60.86%",
"functions": "80%",
"lines": "89.47%"
},
"button": {
"statements": "96.15%",
"branches": "92.59%",
"functions": "100%",
"lines": "100%"
},
"calendar": {
"statements": "88.15%",
"branches": "67.54%",
"functions": "78%",
"lines": "89.95%"
},
"card": {
"statements": "97.22%",
"branches": "81.57%",
"functions": "100%",
"lines": "97.14%"
},
"cascader": {
"statements": "4.85%",
"branches": "0%",
"functions": "0%",
"lines": "5.43%"
},
"checkbox": {
"statements": "90.54%",
"branches": "83.01%",
"functions": "100%",
"lines": "92.85%"
},
"collapse": {
"statements": "97.14%",
"branches": "80%",
"functions": "93.75%",
"lines": "97.1%"
},
"colorPicker": {
"statements": "93.33%",
"branches": "100%",
"functions": "60%",
"lines": "93.1%"
},
"comment": {
"statements": "100%",
"branches": "100%",
"functions": "100%",
"lines": "100%"
},
"common": {
"statements": "91.07%",
"branches": "78.94%",
"functions": "100%",
"lines": "96.15%"
},
"configProvider": {
"statements": "70.58%",
"branches": "66.66%",
"functions": "25%",
"lines": "68.75%"
},
"datePicker": {
"statements": "27.18%",
"branches": "19.9%",
"functions": "26.15%",
"lines": "28.53%"
},
"dialog": {
"statements": "84.46%",
"branches": "71.72%",
"functions": "88.09%",
"lines": "86.13%"
},
"divider": {
"statements": "100%",
"branches": "100%",
"functions": "100%",
"lines": "100%"
},
"drawer": {
"statements": "81.65%",
"branches": "77.01%",
"functions": "76.47%",
"lines": "84.46%"
},
"dropdown": {
"statements": "98.27%",
"branches": "65.38%",
"functions": "90.9%",
"lines": "98.27%"
},
"form": {
"statements": "45.17%",
"branches": "27.74%",
"functions": "38.09%",
"lines": "46.98%"
},
"grid": {
"statements": "61.05%",
"branches": "28.78%",
"functions": "80%",
"lines": "61.05%"
},
"hooks": {
"statements": "100%",
"branches": "88.88%",
"functions": "100%",
"lines": "100%"
},
"image": {
"statements": "65.95%",
"branches": "55.17%",
"functions": "41.66%",
"lines": "63.63%"
},
"imageViewer": {
"statements": "75.71%",
"branches": "75.43%",
"functions": "66.66%",
"lines": "76.11%"
},
"inputAdornment": {
"statements": "86.95%",
"branches": "75%",
"functions": "100%",
"lines": "90.9%"
},
"inputNumber": {
"statements": "88.77%",
"branches": "78.33%",
"functions": "83.33%",
"lines": "92.39%"
},
"jumper": {
"statements": "75%",
"branches": "45.45%",
"functions": "50%",
"lines": "85%"
},
"link": {
"statements": "90%",
"branches": "92.3%",
"functions": "100%",
"lines": "88.88%"
},
"list": {
"statements": "97.05%",
"branches": "95.83%",
"functions": "100%",
"lines": "97.05%"
},
"loading": {
"statements": "86.25%",
"branches": "64.28%",
"functions": "78.57%",
"lines": "89.47%"
},
"locale": {
"statements": "73.07%",
"branches": "72.22%",
"functions": "83.33%",
"lines": "73.91%"
},
"message": {
"statements": "41.66%",
"branches": "32.5%",
"functions": "16.66%",
"lines": "44.61%"
},
"notification": {
"statements": "90%",
"branches": "73.33%",
"functions": "88.09%",
"lines": "93.65%"
},
"pagination": {
"statements": "94.64%",
"branches": "78.12%",
"functions": "90%",
"lines": "96.22%"
},
"popconfirm": {
"statements": "88.88%",
"branches": "85.71%",
"functions": "81.81%",
"lines": "88.88%"
},
"popup": {
"statements": "90.9%",
"branches": "89.65%",
"functions": "81.25%",
"lines": "94.11%"
},
"progress": {
"statements": "88.23%",
"branches": "66.66%",
"functions": "100%",
"lines": "88.23%"
},
"radio": {
"statements": "95.74%",
"branches": "80%",
"functions": "100%",
"lines": "95.45%"
},
"rangeInput": {
"statements": "75.9%",
"branches": "60.46%",
"functions": "50%",
"lines": "76.25%"
},
"rate": {
"statements": "64.15%",
"branches": "45.83%",
"functions": "70%",
"lines": "68.88%"
},
"select": {
"statements": "100%",
"branches": "100%",
"functions": "100%",
"lines": "100%"
},
"selectInput": {
"statements": "83.83%",
"branches": "72.15%",
"functions": "69.56%",
"lines": "86.95%"
},
"slider": {
"statements": "89.31%",
"branches": "66.07%",
"functions": "92.85%",
"lines": "90.98%"
},
"space": {
"statements": "92.3%",
"branches": "92.3%",
"functions": "100%",
"lines": "91.89%"
},
"steps": {
"statements": "87.65%",
"branches": "65.38%",
"functions": "100%",
"lines": "100%"
},
"swiper": {
"statements": "73.44%",
"branches": "43.63%",
"functions": "85.71%",
"lines": "72.83%"
},
"switch": {
"statements": "84.84%",
"branches": "78.57%",
"functions": "100%",
"lines": "93.1%"
},
"table": {
"statements": "45.58%",
"branches": "28.54%",
"functions": "42.17%",
"lines": "46.88%"
},
"tabs": {
"statements": "90.74%",
"branches": "80%",
"functions": "84.61%",
"lines": "91.02%"
},
"tag": {
"statements": "97.14%",
"branches": "94.44%",
"functions": "100%",
"lines": "100%"
},
"tagInput": {
"statements": "50%",
"branches": "20.31%",
"functions": "36.84%",
"lines": "52.66%"
},
"textarea": {
"statements": "82.43%",
"branches": "58.53%",
"functions": "80.95%",
"lines": "86.36%"
},
"timePicker": {
"statements": "14.28%",
"branches": "0%",
"functions": "0%",
"lines": "14.94%"
},
"tooltip": {
"statements": "87.3%",
"branches": "55.55%",
"functions": "90.9%",
"lines": "86.66%"
},
"transfer": {
"statements": "86.06%",
"branches": "67.02%",
"functions": "84.28%",
"lines": "87.77%"
},
"tree": {
"statements": "23.24%",
"branches": "6.25%",
"functions": "20.51%",
"lines": "23.87%"
},
"upload": {
"statements": "14.28%",
"branches": "0%",
"functions": "0%",
"lines": "14.81%"
},
"watermark": {
"statements": "54.76%",
"branches": "65.62%",
"functions": "40%",
"lines": "57.5%"
}
};

View File

@ -1,17 +1,11 @@
import React from 'react';
import { render, describe, vi } from '@test/utils';
import { render, describe, vi, mockTimeout } from '@test/utils';
import Affix from '../index';
describe('Affix 组件测试', () => {
const mockFn = vi.spyOn(HTMLDivElement.prototype, 'getBoundingClientRect');
const mockScrollTo = async (top: number) => {
mockFn.mockImplementation(
() =>
({
top,
bottom: 0,
} as DOMRect),
);
mockFn.mockImplementation(() => ({ top, bottom: 0 }));
};
beforeEach(async () => {
await mockScrollTo(0);
@ -40,10 +34,9 @@ describe('Affix 组件测试', () => {
await mockScrollTo(-10);
setTimeout(() => {
expect(onFixedChangeMock).toHaveBeenCalledTimes(1);
expect(getByText('固钉').parentNode).toHaveClass('t-affix');
expect(getByText('固钉').parentElement.style.zIndex).toBe('2');
}, 20);
await mockTimeout(() => false, 200);
expect(onFixedChangeMock).toHaveBeenCalledTimes(1);
expect(getByText('固钉').parentNode).toHaveClass('t-affix');
expect(getByText('固钉').parentElement.style.zIndex).toBe('2');
});
});

View File

@ -20,10 +20,6 @@ describe('Anchor 组件测试', () => {
const domDistance = getScroll(wrapper.getByTestId(childTestID), true);
expect(domDistance).toEqual(distance);
// target is null
const nullDistance = getScroll(null, true);
expect(nullDistance).toEqual(distance);
// target is document
const documentDistance = getScroll(document, true);
expect(documentDistance).toEqual(distance);
@ -35,4 +31,16 @@ describe('Anchor 组件测试', () => {
const scrollToPromise = scrollTo(10, {});
expect(scrollToPromise).toBeInstanceOf(Promise);
});
test('render links', async () => {
render(
<Anchor>
<AnchorItem href="#test-a" />
<AnchorItem href="#test-b" />
</Anchor>,
);
expect(document.querySelector('.t-is-active')).toBe(null);
expect(document.querySelector('a[href="#test-a"]')).not.toBe(null);
expect(document.querySelector('a[href="#test-b"]')).not.toBe(null);
});
});

View File

@ -1,305 +0,0 @@
// Vitest Snapshot v1
exports[`DatePicker > allowInput 1`] = `
{
"asFragment": [Function],
"baseElement": <body>
<div>
<div
class="t-date-picker"
>
<div
class="t-select-input t-select-input--empty"
>
<div
class="t-input__wrap"
value=""
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default t-input--prefix t-input--suffix"
>
<div
class="t-input__prefix"
/>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
<span
class="t-input__suffix t-input__suffix-icon"
>
<svg
class="t-icon t-icon-calendar"
fill="none"
height="1em"
viewBox="0 0 16 16"
width="1em"
>
<path
d="M10 3H6V1.5H5V3H3a1 1 0 00-1 1v9a1 1 0 001 1h10a1 1 0 001-1V4a1 1 0 00-1-1h-2V1.5h-1V3zM5 5h1V4h4v1h1V4h2v2H3V4h2v1zM3 7h10v6H3V7z"
fill="currentColor"
fill-opacity="0.9"
/>
</svg>
</span>
</div>
</div>
</div>
</div>
</div>
</body>,
"container": <div>
<div
class="t-date-picker"
>
<div
class="t-select-input t-select-input--empty"
>
<div
class="t-input__wrap"
value=""
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default t-input--prefix t-input--suffix"
>
<div
class="t-input__prefix"
/>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
<span
class="t-input__suffix t-input__suffix-icon"
>
<svg
class="t-icon t-icon-calendar"
fill="none"
height="1em"
viewBox="0 0 16 16"
width="1em"
>
<path
d="M10 3H6V1.5H5V3H3a1 1 0 00-1 1v9a1 1 0 001 1h10a1 1 0 001-1V4a1 1 0 00-1-1h-2V1.5h-1V3zM5 5h1V4h4v1h1V4h2v2H3V4h2v1zM3 7h10v6H3V7z"
fill="currentColor"
fill-opacity="0.9"
/>
</svg>
</span>
</div>
</div>
</div>
</div>
</div>,
"debug": [Function],
"findAllByAltText": [Function],
"findAllByDisplayValue": [Function],
"findAllByLabelText": [Function],
"findAllByPlaceholderText": [Function],
"findAllByRole": [Function],
"findAllByTestId": [Function],
"findAllByText": [Function],
"findAllByTitle": [Function],
"findByAltText": [Function],
"findByDisplayValue": [Function],
"findByLabelText": [Function],
"findByPlaceholderText": [Function],
"findByRole": [Function],
"findByTestId": [Function],
"findByText": [Function],
"findByTitle": [Function],
"getAllByAltText": [Function],
"getAllByDisplayValue": [Function],
"getAllByLabelText": [Function],
"getAllByPlaceholderText": [Function],
"getAllByRole": [Function],
"getAllByTestId": [Function],
"getAllByText": [Function],
"getAllByTitle": [Function],
"getByAltText": [Function],
"getByDisplayValue": [Function],
"getByLabelText": [Function],
"getByPlaceholderText": [Function],
"getByRole": [Function],
"getByTestId": [Function],
"getByText": [Function],
"getByTitle": [Function],
"queryAllByAltText": [Function],
"queryAllByDisplayValue": [Function],
"queryAllByLabelText": [Function],
"queryAllByPlaceholderText": [Function],
"queryAllByRole": [Function],
"queryAllByTestId": [Function],
"queryAllByText": [Function],
"queryAllByTitle": [Function],
"queryByAltText": [Function],
"queryByDisplayValue": [Function],
"queryByLabelText": [Function],
"queryByPlaceholderText": [Function],
"queryByRole": [Function],
"queryByTestId": [Function],
"queryByText": [Function],
"queryByTitle": [Function],
"rerender": [Function],
"unmount": [Function],
}
`;
exports[`DatePicker > className style 1`] = `
{
"asFragment": [Function],
"baseElement": <body>
<div>
<div
class="t-date-picker test-class"
style="width: 100px;"
>
<div
class="t-select-input t-select-input--empty"
>
<div
class="t-input__wrap"
value=""
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default t-input--prefix t-input--suffix"
>
<div
class="t-input__prefix"
/>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
<span
class="t-input__suffix t-input__suffix-icon"
>
<svg
class="t-icon t-icon-calendar"
fill="none"
height="1em"
viewBox="0 0 16 16"
width="1em"
>
<path
d="M10 3H6V1.5H5V3H3a1 1 0 00-1 1v9a1 1 0 001 1h10a1 1 0 001-1V4a1 1 0 00-1-1h-2V1.5h-1V3zM5 5h1V4h4v1h1V4h2v2H3V4h2v1zM3 7h10v6H3V7z"
fill="currentColor"
fill-opacity="0.9"
/>
</svg>
</span>
</div>
</div>
</div>
</div>
</div>
</body>,
"container": <div>
<div
class="t-date-picker test-class"
style="width: 100px;"
>
<div
class="t-select-input t-select-input--empty"
>
<div
class="t-input__wrap"
value=""
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default t-input--prefix t-input--suffix"
>
<div
class="t-input__prefix"
/>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
<span
class="t-input__suffix t-input__suffix-icon"
>
<svg
class="t-icon t-icon-calendar"
fill="none"
height="1em"
viewBox="0 0 16 16"
width="1em"
>
<path
d="M10 3H6V1.5H5V3H3a1 1 0 00-1 1v9a1 1 0 001 1h10a1 1 0 001-1V4a1 1 0 00-1-1h-2V1.5h-1V3zM5 5h1V4h4v1h1V4h2v2H3V4h2v1zM3 7h10v6H3V7z"
fill="currentColor"
fill-opacity="0.9"
/>
</svg>
</span>
</div>
</div>
</div>
</div>
</div>,
"debug": [Function],
"findAllByAltText": [Function],
"findAllByDisplayValue": [Function],
"findAllByLabelText": [Function],
"findAllByPlaceholderText": [Function],
"findAllByRole": [Function],
"findAllByTestId": [Function],
"findAllByText": [Function],
"findAllByTitle": [Function],
"findByAltText": [Function],
"findByDisplayValue": [Function],
"findByLabelText": [Function],
"findByPlaceholderText": [Function],
"findByRole": [Function],
"findByTestId": [Function],
"findByText": [Function],
"findByTitle": [Function],
"getAllByAltText": [Function],
"getAllByDisplayValue": [Function],
"getAllByLabelText": [Function],
"getAllByPlaceholderText": [Function],
"getAllByRole": [Function],
"getAllByTestId": [Function],
"getAllByText": [Function],
"getAllByTitle": [Function],
"getByAltText": [Function],
"getByDisplayValue": [Function],
"getByLabelText": [Function],
"getByPlaceholderText": [Function],
"getByRole": [Function],
"getByTestId": [Function],
"getByText": [Function],
"getByTitle": [Function],
"queryAllByAltText": [Function],
"queryAllByDisplayValue": [Function],
"queryAllByLabelText": [Function],
"queryAllByPlaceholderText": [Function],
"queryAllByRole": [Function],
"queryAllByTestId": [Function],
"queryAllByText": [Function],
"queryAllByTitle": [Function],
"queryByAltText": [Function],
"queryByDisplayValue": [Function],
"queryByLabelText": [Function],
"queryByPlaceholderText": [Function],
"queryByRole": [Function],
"queryByTestId": [Function],
"queryByText": [Function],
"queryByTitle": [Function],
"rerender": [Function],
"unmount": [Function],
}
`;

View File

@ -1,479 +0,0 @@
// Vitest Snapshot v1
exports[`DateRangePicker > allowInput 1`] = `
{
"asFragment": [Function],
"baseElement": <body>
<div>
<div
class="t-date-range-picker"
>
<div
class="t-range-input-popup t-range-input-popup"
>
<div
class="t-range-input t-range-input--suffix"
value=""
>
<div
class="t-range-input__inner"
>
<div
class="t-input__wrap t-range-input__inner-left"
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default"
>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
</div>
</div>
<div
class="t-range-input__inner-separator"
>
-
</div>
<div
class="t-input__wrap t-range-input__inner-right"
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default"
>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
</div>
</div>
<span
class="t-range-input__suffix t-range-input__suffix-icon"
>
<svg
class="t-icon t-icon-calendar"
fill="none"
height="1em"
viewBox="0 0 16 16"
width="1em"
>
<path
d="M10 3H6V1.5H5V3H3a1 1 0 00-1 1v9a1 1 0 001 1h10a1 1 0 001-1V4a1 1 0 00-1-1h-2V1.5h-1V3zM5 5h1V4h4v1h1V4h2v2H3V4h2v1zM3 7h10v6H3V7z"
fill="currentColor"
fill-opacity="0.9"
/>
</svg>
</span>
</div>
</div>
</div>
</div>
</div>
</body>,
"container": <div>
<div
class="t-date-range-picker"
>
<div
class="t-range-input-popup t-range-input-popup"
>
<div
class="t-range-input t-range-input--suffix"
value=""
>
<div
class="t-range-input__inner"
>
<div
class="t-input__wrap t-range-input__inner-left"
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default"
>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
</div>
</div>
<div
class="t-range-input__inner-separator"
>
-
</div>
<div
class="t-input__wrap t-range-input__inner-right"
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default"
>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
</div>
</div>
<span
class="t-range-input__suffix t-range-input__suffix-icon"
>
<svg
class="t-icon t-icon-calendar"
fill="none"
height="1em"
viewBox="0 0 16 16"
width="1em"
>
<path
d="M10 3H6V1.5H5V3H3a1 1 0 00-1 1v9a1 1 0 001 1h10a1 1 0 001-1V4a1 1 0 00-1-1h-2V1.5h-1V3zM5 5h1V4h4v1h1V4h2v2H3V4h2v1zM3 7h10v6H3V7z"
fill="currentColor"
fill-opacity="0.9"
/>
</svg>
</span>
</div>
</div>
</div>
</div>
</div>,
"debug": [Function],
"findAllByAltText": [Function],
"findAllByDisplayValue": [Function],
"findAllByLabelText": [Function],
"findAllByPlaceholderText": [Function],
"findAllByRole": [Function],
"findAllByTestId": [Function],
"findAllByText": [Function],
"findAllByTitle": [Function],
"findByAltText": [Function],
"findByDisplayValue": [Function],
"findByLabelText": [Function],
"findByPlaceholderText": [Function],
"findByRole": [Function],
"findByTestId": [Function],
"findByText": [Function],
"findByTitle": [Function],
"getAllByAltText": [Function],
"getAllByDisplayValue": [Function],
"getAllByLabelText": [Function],
"getAllByPlaceholderText": [Function],
"getAllByRole": [Function],
"getAllByTestId": [Function],
"getAllByText": [Function],
"getAllByTitle": [Function],
"getByAltText": [Function],
"getByDisplayValue": [Function],
"getByLabelText": [Function],
"getByPlaceholderText": [Function],
"getByRole": [Function],
"getByTestId": [Function],
"getByText": [Function],
"getByTitle": [Function],
"queryAllByAltText": [Function],
"queryAllByDisplayValue": [Function],
"queryAllByLabelText": [Function],
"queryAllByPlaceholderText": [Function],
"queryAllByRole": [Function],
"queryAllByTestId": [Function],
"queryAllByText": [Function],
"queryAllByTitle": [Function],
"queryByAltText": [Function],
"queryByDisplayValue": [Function],
"queryByLabelText": [Function],
"queryByPlaceholderText": [Function],
"queryByRole": [Function],
"queryByTestId": [Function],
"queryByText": [Function],
"queryByTitle": [Function],
"rerender": [Function],
"unmount": [Function],
}
`;
exports[`DateRangePicker > className style 1`] = `
{
"asFragment": [Function],
"baseElement": <body>
<div>
<div
class="t-date-range-picker test-class"
style="width: 100px;"
>
<div
class="t-range-input-popup t-range-input-popup"
>
<div
class="t-range-input t-range-input--suffix"
value=""
>
<div
class="t-range-input__inner"
>
<div
class="t-input__wrap t-range-input__inner-left"
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default"
>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
</div>
</div>
<div
class="t-range-input__inner-separator"
>
-
</div>
<div
class="t-input__wrap t-range-input__inner-right"
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default"
>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
</div>
</div>
<span
class="t-range-input__suffix t-range-input__suffix-icon"
>
<svg
class="t-icon t-icon-calendar"
fill="none"
height="1em"
viewBox="0 0 16 16"
width="1em"
>
<path
d="M10 3H6V1.5H5V3H3a1 1 0 00-1 1v9a1 1 0 001 1h10a1 1 0 001-1V4a1 1 0 00-1-1h-2V1.5h-1V3zM5 5h1V4h4v1h1V4h2v2H3V4h2v1zM3 7h10v6H3V7z"
fill="currentColor"
fill-opacity="0.9"
/>
</svg>
</span>
</div>
</div>
</div>
</div>
</div>
</body>,
"container": <div>
<div
class="t-date-range-picker test-class"
style="width: 100px;"
>
<div
class="t-range-input-popup t-range-input-popup"
>
<div
class="t-range-input t-range-input--suffix"
value=""
>
<div
class="t-range-input__inner"
>
<div
class="t-input__wrap t-range-input__inner-left"
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default"
>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
</div>
</div>
<div
class="t-range-input__inner-separator"
>
-
</div>
<div
class="t-input__wrap t-range-input__inner-right"
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default"
>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
</div>
</div>
<span
class="t-range-input__suffix t-range-input__suffix-icon"
>
<svg
class="t-icon t-icon-calendar"
fill="none"
height="1em"
viewBox="0 0 16 16"
width="1em"
>
<path
d="M10 3H6V1.5H5V3H3a1 1 0 00-1 1v9a1 1 0 001 1h10a1 1 0 001-1V4a1 1 0 00-1-1h-2V1.5h-1V3zM5 5h1V4h4v1h1V4h2v2H3V4h2v1zM3 7h10v6H3V7z"
fill="currentColor"
fill-opacity="0.9"
/>
</svg>
</span>
</div>
</div>
</div>
</div>
</div>,
"debug": [Function],
"findAllByAltText": [Function],
"findAllByDisplayValue": [Function],
"findAllByLabelText": [Function],
"findAllByPlaceholderText": [Function],
"findAllByRole": [Function],
"findAllByTestId": [Function],
"findAllByText": [Function],
"findAllByTitle": [Function],
"findByAltText": [Function],
"findByDisplayValue": [Function],
"findByLabelText": [Function],
"findByPlaceholderText": [Function],
"findByRole": [Function],
"findByTestId": [Function],
"findByText": [Function],
"findByTitle": [Function],
"getAllByAltText": [Function],
"getAllByDisplayValue": [Function],
"getAllByLabelText": [Function],
"getAllByPlaceholderText": [Function],
"getAllByRole": [Function],
"getAllByTestId": [Function],
"getAllByText": [Function],
"getAllByTitle": [Function],
"getByAltText": [Function],
"getByDisplayValue": [Function],
"getByLabelText": [Function],
"getByPlaceholderText": [Function],
"getByRole": [Function],
"getByTestId": [Function],
"getByText": [Function],
"getByTitle": [Function],
"queryAllByAltText": [Function],
"queryAllByDisplayValue": [Function],
"queryAllByLabelText": [Function],
"queryAllByPlaceholderText": [Function],
"queryAllByRole": [Function],
"queryAllByTestId": [Function],
"queryAllByText": [Function],
"queryAllByTitle": [Function],
"queryByAltText": [Function],
"queryByDisplayValue": [Function],
"queryByLabelText": [Function],
"queryByPlaceholderText": [Function],
"queryByRole": [Function],
"queryByTestId": [Function],
"queryByText": [Function],
"queryByTitle": [Function],
"rerender": [Function],
"unmount": [Function],
}
`;
exports[`DateRangePicker > disableDate 1`] = `
[
<div
class="t-date-range-picker"
>
<div
class="t-range-input-popup t-range-input-popup"
>
<div
class="t-range-input t-range-input--suffix"
value=""
>
<div
class="t-range-input__inner"
>
<div
class="t-input__wrap t-range-input__inner-left"
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default"
>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
</div>
</div>
<div
class="t-range-input__inner-separator"
>
-
</div>
<div
class="t-input__wrap t-range-input__inner-right"
>
<div
class="t-input t-is-readonly t-size-m t-align-left t-is-default"
>
<input
class="t-input__inner"
placeholder="请选择日期"
readonly=""
type="text"
value=""
/>
</div>
</div>
<span
class="t-range-input__suffix t-range-input__suffix-icon"
>
<svg
class="t-icon t-icon-calendar"
fill="none"
height="1em"
viewBox="0 0 16 16"
width="1em"
>
<path
d="M10 3H6V1.5H5V3H3a1 1 0 00-1 1v9a1 1 0 001 1h10a1 1 0 001-1V4a1 1 0 00-1-1h-2V1.5h-1V3zM5 5h1V4h4v1h1V4h2v2H3V4h2v1zM3 7h10v6H3V7z"
fill="currentColor"
fill-opacity="0.9"
/>
</svg>
</span>
</div>
</div>
</div>
</div>,
]
`;

View File

@ -3,7 +3,7 @@ import React from 'react';
import dayjs from 'dayjs';
import { BrowseIcon, LockOnIcon } from 'tdesign-icons-react';
import { render, fireEvent, act, waitFor, vi } from '@test/utils';
import { render, fireEvent, waitFor, vi } from '@test/utils';
import DatePicker from '..';
import type { DateValue } from '../type';
@ -12,7 +12,6 @@ MockDate.set('2022-08-27');
describe('DatePicker', () => {
beforeEach(() => {
vi.useFakeTimers();
MockDate.set('2022-08-27');
});
@ -23,28 +22,18 @@ describe('DatePicker', () => {
test('clearable', async () => {
const { container } = render(<DatePicker defaultValue={'2022-09-14'} clearable={true} />);
// 模拟鼠标进入
act(() => {
fireEvent.mouseEnter(container.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseEnter(container.querySelector('input'));
const clearElement = await waitFor(() => document.querySelector('.t-input__suffix-clear'));
expect(clearElement).not.toBeNull();
fireEvent.click(clearElement);
});
test('disableDate', async () => {
const disabledDate = (date: DateValue) => date && dayjs().isBefore(date);
const disabledDate = (date: DateValue) => dayjs().isBefore(date);
const { container: container1 } = render(<DatePicker disableDate={disabledDate} />);
act(() => {
fireEvent.mouseDown(container1.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container1.querySelector('input'));
const { container: container2 } = render(<DatePicker disableDate={(date) => dayjs(date).day() === 6} />);
act(() => {
fireEvent.mouseDown(container2.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container2.querySelector('input'));
const { container: container3 } = render(
<DatePicker
@ -54,16 +43,9 @@ describe('DatePicker', () => {
}}
/>,
);
act(() => {
fireEvent.mouseDown(container3.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container3.querySelector('input'));
const { container: container4 } = render(<DatePicker disableDate={['2022-09-14', '2022-09-16']} />);
act(() => {
fireEvent.mouseDown(container4.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container4.querySelector('input'));
const { container: container5 } = render(
<DatePicker
@ -73,10 +55,7 @@ describe('DatePicker', () => {
}}
/>,
);
act(() => {
fireEvent.mouseDown(container5.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container5.querySelector('input'));
const disabledEle = await waitFor(() => document.querySelector('.t-date-picker__cell--disabled'));
expect(disabledEle).not.toBeNull();
@ -90,20 +69,14 @@ describe('DatePicker', () => {
test('enableTimePicker', async () => {
const { container } = render(<DatePicker enableTimePicker={true} />);
act(() => {
fireEvent.mouseDown(container.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container.querySelector('input'));
const panelElement = await waitFor(() => document.querySelector('.t-date-picker__panel-time'));
expect(panelElement).toBeInTheDocument();
});
test('firstDayOfWeek', async () => {
const { container } = render(<DatePicker firstDayOfWeek={3} />);
act(() => {
fireEvent.mouseDown(container.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container.querySelector('input'));
const weekElement = await waitFor(() => document.querySelector('.t-date-picker__table table thead tr th'));
expect(weekElement).toHaveTextContent('三');
});
@ -126,40 +99,28 @@ describe('DatePicker', () => {
test('mode week', async () => {
const { container: container1 } = render(<DatePicker mode={'week'} value={'2022-37th'} />);
act(() => {
fireEvent.mouseDown(container1.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container1.querySelector('input'));
const weekEle = await waitFor(() => document.querySelector('.t-date-picker__panel-week'));
expect(weekEle).not.toBeNull();
});
test('mode month', async () => {
const { container } = render(<DatePicker mode={'month'} />);
act(() => {
fireEvent.mouseDown(container.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container.querySelector('input'));
const pickerTable = await waitFor(() => document.querySelector('tbody'));
expect(pickerTable.firstChild.firstChild.firstChild).toHaveTextContent('1 月');
});
test('mode quarter', async () => {
const { container } = render(<DatePicker mode={'quarter'} />);
act(() => {
fireEvent.mouseDown(container.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container.querySelector('input'));
const pickerTable = await waitFor(() => document.querySelector('.t-date-picker__table'));
expect(pickerTable).toHaveTextContent('一季度');
});
test('mode year', async () => {
const { container } = render(<DatePicker mode={'year'} />);
act(() => {
fireEvent.mouseDown(container.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container.querySelector('input'));
const weekEle = await waitFor(() => document.querySelector('.t-date-picker__panel-year'));
expect(weekEle).not.toBeNull();
});
@ -171,10 +132,7 @@ describe('DatePicker', () => {
test('popupProps', async () => {
const { container } = render(<DatePicker popupProps={{ showArrow: true }} />);
act(() => {
fireEvent.mouseDown(container.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container.querySelector('input'));
const popupArrow = await waitFor(() => document.querySelector('.t-popup__arrow'));
expect(popupArrow).toBeInTheDocument();
});
@ -193,10 +151,7 @@ describe('DatePicker', () => {
昨天: dayjs().subtract(1, 'day').format('YYYY-MM-DD'),
};
const { container } = render(<DatePicker presets={presets} />);
act(() => {
fireEvent.mouseDown(container.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container.querySelector('input'));
const table = await waitFor(() => document.querySelector('table'));
fireEvent.mouseEnter(table);
const pickerPresets = await waitFor(() => document.querySelector('.t-date-picker__presets'));
@ -211,10 +166,7 @@ describe('DatePicker', () => {
test('timePickerProps', async () => {
const { container } = render(<DatePicker enableTimePicker={true} timePickerProps={{ value: '13:01:01' }} />);
act(() => {
fireEvent.mouseDown(container.querySelector('input'));
vi.runAllTimers();
});
fireEvent.mouseDown(container.querySelector('input'));
const panelElement = await waitFor(() => document.querySelector('.t-date-picker__panel-time .t-is-current'));
expect(panelElement).toHaveTextContent('13');
});

View File

@ -32,7 +32,7 @@ function Single() {
<HeadMenu
value={active}
onChange={(v) => setActive(v)}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" width="136" alt="logo" />}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" height="28" alt="logo" />}
operations={operations()}
style={{ marginBottom: 20 }}
>
@ -55,7 +55,7 @@ function Single() {
value={darkActive}
onChange={(v) => setDarkActive(v)}
logo={
<img className="margin_0" src="https://tdesign.gtimg.com/site/baseLogo-dark.png" width="136" alt="logo" />
<img className="margin_0" src="https://tdesign.gtimg.com/site/baseLogo-dark.png" height="28" alt="logo" />
}
operations={operationsDark()}
>

View File

@ -13,7 +13,7 @@ function CustomSide() {
<Menu
value={active}
onChange={(v) => setActive(v)}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" width="136" alt="logo" />}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" height="28" alt="logo" />}
style={{ marginRight: 20 }}
>
<MenuItem value={'0'}>
@ -43,7 +43,7 @@ function CustomSide() {
value={darkActive}
theme="dark"
onChange={(v) => setDarkActive(v)}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-dark.png" width="136" alt="logo" />}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-dark.png" height="28" alt="logo" />}
>
<MenuItem value={'0'}>
<span>仪表盘</span>

View File

@ -13,7 +13,7 @@ function Double() {
<HeadMenu
value={active}
onChange={(v) => setActive(v)}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" width="136" alt="logo" />}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" height="28" alt="logo" />}
style={{ marginBottom: 20 }}
>
<SubMenu value="sub-0" title="菜单1">
@ -47,7 +47,7 @@ function Double() {
theme="dark"
value={darkActive}
onChange={(v) => setDarkActive(v)}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-dark.png" width="136" alt="logo" />}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-dark.png" height="28" alt="logo" />}
>
<SubMenu value="sub-0" title="菜单1">
<MenuItem value="1">子菜单1</MenuItem>

View File

@ -34,7 +34,7 @@ function GroupSide() {
alt="logo"
/>
) : (
<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" width="136" alt="logo" />
<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" height="28" alt="logo" />
)
}
>

View File

@ -15,7 +15,7 @@ function Multiple() {
value={active}
expandType="popup"
onChange={(v) => setActive(v)}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" width="136" alt="logo" />}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" height="28" alt="logo" />}
style={{ marginBottom: 20 }}
>
<SubMenu value="0" title="电器">
@ -45,7 +45,7 @@ function Multiple() {
value={darkActive}
expandType="popup"
onChange={(v) => setDarkActive(v)}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-dark.png" width="136" alt="logo" />}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-dark.png" height="28" alt="logo" />}
style={{ marginBottom: 20 }}
>
<SubMenu value="0" title="电器">

View File

@ -13,7 +13,7 @@ function SingleSide() {
<Menu
value={active}
onChange={(v) => setActive(v)}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" width="136" alt="logo" />}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" height="28" alt="logo" />}
style={{ marginRight: 20 }}
>
<MenuItem value={'0'}>
@ -43,7 +43,7 @@ function SingleSide() {
value={darkActive}
theme="dark"
onChange={(v) => setDarkActive(v)}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-dark.png" width="136" alt="logo" />}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-dark.png" height="28" alt="logo" />}
>
<MenuItem value={'0'}>
<span>仪表盘</span>

View File

@ -33,7 +33,7 @@ function Single() {
theme="light"
value={active}
onChange={(v) => setActive(v)}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" width="136" alt="logo" />}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-light.png" height="28" alt="logo" />}
operations={operations()}
style={{ marginBottom: 20 }}
>
@ -55,7 +55,7 @@ function Single() {
theme="dark"
value={darkActive}
onChange={(v) => setDarkActive(v)}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-dark.png" width="136" alt="logo" />}
logo={<img src="https://tdesign.gtimg.com/site/baseLogo-dark.png" height="28" alt="logo" />}
operations={operationsDark()}
>
<MenuItem value={'0'}>

View File

@ -126699,8 +126699,8 @@ exports[`csr snapshot test > csr test src/menu/_example/custom-header.jsx 1`] =
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -126845,8 +126845,8 @@ exports[`csr snapshot test > csr test src/menu/_example/custom-header.jsx 1`] =
<img
alt="logo"
class="margin_0"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul
@ -126994,8 +126994,8 @@ exports[`csr snapshot test > csr test src/menu/_example/custom-header.jsx 1`] =
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -127140,8 +127140,8 @@ exports[`csr snapshot test > csr test src/menu/_example/custom-header.jsx 1`] =
<img
alt="logo"
class="margin_0"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul
@ -127354,8 +127354,8 @@ exports[`csr snapshot test > csr test src/menu/_example/custom-side.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -127453,8 +127453,8 @@ exports[`csr snapshot test > csr test src/menu/_example/custom-side.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul
@ -127555,8 +127555,8 @@ exports[`csr snapshot test > csr test src/menu/_example/custom-side.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -127654,8 +127654,8 @@ exports[`csr snapshot test > csr test src/menu/_example/custom-side.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul
@ -127821,8 +127821,8 @@ exports[`csr snapshot test > csr test src/menu/_example/double.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -127961,8 +127961,8 @@ exports[`csr snapshot test > csr test src/menu/_example/double.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul
@ -128105,8 +128105,8 @@ exports[`csr snapshot test > csr test src/menu/_example/double.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -128245,8 +128245,8 @@ exports[`csr snapshot test > csr test src/menu/_example/double.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul
@ -128454,8 +128454,8 @@ exports[`csr snapshot test > csr test src/menu/_example/group-side.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -128772,8 +128772,8 @@ exports[`csr snapshot test > csr test src/menu/_example/group-side.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -130742,8 +130742,8 @@ exports[`csr snapshot test > csr test src/menu/_example/multiple.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -130946,8 +130946,8 @@ exports[`csr snapshot test > csr test src/menu/_example/multiple.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul
@ -131101,8 +131101,8 @@ exports[`csr snapshot test > csr test src/menu/_example/multiple.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -131305,8 +131305,8 @@ exports[`csr snapshot test > csr test src/menu/_example/multiple.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul
@ -133158,8 +133158,8 @@ exports[`csr snapshot test > csr test src/menu/_example/single.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -133303,8 +133303,8 @@ exports[`csr snapshot test > csr test src/menu/_example/single.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul
@ -133452,8 +133452,8 @@ exports[`csr snapshot test > csr test src/menu/_example/single.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -133597,8 +133597,8 @@ exports[`csr snapshot test > csr test src/menu/_example/single.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul
@ -133811,8 +133811,8 @@ exports[`csr snapshot test > csr test src/menu/_example/single-side.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -133910,8 +133910,8 @@ exports[`csr snapshot test > csr test src/menu/_example/single-side.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul
@ -134012,8 +134012,8 @@ exports[`csr snapshot test > csr test src/menu/_example/single-side.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-light.png"
width="136"
/>
</div>
<ul
@ -134111,8 +134111,8 @@ exports[`csr snapshot test > csr test src/menu/_example/single-side.jsx 1`] = `
>
<img
alt="logo"
height="28"
src="https://tdesign.gtimg.com/site/baseLogo-dark.png"
width="136"
/>
</div>
<ul

View File

@ -8,12 +8,12 @@ const testConfig: InlineConfig = {
process.env.NODE_ENV === 'test-snap'
? ['test/snap/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}']
: ['src/**/__tests__/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
globals: true,
environment: 'jsdom',
testTimeout: 16000,
transformMode: {
web: [/\.[jt]sx$/],
},
globals: true,
environment: 'jsdom',
testTimeout: 16000,
transformMode: {
web: [/\.[jt]sx$/],
},
coverage: {
provider: 'istanbul',
exclude: ['src/_common'],