1
1
import { screen } from '@testing-library/dom' ;
2
2
import userEvent from '@testing-library/user-event' ;
3
- import _ from 'lodash' ;
4
- import { Formio } from 'react-formio' ;
3
+ import { renderForm } from 'jstests/formio/utils' ;
5
4
6
5
import { getComponentNode } from 'formio/components/jest-util' ;
7
6
@@ -34,22 +33,18 @@ const multipleNumberForm = {
34
33
] ,
35
34
} ;
36
35
37
- const renderForm = async formConfig => {
38
- let formJSON = _ . cloneDeep ( formConfig ) ;
39
- const container = document . createElement ( 'div' ) ;
40
- document . body . appendChild ( container ) ;
41
- const form = await Formio . createForm ( container , formJSON ) ;
42
- return { form, container} ;
43
- } ;
44
-
45
36
describe ( 'The number component' , ( ) => {
46
37
afterEach ( ( ) => {
47
38
document . body . innerHTML = '' ;
48
39
} ) ;
49
40
50
41
test ( 'Single number component with valid input' , async ( ) => {
51
42
const user = userEvent . setup ( { delay : 50 } ) ;
52
- const { form} = await renderForm ( numberForm ) ;
43
+ const { form} = await renderForm ( numberForm , {
44
+ evalContext : {
45
+ requiredFieldsWithAsterisk : true ,
46
+ } ,
47
+ } ) ;
53
48
54
49
const input = screen . getByLabelText ( 'Number' ) ;
55
50
@@ -62,7 +57,11 @@ describe('The number component', () => {
62
57
63
58
test ( 'Single number component with invalid input' , async ( ) => {
64
59
const user = userEvent . setup ( { delay : 50 } ) ;
65
- const { form} = await renderForm ( numberForm ) ;
60
+ const { form} = await renderForm ( numberForm , {
61
+ evalContext : {
62
+ requiredFieldsWithAsterisk : true ,
63
+ } ,
64
+ } ) ;
66
65
67
66
const input = screen . getByLabelText ( 'Number' ) ;
68
67
@@ -95,7 +94,11 @@ describe('The multiple number component', () => {
95
94
96
95
test ( 'Multiple number component with valid input' , async ( ) => {
97
96
const user = userEvent . setup ( { delay : 50 } ) ;
98
- const { form} = await renderForm ( multipleNumberForm ) ;
97
+ const { form} = await renderForm ( multipleNumberForm , {
98
+ evalContext : {
99
+ requiredFieldsWithAsterisk : true ,
100
+ } ,
101
+ } ) ;
99
102
100
103
const input = screen . getByLabelText ( 'Multiple number' ) ;
101
104
@@ -108,7 +111,11 @@ describe('The multiple number component', () => {
108
111
109
112
test ( 'Multiple number component with invalid input' , async ( ) => {
110
113
const user = userEvent . setup ( { delay : 50 } ) ;
111
- const { form} = await renderForm ( multipleNumberForm ) ;
114
+ const { form} = await renderForm ( multipleNumberForm , {
115
+ evalContext : {
116
+ requiredFieldsWithAsterisk : true ,
117
+ } ,
118
+ } ) ;
112
119
113
120
const input = screen . getByLabelText ( 'Multiple number' ) ;
114
121
@@ -133,7 +140,11 @@ describe('The multiple number component', () => {
133
140
134
141
test ( 'Multiple number without inputs' , async ( ) => {
135
142
const user = userEvent . setup ( { delay : 50 } ) ;
136
- const { form} = await renderForm ( multipleNumberForm ) ;
143
+ const { form} = await renderForm ( multipleNumberForm , {
144
+ evalContext : {
145
+ requiredFieldsWithAsterisk : true ,
146
+ } ,
147
+ } ) ;
137
148
138
149
const input = screen . getByLabelText ( 'Multiple number' ) ;
139
150
const component = getComponentNode ( input ) ;
@@ -153,7 +164,11 @@ describe('The multiple number component', () => {
153
164
154
165
test ( 'Multiple number with one valid and one invalid input' , async ( ) => {
155
166
const user = userEvent . setup ( { delay : 50 } ) ;
156
- const { form} = await renderForm ( multipleNumberForm ) ;
167
+ const { form} = await renderForm ( multipleNumberForm , {
168
+ evalContext : {
169
+ requiredFieldsWithAsterisk : true ,
170
+ } ,
171
+ } ) ;
157
172
158
173
await user . click ( screen . getByRole ( 'button' , { name : 'Add Another' } ) ) ;
159
174
0 commit comments