1
1
import React from 'react' ;
2
2
import { useAuthorize , useCashierFiatAddress } from '@deriv/api-v2' ;
3
- import { act , render , screen , waitFor } from '@testing-library/react' ;
3
+ import { fireEvent , render , screen } from '@testing-library/react' ;
4
4
import DepositFiat from '../DepositFiat' ;
5
5
6
6
jest . mock ( '@deriv/api-v2' , ( ) => ( {
@@ -10,7 +10,7 @@ jest.mock('@deriv/api-v2', () => ({
10
10
11
11
describe ( 'DepositFiat' , ( ) => {
12
12
beforeEach ( ( ) => {
13
- ( useAuthorize as jest . Mock ) . mockReturnValueOnce ( { isSuccess : true } ) ;
13
+ ( useAuthorize as jest . Mock ) . mockReturnValue ( { isSuccess : true } ) ;
14
14
} ) ;
15
15
16
16
afterEach ( ( ) => {
@@ -24,21 +24,19 @@ describe('DepositFiat', () => {
24
24
data : null ,
25
25
error : { error : serverError } ,
26
26
isError : true ,
27
- isLoading : false ,
28
27
mutate : jest . fn ( ) ,
29
28
} ) ;
30
29
31
30
render ( < DepositFiat /> ) ;
32
31
expect ( screen . getByText ( 'Server Error' ) ) . toBeInTheDocument ( ) ;
33
32
} ) ;
34
33
35
- it ( 'should render loader while loading ' , ( ) => {
34
+ it ( 'should render loader initially ' , ( ) => {
36
35
( useAuthorize as jest . Mock ) . mockReturnValueOnce ( { isSuccess : false } ) ;
37
36
( useCashierFiatAddress as jest . Mock ) . mockReturnValueOnce ( {
38
37
data : null ,
39
38
error : null ,
40
39
isError : false ,
41
- isLoading : true ,
42
40
mutate : jest . fn ( ) ,
43
41
} ) ;
44
42
@@ -47,22 +45,21 @@ describe('DepositFiat', () => {
47
45
expect ( screen . queryByTestId ( 'dt_deposit-fiat-iframe' ) ) . not . toBeInTheDocument ( ) ;
48
46
} ) ;
49
47
50
- it ( 'should render iframe after loading is completed and iframe url is received' , async ( ) => {
51
- ( useCashierFiatAddress as jest . Mock ) . mockReturnValueOnce ( {
48
+ it ( 'should display iframe correctly after onLoad event' , ( ) => {
49
+ ( useCashierFiatAddress as jest . Mock ) . mockReturnValue ( {
52
50
data : 'https://iframe_url' ,
53
51
error : null ,
54
52
isError : false ,
55
- isLoading : false ,
56
53
mutate : jest . fn ( ) ,
57
54
} ) ;
58
55
59
- await act ( async ( ) => {
60
- render ( < DepositFiat /> ) ;
61
- await waitFor ( ( ) => {
62
- expect ( screen . queryByTestId ( 'dt_wallets_loader' ) ) . not . toBeInTheDocument ( ) ;
63
- } ) ;
64
- const iframe = screen . getByTestId ( 'dt_deposit-fiat-iframe' ) ;
65
- expect ( iframe ) . toHaveAttribute ( 'src' , 'https://iframe_url' ) ;
66
- } ) ;
56
+ render ( < DepositFiat /> ) ;
57
+
58
+ const iframe = screen . getByTestId ( 'dt_deposit-fiat-iframe' ) ;
59
+ expect ( iframe ) . toHaveAttribute ( 'src' , 'https://iframe_url' ) ;
60
+ expect ( iframe ) . toHaveStyle ( { display : 'none' } ) ;
61
+
62
+ fireEvent . load ( iframe ) ;
63
+ expect ( iframe ) . toHaveStyle ( { display : 'block' } ) ;
67
64
} ) ;
68
65
} ) ;
0 commit comments