1
1
import '@testing-library/jest-dom'
2
- import { render } from '@testing-library/vue'
3
2
import userEvent from '@testing-library/user-event'
3
+ import { render , waitFor } from '..'
4
4
import Form from './components/Form'
5
5
import Select from './components/Select'
6
6
@@ -24,49 +24,49 @@ test('User events in a form', async () => {
24
24
expect ( submitButton ) . toBeDisabled ( )
25
25
26
26
const titleInput = getByLabelText ( / t i t l e o f t h e m o v i e / i)
27
- await userEvent . type ( titleInput , fakeReview . title )
28
- expect ( titleInput . value ) . toEqual ( fakeReview . title )
27
+ userEvent . type ( titleInput , fakeReview . title )
28
+ expect ( titleInput ) . toHaveValue ( fakeReview . title )
29
29
30
30
const textArea = getByLabelText ( / Y o u r r e v i e w / i)
31
- await userEvent . type ( textArea , 'The t-rex went insane!' )
32
- expect ( textArea . value ) . toEqual ( 'The t-rex went insane!' )
31
+ userEvent . type ( textArea , 'The t-rex went insane!' )
32
+ expect ( textArea ) . toHaveValue ( 'The t-rex went insane!' )
33
33
34
- await userEvent . clear ( textArea )
35
- expect ( textArea . value ) . toEqual ( '' )
36
- await userEvent . type ( textArea , fakeReview . review )
37
- expect ( textArea . value ) . toEqual ( fakeReview . review )
34
+ userEvent . clear ( textArea )
35
+ expect ( textArea ) . toHaveValue ( '' )
36
+ userEvent . type ( textArea , fakeReview . review )
37
+ expect ( textArea ) . toHaveValue ( fakeReview . review )
38
38
39
39
const initialSelectedRating = getByLabelText ( / A w f u l / i)
40
40
const wonderfulRadioInput = getByLabelText ( / W o n d e r f u l / i)
41
41
expect ( initialSelectedRating ) . toBeChecked ( )
42
42
expect ( wonderfulRadioInput ) . not . toBeChecked ( )
43
43
44
- await userEvent . click ( wonderfulRadioInput )
44
+ userEvent . click ( wonderfulRadioInput )
45
45
expect ( wonderfulRadioInput ) . toBeChecked ( )
46
- expect ( initialSelectedRating ) . not . toBeChecked ( )
46
+ await waitFor ( ( ) => expect ( initialSelectedRating ) . not . toBeChecked ( ) )
47
47
48
48
const recommendInput = getByLabelText ( / W o u l d y o u r e c o m m e n d t h i s m o v i e ? / i)
49
- await userEvent . click ( recommendInput )
49
+ userEvent . click ( recommendInput )
50
50
expect ( recommendInput ) . toBeChecked ( )
51
51
52
52
userEvent . tab ( )
53
53
expect ( submitButton ) . toHaveFocus ( )
54
54
expect ( submitButton ) . toBeEnabled ( )
55
- await userEvent . type ( submitButton , '{enter}' )
55
+ userEvent . type ( submitButton , '{enter}' )
56
56
expect ( emitted ( ) . submit [ 0 ] [ 0 ] ) . toMatchObject ( fakeReview )
57
57
58
58
expect ( console . warn ) . not . toHaveBeenCalled ( )
59
59
} )
60
60
61
- test ( 'selecting option with user events' , async ( ) => {
61
+ test ( 'selecting option with user events' , ( ) => {
62
62
const { getByDisplayValue} = render ( Select )
63
63
const select = getByDisplayValue ( 'Tyrannosaurus' )
64
- expect ( select . value ) . toBe ( 'dino1' )
64
+ expect ( select ) . toHaveValue ( 'dino1' )
65
65
66
- await userEvent . selectOptions ( select , 'dino2' )
67
- expect ( select . value ) . toBe ( 'dino2' )
66
+ userEvent . selectOptions ( select , 'dino2' )
67
+ expect ( select ) . toHaveValue ( 'dino2' )
68
68
69
- await userEvent . selectOptions ( select , 'dino3' )
70
- expect ( select . value ) . not . toBe ( 'dino2' )
71
- expect ( select . value ) . toBe ( 'dino3' )
69
+ userEvent . selectOptions ( select , 'dino3' )
70
+ expect ( select ) . not . toHaveValue ( 'dino2' )
71
+ expect ( select ) . toHaveValue ( 'dino3' )
72
72
} )
0 commit comments