Commit Graph

127 Commits

Author SHA1 Message Date
黑雨
8b05546367
feat: Replace dropdownClassName to popupClassName (#36880) 2022-08-05 11:21:07 +08:00
二货机器人
1bf275fa9a
feat: Picker support PureRender (#36458)
* feat: Picker support PureRender

* test: update snapshot

* fix: timepicker wrapper
2022-07-11 14:58:59 +08:00
zombiej
8749c1ae04 chore: merge master 2022-06-22 15:18:03 +08:00
二货机器人
2c2c631bfd
chore: prettier components (#36171) 2022-06-22 14:57:09 +08:00
MadCcc
a32f5d69f8 Merge branch 'feature' into next-merge-feature 2022-05-13 14:42:49 +08:00
MadCcc
2d70027f45 Merge branch 'master' into feature-merge-master 2022-05-12 15:56:18 +08:00
afc163
84a969e5e0 chore: sync master into next branch 2022-05-11 15:36:22 +08:00
Karott
338ec7dad7
perf: refactor devWarning for production code size (#35411)
* pref: better code style for production

* refactor `devWarning`

* don't use `useEffect` only wrap `devWarning`

* chore: add 'noop' to coverage

* chore: add test cases for devWarning

* chore: add test case

* chore: update test cases for devWarning

* chore: restore test script command

* fix: remove 'throw new Error'

* should not use `throw` for browser

* chore: update test case for AutoComplete

* perf: add prefix for `devWarning`

* update RegExp for UMD

* add prefix for ES and CJS

* chore: better code style

* perf:

* upgrade antd-tools

* remove `injectWarningCondition`

* rename `devWarning` to `warning`

* chore: better code style

* chore: better code style

* chore: restore hasValidName
2022-05-10 15:43:29 +08:00
MadCcc
1f5e271eb6 Merge branch 'master' into next-merge-master 2022-05-09 21:26:25 +08:00
MadCcc
01ebb6a563
test: update snapshot (#35452) 2022-05-09 20:25:55 +08:00
黑雨
42f91f970f
feat: edit date-picker to hook (#35425) 2022-05-09 10:34:10 +08:00
iamkun
7dd0bd396d fix: update merge 2022-05-06 14:02:45 +08:00
afc163
12d98f9ed6
chore: update snapshot due to rc-trigger bumped (#35106) 2022-04-20 00:16:39 +08:00
MadCcc
9b73058045
refactor: wrap picker with FC (#34994)
* refactor: wrap picker with FC

* chore: code clean

* feat: cast type

* test: fix test
2022-04-15 10:45:20 +08:00
iamkun
f8dc201218 fix merge 2022-03-18 16:57:11 +08:00
MadCcc
ed651f450d
fix: missing status style for RangePicker (#34509)
* fix: range picker should has status style

* chore: code clean

* chore: code clean

* chore: code clean
2022-03-15 18:38:22 +08:00
MadCcc
8054abe81f
feat: DatePicker and TimePicker support status (#34073)
* feat: DatePicker and TimePicker support status

* docs: demo add version

* chore: code clean
2022-02-16 21:14:51 +08:00
iamkun
b22815d4d2 feat(moment-to-dayjs): replace date-time lib Moment.js with Day.js 2022-02-14 15:01:00 +08:00
二货机器人
2df11184f4
test: Demo check popup content (#33378)
* auto demo

* chore: update demo snapshot

* fix: trigger mock ref logic

* chore: try 2 test case

* chore: more snapshot

* chore: update snapshot

* chore: fix ts

* chore: split test

* test: Update test case

* chore: fix test order
2021-12-23 11:51:10 +08:00
damon.chen
e7f5030f2b
fix: change Ok to OK (#32259)
* 修复AutoComplete组件allowClear属性的说明有歧义的问题

* fix: change Ok to OK

* update jest snapshot

Co-authored-by: chj_damon <chjdamon@gmail.com>
2021-09-23 22:13:05 +08:00
afc163
1d894a2276 test: update snapshot 2021-06-10 13:10:15 +08:00
afc163
79ae103069
fix: TimePicker.RangePicker popupClassName not working (#29589)
* fix: TimePicker.RangePicker popupClassName not working

close #29583

* fix ci
2021-03-02 22:09:21 +08:00
叶枫
6e89866694
feat: 动画样式添加 prefix (#29268)
* feat: add prefix

* fix: 剩余

* fix: test

* fix: test

* fix: test

* fix: test

* fix: 传了 name 则使用传的

* fix: pop 添加 prefix

* fix: Ok OK ?

* fix: modal confirm

* fix: select

* fix: test
2021-02-08 17:09:13 +08:00
偏右
e7bed7cff7
perf(📦): upgrade @ant-design/colors and remove rc-trigger from deps (#27761)
* perf(📦): upgrade @ant-design/colors

* move rc-trigger to devDeps

* fix lint

* update snapshot

* update snapshot

Co-authored-by: 二货机器人 <smith3816@gmail.com>
2020-11-14 00:43:12 +08:00
骗你是小猫咪
6fba4d1136
test: demo -> ui test (#24475)
* test: demo -> ui test

* improve comment image width

* use argos-ci

* use by cicleci

* fix circle run

* rebase master

* try pipeline var

* use another branch var

* fix commit id

* ignore image test file

* remove useless report

* fix test coverage
2020-10-23 18:50:46 +08:00
偏右
83ddfb807e
test: Enable transition and animation in jest (#26571)
* test:  add test cases to increase coverage

* test: fix snapshot

* fix: test node envioronment

* fix: test node envioronment

* fix test case

* test: refactor menu test cases

* test: update test code style

* test: add more menu test cases

* add comment

* test: update snapshot

* fix: alert test case

* fix: form onLeaveEnd test cov

* test: fix button click wave test cases

* chore: clean up snapshots
2020-09-18 16:53:18 +08:00
Alex
bf45c4c1b0
style: 💄 className prop ordering #26594 (#26602)
close #26594
2020-09-06 13:07:39 +08:00
xrkffgg
2005546d22
test: update snap (#26467) 2020-08-28 21:43:44 +08:00
二货机器人
77cbf724cf
fix: TimePicker.RangePicker props (#26446) 2020-08-28 11:46:35 +08:00
afc163
4b239d65c0 fix snapshot 2020-06-06 14:53:27 +08:00
afc163
019eeec3ce fix: TimePicker.RangePicker don't support bordred={false}
when has className

close #24768
2020-06-06 14:37:08 +08:00
afc163
e09ce6284e 🎬 update DatePicker and TimePicker demo 2020-06-06 14:01:29 +08:00
二货机器人
2e284aa017
chore: small bundle size (#24135)
* update warning

* rm warning

* replace with dev warning

* fix test

* fix site

* Update webpack.config.js

Co-authored-by: 偏右 <afc163@gmail.com>

* Update webpack.config.js

* fix sytax

* adjust

* move into function

Co-authored-by: 偏右 <afc163@gmail.com>
2020-05-14 15:57:04 +08:00
afc163
50e33768a9 fix DatePicker snapshot 2020-05-13 16:10:48 +08:00
Tom Xu
b7e877aeef
refactor(slider): rewrite with hook (#23474)
* refactor(slider): rewrite with hook

* improve test

* Revert "improve test"

This reverts commit 48cd83d0cc.

* improve test

* improve test 2
2020-04-22 15:58:57 +08:00
Tanmoy Bhowmik
e3d2754b1d
fix: Fix popupClassName prop in timepicker (#23214)
* fix(time-picker): combine dropdownClassName and popupClassName prop

* test(time-picker): add test for popupClassName and dropdownClassName prop

* chore(time-picker): add demo for popupClassName prop

* test(time-picker): remove rc-picker dependency

* doc(time-picker): change default prop of popupClassName to undefined

* fix(time-picker): remove the use of dropdownClassName

* Apply suggestions from code review

Co-authored-by: 偏右 <afc163@gmail.com>
2020-04-14 16:49:58 +08:00
二货机器人
ecf025548b
chore: adjust RangePicker style (#23074)
* adjust range color

* fix lint

* update color

* update dark logic

* adjust little of arrow

* use icon

* update font size

* update snashot
2020-04-09 13:18:13 +08:00
二货机器人
b174f98c6c
chore: Adjust range picker style (#22847)
* adjust rangepicker style

* update snapshot

* fix lint

* add aria label
2020-04-02 15:05:31 +08:00
afc163
c5e5a8c895 update snapshots 2020-03-05 20:32:38 +08:00
Saeed Rahimi
676de29eb4 feat: added rtl direction to all of ant-design components (#19380)
* rtl demo change en-us description

* change bundlesize css limit

* RTL: modal component (exclude confirm)

* RTL: table component

* RTL: pagination component

* cleanup rtl demo

* fix pagination.tsx compile error

* RTL: button and button-group

* RTL: Steps component

* fix rtl demo style

* fix input suffix icon alignment

* fix select component arrow issue

* RTL: form component

* add pagination rtl test

* fix test lint error

* RTL: rate component

* RTL: radio and radio group components

* RTL: tree-select component

* some fixes to RTL components

* RTL: badge component

* fix rtl issue in inline form

* fix input component rtl padding issue

* fix switch component text rtl issue

* fix table grouped header text-align

* add rtl support to whole demo with RTL button

* Update rtl demo responsive

* RTL: page-header component

* RTL: typography component

* RTL: Dropdown (Partial)

* update config-provider doc

* RTL: input component

* RTL: select component

* RTL: switch component

* RTL: tree component

* fix rtl demo lint

* rtl demo change en-us description

* RTL: modal component (exclude confirm)

* RTL: table component

* RTL: pagination component

* cleanup rtl demo

* RTL: button and button-group

* RTL: Steps component

* fix rtl demo style

* fix input suffix icon alignment

* RTL: form component

* RTL: rate component

* RTL: radio and radio group components

* RTL: tree-select component

* RTL: badge component

* fix rtl issue in inline form

* fix input component rtl padding issue

* add rtl support to whole demo with RTL button

* fix lost changes after rebase

* fix lint errors

* RTL: Transfer Component

* RTL: upload component

* RTL: update avatar demo

* RTL: comment component

* RTL: collapse component

* RTL: carousel component

* update snapshots

* RTL: Card component

* RTL: descriptions component

* RTL:  Empty component

* RTL: list component

* RTL: slider component

* slider component import/order

* add shared rtlTest

* RTL: Statistic component

* RTL: tooltip components

* RTL: popover component

* RTL: timeline component

* RTL: tag component

* RTL: alert component

* RTL: drawer component

* RTL: Tab component

* change direction definition

* RTL: progress component

* input.tsx, remove duplicate after rebase

* fix demo.less after rebase

* fix ant-row-rtl after rebase

* fix upload issues in rtl

* badge rtl demo margin fix

* fix: tabs with icon margin

* fix: radio-wrapper margin

* fix: table component after rebase

* fix: centered modal text-align

* update slider snapshot

* RTL: popconfirm component

* RTL: back-top component

* RTL: spin component

* RTL: result component

* RTL: skeleton component

* RTL: menu component

* RTL: time-picker component

* RTL: calendar component

* RTL: date-picker component

* RTL: home page

* update snapshots

* test: add auto-complete rtl test

* test: add avatar component rtl tests

* test: add badge component rtl tests

* test: add breadcrumb component rtl tests

* test: add button components rtl tests

* test: add card component rtl tests

* test: add carousel component rtl tests

* test: add cascader component rtl tests

* test: add checkbox component rtl tests

* test: add collapse component rtl tests

* test: add comment component rtl tests

* test: add dropdown component rtl tests

* test: add empty component rtl tests

* test: add form component rtl tests

* test: add grid component rtl tests

* test: add input component rtl tests

* test: add search component rtl tests

* test: add input-number component rtl tests

* test: add layout component rtl tests

* test: add list component rtl tests

* test: add mentions component rtl tests

* test: add modal component rtl tests

* test: add page-header component rtl tests

* test: add pagination component rtl tests

* test: add radio component rtl tests

* test: add rate component rtl tests

* test: add select component rtl tests

* test: add slider component rtl tests

* test: add steps component rtl tests

* test: add switch component rtl tests

* test: add table component rtl tests

* test: add transfer component rtl tests

* test: add tree component rtl tests

* test: add tree-select component rtl tests

* test: add typography component rtl tests

* test: add upload component rtl tests

* test: add affix component rtl tests

* update calendar tests

* increase css file maxSize

* update snapshots

* remove workflows to allow push

* remove duplicate reverse prop from slider

* fix: remove table demo from config-provider

* fix: remove table demo from config-provider

* fix lint error

* Added direction property to ConfigProvider

* cascader rtl tests added

* update config-provider doc

* RTL: grid system

* RTL: input component

* RTL: switch component

* fix rtl demo lint

* RTL: modal component (exclude confirm)

* RTL: table component

* RTL: pagination component

* cleanup rtl demo

* fix pagination.tsx compile error

* RTL: button and button-group

* RTL: Steps component

* fix rtl demo style

* RTL: form component

* add pagination rtl test

* RTL: rate component

* RTL: radio and radio group components

* RTL: tree-select component

* RTL: badge component

* fix rtl issue in inline form

* fix input component rtl padding issue

* add rtl support to whole demo with RTL button

* RTL: input component

* RTL: select component

* RTL: switch component

* RTL: tree component

* fix rtl demo lint

* rtl demo change en-us description

* RTL: modal component (exclude confirm)

* RTL: table component

* RTL: pagination component

* cleanup rtl demo

* RTL: button and button-group

* RTL: Steps component

* fix rtl demo style

* fix input suffix icon alignment

* RTL: form component

* RTL: rate component

* RTL: radio and radio group components

* RTL: tree-select component

* RTL: badge component

* fix rtl issue in inline form

* fix input component rtl padding issue

* add rtl support to whole demo with RTL button

* input.tsx, remove duplicate after rebase

* fix ant-row-rtl after rebase

* update snapshots

* test: add cascader component rtl tests

* test: add pagination component rtl tests

* update calendar tests

* update snapshots

* fix: remove table demo from config-provider

* fix: remove table demo from config-provider

* fix lint error

* update direction.md icons

* dropdown and cascader default placement in rtl

* update snapshots

* fix lint errors

* remove duplicate import

* update snapshots

* update snapshot

* update calendar snapshot

* update snapshots

* integrate with new rc-picker

* update snapshots

* fix lint errors

* update snapshot

* update snapshots

* update snapshots

* update snapshots :|

* update snapshots

* fix compile error.

* fix typo after rebase

* update snapshots

* remove workflows to allow push

* update snapshots

* update snapshots

* fix dist error

* front-page css fix

* update snapshots

* fix lint and test issues

* restore cascader index.less

* update snapshots

* fix logo in rtl and demo controls

* ci errors

* resolve steps/index.tsx conflicts

* tooltip family demo remove inline style

* resolve table/Table.tsx conflicts

* resolve modal/Modal.tsx conflicts

* resolve cascader/index.tsx conflicts

* add workflows from upstream

* update snapshots

* revert logo to default

* fix codebox demo direction of placements

* resolve tooltip overlayClassName conflicts

* update snapshots

* update popover test

* fix: cascader miss popupClassName

* fix: fix select missing dropdownClassName

* chore: Update snapshot

* chore: Adjust menu use rtl logic

* docs: Update demo line color

Co-authored-by: 二货机器人 <smith3816@gmail.com>
2020-01-02 19:10:16 +08:00
二货机器人
407a41a142
feat: New Picker (#20023)
* init generate

* basic style

* basic panel style

* update mode panel style

* update style

* generate More picker

* default clear icon

* chore: Update separator type

* feat: Add ranged start & end className

* update range style

* Add transition effect

* support size config

* adjust range style

* chore: Auto fill time by showTime

* auto set time by format

* update disabled style

* update seperator style

* ranges style

* support extra footer style

* remove useless test case
part is not usable anymore
part is already tested in rc-picker

* init calendar

* all demos

* fix calendar basic test

* fix time-picker test case

* update snapshot

* fix tooltip test case & lint

* fix locale & style lint

* fix compile

* fix style

* fix style lint

* fix calendar style

* update rc-picker version

* adjust style

* move picker placeholder into locale file

* update snapshot

* add hover style

* update picker version

* fix icon position & style

* update picker version

* update deps for pading

* fix: align of suffix

* feat: Year & Month support range effect

* adjust range style to support up-down placement

* update rc-picker

* update range picker style

* adjust extra footer line style

* update snapshot

* fix: Locale error

* fix: style lint

* fix: add missing button style deps

* update test case

* fix firefox additional white line style issue

* rollback demo

* fix ff additional blue color

* docs: Remove placeholder in demo

* rangepicker ranges is tag now

* connect start / end background color with picker range

* update deps

* update deps for fixing blur text issue

* hide start-end demo

* range hover style update

* hover range with ranged value

* black magic of inner hover style

* hover style of range adjust

* fix css select miss hit on DatePicker

* remove one eslint rule

* fade range hovered color

* week should alway not show the cell selection

* update style of selection

* update snapshot

* fix style

* add margin back

* update rc-picker deps

* update date & time picker & form style

* fix disabled demo & update form style

* update docs about allowEmpty

* hide arrow in time range picker

* add hover & focused style

* fix lint

* fix style & update snapshot

* raise disabled selector proirity

* fix disabled today border color

* extra footer provides an bottom line

* time picker hover support transition background

* add padding style

* fix Firefox not correct calculate inline-flex

* fix style

* fix week picker missing today border color

* rm useless padding

* Force padding to 0

* test coverage

* dedup eslint rule

* adjust logic to imporve coverage

* fix render cell logic
2019-12-11 23:32:19 +08:00
骗你是小猫咪
114fdd9333
fix: upgrade rc-tooltip lint fail (#19408)
* fix: upgrade rc-tooltip lint fail

* fix tooltip typescript type

* rebase and update snapshots

* update tests

* change trigger mock export

* upgrade rc-trigger

* fix type error

* upgrade dependencies

* update snapshots

* upgrade rc-calendar and test use sleep

* update snapshots

* fix test fail

* update snapshots
2019-12-05 16:15:10 +08:00
zombiej
3d8a4f3612 merge master 2019-08-29 23:41:46 +08:00
afc163
a51f7a0508 test unmount 2019-08-27 18:31:01 +08:00
vagusX
149729e524
use ant design icons 4.0 (#18217)
* feat: use @ant-design/icons@4.0

* feat: use createFromIconfontCN to make site works

* feat: update doc for Icon

* feat: use icon in component Alert

* feat: use icon in component Avatar

* feat: use icon in component Breadcrumb

* feat: use icon in component Button

* feat: use icon in component Cascader

* feat: use icon in component Collapse

* feat: use icon in component Datepicker

* feat: use icon in component Dropdown

* feat: use icon in component Form

* feat: use icon in component Input

* feat: use icon in component InputNumber

* feat: use icon in component Layout

* feat: use icon in component Mention

* feat: use icon in component Message

* feat: use icon in component Modal

* feat: use icon in component Notification

* feat: use icon in component PageHeader

* feat: use icon in component Pagination

* feat: use icon in component Popconfirm

* feat: use icon in component Progress

* feat: use icon in component Rate

* feat: use icon in component Result

* feat: use icon in component Select

* feat: use icon in component Step

* feat: use icon in component Switch

* feat: use icon in component Table

* feat: use icon in component Tab

* feat: use icon in component Tag

* feat: handle rest component which using Icon

* fix: remove unused vars

* feat: use latest alpha ant design icons

* fix: failed test in uploadlist.test.js

* test: update snapshot for icons

* doc: add Icon for site

* doc: use @ant-design/icons in site

* chore: use latest icons

* fix: tslint issue

* fix: test cases

* fix: types for react

* fix: lint rules for import orders

* fix: use @ant-design/icons@4.0.0-alpha.5 to avoid insert css in server render

* fix: eslint error in demo/**.md

* inject antd icons

* update snapshot

* fix site

* doc: update docs

* fix: code snippets icon in site

* feat: use latest @ant-design/icons

* fix: icon props in message
2019-08-13 14:07:17 +08:00
afc163
a62a3e95d3
⌨️ Improve TimePicker accessibility 2019-06-14 14:51:28 +08:00
lhyt
c83d8706b3 test: update snapshots 2019-06-06 01:47:20 +08:00
lhyt
b2f0a97a2c test: update snapshots 2019-06-06 01:02:40 +08:00
啸生
32bc6995d6
update snapshot (#16059)
<!--
First of all, thank you for your contribution! 😄

New feature please send pull request to feature branch, and rest to master branch.
Pull request will be merged after one of collaborators approve.
Please makes sure that these form are filled before submitting your pull request, thank you!

[[中文版模板 / Chinese template](https://github.com/ant-design/ant-design/blob/master/.github/PULL_REQUEST_TEMPLATE/pr_cn.md)]
-->
### 🤔 This is a ...

- [ ] New feature
- [ ] Bug fix
- [ ] Site / document update
- [ ] Component style update
- [ ] TypeScript definition update
- [ ] Refactoring
- [ ] Code style optimization
- [ ] Branch merge
- [x] Other (about what?)
2019-04-13 21:48:05 +08:00
zombieJ
41316e69e8
update snapshot (#16017) 2019-04-11 12:48:36 +08:00
诸岳
3c75c4f4e4
fix(TimePicker): prop locale should works, close #15813 (#15837) 2019-04-04 14:01:28 +08:00
偏右
ad99b4322d test: Add eslint-plugin-jest (#15825) 2019-04-03 15:54:26 +08:00
zy410419243
39d648e3b8 test: update cases for TimePicker 2019-03-07 14:43:25 +08:00
zombieJ
4d1a998246
add component param in warning (#15078)
* add component param in warning

* update snapshot
2019-02-27 15:32:29 +08:00
zombieJ
d1fde3670c
Time picker allow clear (#14490)
close #14472
2019-01-25 10:31:09 +08:00
zombiej
0a67272ae4 add locale update 2019-01-10 21:55:21 +08:00
zombiej
12af9a9dca icon add aria-label support 2019-01-10 21:55:21 +08:00
陈帅
8e11f0bdb9 merge support prettier 2018-12-07 20:02:01 +08:00
HeskeyBaozi
a1074a6ace add suffix icon interface to time-picker 2018-09-21 13:40:27 +08:00
HeskeyBaozi
976f6969f4 update test snapshot 2018-09-07 14:14:23 +08:00
包子熊
67024893ce Hotfix/icon issue (#12016)
* fix progress icon

* remove IconDisplay fields.js

* update progress test snapshot

* fix form item circle filled

* update form-item test snapshot

* fix close icon in upload item list

* fix alert icon theme

* update alert test snapshot

* fix time picker clear icon

* fix test snapshot

* fix rotate icon in the header

* update test snapshot

* update new tree test snapshot

* fix icon position

* fix old icon and new icon both display

* fix card actions icon position
2018-09-03 19:29:27 +08:00
HeskeyBaozi
d6131fe18d update test snapshot 2018-09-02 20:59:37 +08:00
HeskeyBaozi
0c9465aaf9 upgrade icons library 2018-08-27 20:40:11 +08:00
HeskeyBaozi
ee1d2469a8 upgrade test snapshot 2018-08-24 18:36:08 +08:00
HeskeyBaozi
796de6390b update test snapshot 2018-08-14 15:32:29 +08:00
HeskeyBaozi
049ce5c307 use time-picker with svg icon 2018-08-14 14:45:04 +08:00
愚道
653ec40b30 update test snapshot 2018-06-23 11:31:42 +08:00
afc163
9f16d066af Fix lint problems from eslint-config-airbnb@17 2018-06-22 21:05:13 +08:00
Wei Zhu
9678d3fcfd
Focus && blur support (#8204)
* Add test for select

* Add focus() and blur() for AutoComplete

* Add focus() and blur() to Cascader

* Add focus test for input

* Add focus() and blur() for Checkbox

* Add focus() and blur() for Radio

* Add focus() and blur() for Switch

* Add blur() for TimePicker

* Add focus() and blur() to TreeSelect
2017-11-19 01:41:40 +08:00
afc163
0908293c42 update TimePicker demo snapshot 2017-10-28 15:02:33 +08:00
afc163
9dfde961f3 Fix time-picker demo 2017-10-16 20:29:49 +08:00
Benjy Cui
829b5f87bf feat: make default locale to enUS (#7553)
* feat: make default locale to enUS

* test: fix CI

* docs: update getting started
2017-09-26 23:12:47 +08:00
Wei Zhu
1a8e738142 Set snapshotSerializers 2017-04-02 18:09:23 +08:00
偏右
9a0b9adc1e feat: 12 hours time picker (#5434)
* TimePicker support 12 hours format, close #4063

* Add new demo snapshot
2017-03-22 17:53:37 +08:00
Wei Zhu
f6b1e942e3 Jest 19 (#5361)
* Upgeade to jest 19

* Use jest.spyOn
2017-03-17 18:56:30 +08:00
Wei Zhu
07103b9fb6 Don't ignore test files. 2016-12-14 14:48:09 +08:00
Wei Zhu
17a0a33283 Restructure tests. 2016-12-14 14:41:39 +08:00