1
- use end2end_helpers:: { element_text, input_by_id, mount, sleep_a_moment } ;
1
+ use end2end_helpers:: { element_text, input_by_id, mount} ;
2
2
use gloo_utils:: document_element;
3
3
use leptos:: prelude:: * ;
4
4
use leptos_fluent:: localstorage;
5
5
use leptos_fluent_csr_complete_example:: App ;
6
6
use wasm_bindgen_test:: * ;
7
+ use web_sys_ec:: { By , Ec , Wait } ;
7
8
8
9
wasm_bindgen_test_configure ! ( run_in_browser) ;
9
10
10
11
#[ wasm_bindgen_test]
11
- async fn csr_complete_example ( ) {
12
+ pub async fn csr_complete_example ( ) {
12
13
localstorage:: delete ( "language" ) ;
13
14
14
15
mount ! ( App ) ;
@@ -17,56 +18,58 @@ async fn csr_complete_example() {
17
18
18
19
// translations working
19
20
en ( ) . click ( ) ;
20
- sleep_a_moment ( ) . await ;
21
- assert_eq ! ( element_text( "p" ) , "Select a language:" ) ;
21
+ Wait ( 1 )
22
+ . until ( ( "p" , Ec :: InnerTextContains ( "Select a language:" ) ) )
23
+ . await ;
22
24
es ( ) . click ( ) ;
23
- sleep_a_moment ( ) . await ;
25
+ Wait ( 1 )
26
+ . until ( ( "p" , Ec :: InnerTextContains ( "Selecciona un idioma:" ) ) )
27
+ . await ;
24
28
assert ! ( es( ) . checked( ) ) ;
25
29
assert ! ( !en( ) . checked( ) ) ;
26
- assert_eq ! ( element_text( "p" ) , "Selecciona un idioma:" ) ;
27
30
en ( ) . click ( ) ;
28
- sleep_a_moment ( ) . await ;
31
+ Wait ( 1 )
32
+ . until ( ( "p" , Ec :: InnerTextContains ( "Select a language:" ) ) )
33
+ . await ;
29
34
assert ! ( en( ) . checked( ) ) ;
30
35
assert_eq ! ( element_text( "p" ) , "Select a language:" ) ;
31
36
assert ! ( !es( ) . checked( ) ) ;
32
37
33
38
// sync_html_tag_lang
34
39
es ( ) . click ( ) ;
35
- sleep_a_moment ( ) . await ;
40
+ Wait ( 1 )
41
+ . until ( ( "html" , Ec :: AttributeValueIs ( "lang" , "es" ) ) )
42
+ . await ;
36
43
assert ! ( es( ) . checked( ) ) ;
37
- assert_eq ! (
38
- document_element( ) . get_attribute( "lang" ) ,
39
- Some ( "es" . to_string( ) )
40
- ) ;
41
44
en ( ) . click ( ) ;
42
- sleep_a_moment ( ) . await ;
43
- assert_eq ! (
44
- document_element( ) . get_attribute( "lang" ) ,
45
- Some ( "en" . to_string( ) )
46
- ) ;
45
+ Wait ( 1 )
46
+ . until ( ( "html" , Ec :: AttributeValueIs ( "lang" , "en" ) ) )
47
+ . await ;
47
48
48
49
// sync_html_tag_dir
49
50
assert_eq ! (
50
51
document_element( ) . get_attribute( "dir" ) ,
51
52
Some ( "ltr" . to_string( ) )
52
53
) ;
53
54
es ( ) . click ( ) ;
54
- sleep_a_moment ( ) . await ;
55
- assert_eq ! (
56
- document_element( ) . get_attribute( "dir" ) ,
57
- Some ( "auto" . to_string( ) )
58
- ) ;
55
+ Wait ( 1 )
56
+ . until ( ( "html" , Ec :: AttributeValueIs ( "dir" , "auto" ) ) )
57
+ . await ;
59
58
en ( ) . click ( ) ;
60
- sleep_a_moment ( ) . await ;
59
+ Wait ( 1 )
60
+ . until ( ( "html" , Ec :: AttributeValueIs ( "dir" , "auto" ) ) )
61
+ . await ;
61
62
62
63
// set_language_to_localstorage
63
64
localstorage:: delete ( "language" ) ;
64
65
assert_eq ! ( localstorage:: get( "language" ) , None ) ;
65
66
es ( ) . click ( ) ;
66
- sleep_a_moment ( ) . await ;
67
- assert_eq ! ( localstorage:: get( "language" ) , Some ( "es" . to_string( ) ) ) ;
67
+ Wait ( 1 )
68
+ . until ( Ec :: LocalStorageAttributeValueIs ( "language" , "es" ) )
69
+ . await ;
68
70
en ( ) . click ( ) ;
69
- sleep_a_moment ( ) . await ;
70
- assert_eq ! ( localstorage:: get( "language" ) , Some ( "en" . to_string( ) ) ) ;
71
+ Wait ( 1 )
72
+ . until ( Ec :: LocalStorageAttributeValueIs ( "language" , "en" ) )
73
+ . await ;
71
74
localstorage:: delete ( "language" ) ;
72
75
}
0 commit comments