diff --git a/.eslintrc b/.eslintrc
index 77aec6aca70..3962fcbe516 100644
--- a/.eslintrc
+++ b/.eslintrc
@@ -27,6 +27,7 @@
// allow specifying true explicitly for boolean props
"react/jsx-boolean-value": 0,
"react-hooks/rules-of-hooks": "error",
- "react/no-did-update-set-state": 0
+ "react/no-did-update-set-state": 0,
+ "jsx-quotes":"off"
}
}
diff --git a/jest.config.js b/jest.config.js
index ddaa1f15a13..41a95f1ea96 100644
--- a/jest.config.js
+++ b/jest.config.js
@@ -12,7 +12,7 @@ module.exports = {
},
setupFilesAfterEnv: [
require.resolve('jest-dom/extend-expect'),
- require.resolve('react-testing-library/cleanup-after-each'),
+ require.resolve('@testing-library/react/cleanup-after-each'),
'./scripts/global.js'
],
coveragePathIgnorePatterns: [
diff --git a/package.json b/package.json
index d0edae276d5..613314d5dd9 100644
--- a/package.json
+++ b/package.json
@@ -82,7 +82,7 @@
"pretty-format": "^24.0.0",
"react": "^16.8.3",
"react-dom": "^16.8.3",
- "react-testing-library": "^6.0.0",
+ "@testing-library/react": "^8.0.0",
"remark-parse": "^6.0.3",
"remark-stringify": "^6.0.4",
"semver-regex": "^2.0.0",
diff --git a/packages/react/src/.eslintrc b/packages/react/src/.eslintrc
deleted file mode 100644
index 55f121d152d..00000000000
--- a/packages/react/src/.eslintrc
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "env": {
- "jest": true
- }
-}
diff --git a/packages/react/src/__tests__/actions.spec.js b/packages/react/src/__tests__/actions.spec.js
index 167648755d8..fb8027b9027 100644
--- a/packages/react/src/__tests__/actions.spec.js
+++ b/packages/react/src/__tests__/actions.spec.js
@@ -5,7 +5,7 @@ import SchemaForm, {
connect,
createAsyncFormActions
} from '../index'
-import { render } from 'react-testing-library'
+import { render } from '@testing-library/react'
beforeEach(() => {
registerFormField('string', connect()(props =>
{props.value}
))
diff --git a/packages/react/src/__tests__/context.spec.js b/packages/react/src/__tests__/context.spec.js
index 5daeebb320d..f311b598499 100644
--- a/packages/react/src/__tests__/context.spec.js
+++ b/packages/react/src/__tests__/context.spec.js
@@ -7,7 +7,7 @@ import SchemaForm, {
FormConsumer,
createFormActions
} from '../index'
-import { render, fireEvent, act } from 'react-testing-library'
+import { render, fireEvent, act } from '@testing-library/react'
beforeEach(() => {
registerFormField(
diff --git a/packages/react/src/__tests__/destruct.spec.js b/packages/react/src/__tests__/destruct.spec.js
index 10c8f3a2f56..37a3ec6726f 100644
--- a/packages/react/src/__tests__/destruct.spec.js
+++ b/packages/react/src/__tests__/destruct.spec.js
@@ -1,40 +1,38 @@
import React, { Fragment } from 'react'
import SchemaForm, { Field, registerFormField, connect } from '../index'
import { toArr } from '@uform/utils'
-import { render } from 'react-testing-library'
-
-beforeEach(() => {
- registerFormField('string', connect()(props => {props.value}
))
-
- registerFormField('array', props => {
- const { value, mutators, renderField } = props
- return (
-
- {toArr(value).map((item, index) => {
- return (
-
- {renderField(index)}
-
- )
- })}
-
-
- )
- })
+import { render } from '@testing-library/react'
+
+registerFormField('string', connect()(props => {props.value}
))
+
+registerFormField('array', props => {
+ const { value, mutators, renderField } = props
+ return (
+
+ {toArr(value).map((item, index) => {
+ return (
+
+ {renderField(index)}
+
+ )
+ })}
+
+
+ )
})
test('destruct with initial values', async () => {
const TestComponent = () => {
return (
-
+
)
}
@@ -49,9 +47,9 @@ test('destruct with initial values in array', async () => {
const TestComponent = () => {
return (
-
-
-
+
+
+
diff --git a/packages/react/src/__tests__/dynamic.spec.js b/packages/react/src/__tests__/dynamic.spec.js
index a728a0de516..2c57ee7d446 100644
--- a/packages/react/src/__tests__/dynamic.spec.js
+++ b/packages/react/src/__tests__/dynamic.spec.js
@@ -8,70 +8,68 @@ import SchemaForm, {
createVirtualBox
} from '../index'
import { toArr } from '@uform/utils'
-import { render, fireEvent, act } from 'react-testing-library'
+import { render, fireEvent, act } from '@testing-library/react'
let FormCard
-beforeEach(() => {
- registerFormField(
- 'string',
- connect()(props => (
-
+registerFormField(
+ 'string',
+ connect()(props => (
+
+ ))
+)
+
+registerFormField(
+ 'radio',
+ connect()(props =>
+ props.dataSource.map(item => (
+
))
)
+)
- registerFormField(
- 'radio',
- connect()(props =>
- props.dataSource.map(item => (
-
- ))
- )
+registerFormField('container', props => {
+ const { value, mutators, renderField } = props
+ return (
+
+ {toArr(value).map((item, index) => {
+ return (
+
+ {renderField(index)}
+
+
+ )
+ })}
+
+
)
+})
- registerFormField('container', props => {
- const { value, mutators, renderField } = props
- return (
-
- {toArr(value).map((item, index) => {
- return (
-
- {renderField(index)}
-
-
- )
- })}
-
-
- )
- })
-
- FormCard = createVirtualBox('card', ({ children }) => {
- return card content{children}
- })
+FormCard = createVirtualBox('card', ({ children }) => {
+ return card content{children}
})
test('dynaimc add field', async () => {
@@ -103,10 +101,10 @@ test('dynaimc add field', async () => {
)
}}
>
-
-
-
-
+
+
+
+
@@ -180,10 +178,10 @@ test('dynaimc add field with initialValue', async () => {
)
}}
>
-
-
-
-
+
+
+
+
@@ -267,15 +265,15 @@ test('dynaimc add field with initialValue in virtualbox', async () => {
)
}}
>
-
-
+
+
-
-
+
+
-
+
)
}
@@ -328,15 +326,15 @@ test('dynamic remove field', async () => {
onSubmit={submitHandler}
onValidateFailed={validateFaildHandler}
>
-
-
+
+
-
-
+
+
-
+
)
}
@@ -370,19 +368,19 @@ test('dynamic default value', async () => {
return (
-
+
-
-
+
+
-
+
)
}
@@ -425,7 +423,7 @@ test('dynamic async default value', async () => {
}, [])
return (
-
+
)
}
@@ -468,7 +466,7 @@ test('invalid schema', async () => {
}, [])
return (
-
+
)
}
@@ -517,7 +515,7 @@ test('dynamic change functions onChange/onReset/onSubmit/onValidateFailed', asyn
}}
>
-
+
valueB-{constState.testB}
valueC-{constState.testC}
diff --git a/packages/react/src/__tests__/editable.spec.js b/packages/react/src/__tests__/editable.spec.js
index 39894f35f28..5375ebffe91 100644
--- a/packages/react/src/__tests__/editable.spec.js
+++ b/packages/react/src/__tests__/editable.spec.js
@@ -7,54 +7,52 @@ import SchemaForm, {
createFormActions,
FormPath
} from '../index'
-import { render, act, fireEvent } from 'react-testing-library'
+import { render, act, fireEvent } from '@testing-library/react'
import { toArr } from '@uform/utils'
-beforeEach(() => {
- registerFieldMiddleware(Field => {
- return props => {
- if (typeof props.editable === 'boolean' && props.name !== '') {
- if (!props.editable) return empty
- }
- return (
-
- {props.schema.title}
-
- {props.errors && props.errors.length ? (
-
{props.errors}
- ) : (
- ''
- )}
-
- )
+registerFieldMiddleware(Field => {
+ return props => {
+ if (typeof props.editable === 'boolean' && props.name !== '') {
+ if (!props.editable) return empty
}
- })
- registerFormField(
- 'string',
- connect()(props => )
- )
- registerFormField('array', props => {
- const { value, mutators, renderField } = props
return (
-
- {toArr(value).map((item, index) => {
- return (
-
- {renderField(index)}
-
- )
- })}
-
-
+
+ {props.schema.title}
+
+ {props.errors && props.errors.length ? (
+
{props.errors}
+ ) : (
+ ''
+ )}
+
)
- })
+ }
+})
+registerFormField(
+ 'string',
+ connect()(props => )
+)
+registerFormField('array', props => {
+ const { value, mutators, renderField } = props
+ return (
+
+ {toArr(value).map((item, index) => {
+ return (
+
+ {renderField(index)}
+
+ )
+ })}
+
+
+ )
})
test('update editable by setFieldState', async () => {
@@ -77,8 +75,8 @@ test('update editable by setFieldState', async () => {
})
}}
>
-
-