Skip to content

Commit

Permalink
test: 更新测试
Browse files Browse the repository at this point in the history
  • Loading branch information
twinh committed May 10, 2021
1 parent b67ee0b commit bf54dc5
Show file tree
Hide file tree
Showing 10 changed files with 283 additions and 243 deletions.
39 changes: 20 additions & 19 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,36 +7,37 @@
"scripts": {
"test": "jest"
},
"dependencies": {
"@mxjs/css": "^0.2.0"
"jest": {
"preset": "jest-preset-miaoxing"
},
"devDependencies": {
"@miaoxing/dev": "^6.4.0",
"@testing-library/react": "^11.2.6",
"enzyme": "^3.11.0",
"enzyme-to-json": "^3.5.0",
"history": "^5.0.0",
"next-url": "^1.0.0",
"prop-types": "^15.7.2",
"dependencies": {
"react": "^16.13.1",
"react-router": "^5.2.0",
"@mxjs/css": "^0.2.0",
"@ant-design/icons": "^4.6.2",
"miaoxing": "^0.2.3",
"@mxjs/upload": "^0.4.0",
"bizcharts": "^3.5.6",
"color": "^3.1.2",
"lodash.merge": "^4.6.2"
"next-url": "^1.0.0",
"prop-types": "^15.7.2",
"history": "^5.0.0",
"lodash.merge": "^4.6.2",
"@mxjs/a-clink": "^0.1.6",
"@mxjs/a-table": "^0.3.9",
"@mxjs/a-page": "^0.2.6",
"@mxjs/a-form": "^0.2.13"
},
"devDependencies": {
"@miaoxing/dev": "^6.4.0",
"@testing-library/react": "^11.2.6",
"@mxjs/test": "^0.1.6"
},
"ciDependencies": {
"@mxjs/css": "miaoxing/mxjs-css",
"babel-preset-miaoxing": "miaoxing/babel-preset-miaoxing",
"jest-preset-miaoxing": "miaoxing/jest-preset-miaoxing",
"@mxjs/css": "miaoxing/mxjs-css",
"@miaoxing/dev": "miaoxing/dev",
"jest-preset-miaoxing": "miaoxing/jest-preset-miaoxing"
},
"jest": {
"preset": "jest-preset-miaoxing",
"snapshotSerializers": [
"enzyme-to-json/serializer"
]
"@mxjs/router": "miaoxing/mxjs-router"
}
}
1 change: 0 additions & 1 deletion tests/mocks/fileMock.js

This file was deleted.

1 change: 0 additions & 1 deletion tests/mocks/styleMock.js

This file was deleted.

42 changes: 42 additions & 0 deletions tests/pages/admin/groups/__snapshots__/edit.test.js.snap
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`admin/groups form 1`] = `
[MockFunction] {
"calls": Array [
Array [
Object {
"method": "get",
"url": "/admin-api/groups/defaults",
},
],
Array [
Object {
"data": Object {
"id": 1,
"name": "测试分组",
"sort": 50,
},
"loading": true,
"method": "POST",
"url": "/admin-api/groups",
},
],
],
"results": Array [
Object {
"type": "return",
"value": Promise {
"reject": [Function],
"resolve": [Function],
},
},
Object {
"type": "return",
"value": Promise {
"reject": [Function],
"resolve": [Function],
},
},
],
}
`;
60 changes: 60 additions & 0 deletions tests/pages/admin/groups/__snapshots__/index.test.js.snap
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`admin/groups delete 1`] = `
[MockFunction] {
"calls": Array [
Array [
Object {
"method": "get",
"url": "/admin-api/groups?page=1&limit=20",
},
],
Array [
Object {
"dataType": "json",
"loading": true,
"method": "delete",
"url": "/admin-api/groups/1",
},
],
],
"results": Array [
Object {
"type": "return",
"value": Promise {
"reject": [Function],
"resolve": [Function],
},
},
Object {
"type": "return",
"value": Promise {
"reject": [Function],
"resolve": [Function],
},
},
],
}
`;

exports[`admin/groups index 1`] = `
[MockFunction] {
"calls": Array [
Array [
Object {
"method": "get",
"url": "/admin-api/groups?page=1&limit=20",
},
],
],
"results": Array [
Object {
"type": "return",
"value": Promise {
"reject": [Function],
"resolve": [Function],
},
},
],
}
`;
65 changes: 65 additions & 0 deletions tests/pages/admin/groups/edit.test.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
import React from 'react';
import $ from 'miaoxing';
import Form from '../../../../pages/admin/groups/new';
import {app} from '@mxjs/app';
import {render, screen, fireEvent, waitFor} from '@testing-library/react';
import {MemoryRouter} from 'react-router';
import {bootstrap, createPromise, resetUrl, setUrl} from '@mxjs/test';

bootstrap();

describe('admin/groups', () => {
beforeEach(function () {
setUrl('admin/groups/new');
app.page = {
collection: 'admin/groups',
index: false,
};
});

afterEach(() => {
resetUrl();
app.page = {};
});

test('form', async () => {
const promise = createPromise();
const promise2 = createPromise();
const promise3 = createPromise();

$.http = jest.fn()
// 读取默认数据
.mockImplementationOnce(() => promise.resolve({
code: 1,
data: {
id: 1,
sort: 50,
},
}))
.mockImplementationOnce(() => promise2.resolve({
code: 1,
data: [],
}))
.mockImplementationOnce(() => promise3.resolve({
code: 1,
data: [],
}));

const {getByLabelText} = render(<MemoryRouter>
<Form/>
</MemoryRouter>);

await Promise.all([promise]);

// 看到表单加载了数据
await waitFor(() => expect(getByLabelText('顺序').value).toBe('50'));
expect(getByLabelText('名称').value).toBe('');

// 提交表单
fireEvent.change(getByLabelText('名称'), {target: {value: '测试分组'}});
fireEvent.click(screen.getByText('提 交'));

await Promise.all([promise2]);
expect($.http).toMatchSnapshot();
});
});
94 changes: 0 additions & 94 deletions tests/pages/admin/groups/edit.test.skip.js

This file was deleted.

Loading

0 comments on commit bf54dc5

Please sign in to comment.