1- // use std::sync::Arc;
1+ use std:: sync:: Arc ;
22
33use anyhow:: Result ;
4- // use log::debug;
5- // use tokio::sync::Mutex;
6- // use webdriverbidi::events::EventType;
7- // use webdriverbidi::remote::browser::RemoveUserContextParameters;
4+ use log:: debug;
5+ use tokio:: sync:: Mutex ;
6+ use webdriverbidi:: events:: EventType ;
7+ use webdriverbidi:: remote:: browser:: RemoveUserContextParameters ;
88use webdriverbidi:: remote:: browsing_context:: {
99 ActivateParameters , CloseParameters , GetTreeParameters ,
1010} ;
11- // use webdriverbidi::remote::session::SubscriptionRequest;
11+ use webdriverbidi:: remote:: session:: SubscriptionRequest ;
1212
1313mod utils;
1414
@@ -52,6 +52,7 @@ mod create_user_context {
5252
5353 Ok ( ( ) )
5454 }
55+
5556 #[ tokio:: test]
5657 async fn test_storage_isolation ( ) -> Result < ( ) > {
5758 let ( url, server_handle) =
@@ -280,7 +281,7 @@ mod get_user_contexts {
280281mod remove_user_context {
281282 use super :: * ;
282283
283- // const BROWSING_CTX_DESTROYED_EVENT: &str = "browsingContext.contextDestroyed";
284+ const BROWSING_CTX_DESTROYED_EVENT : & str = "browsingContext.contextDestroyed" ;
284285 // const USER_PROMPT_OPENED_EVENT: &str = "browsingContext.userPromptOpened";
285286
286287 #[ tokio:: test]
@@ -340,20 +341,32 @@ mod remove_user_context {
340341 ) )
341342 . await ?;
342343
343- let user_context_1 = utils:: create_user_context ( & mut bidi_session) . await ?;
344- let user_context_2 = utils:: create_user_context ( & mut bidi_session) . await ?;
344+ let user_context_1 = utils:: browser :: create_user_context ( & mut bidi_session) . await ?;
345+ let user_context_2 = utils:: browser :: create_user_context ( & mut bidi_session) . await ?;
345346
346- let context_1 =
347- utils:: new_tab_in_user_context ( & mut bidi_session, user_context_1. clone ( ) ) . await ?;
347+ let context_1 = utils:: browsing_context:: new_tab_in_user_context (
348+ & mut bidi_session,
349+ user_context_1. clone ( ) ,
350+ )
351+ . await ?;
348352
349- let context_2 =
350- utils:: new_tab_in_user_context ( & mut bidi_session, user_context_1. clone ( ) ) . await ?;
353+ let context_2 = utils:: browsing_context:: new_tab_in_user_context (
354+ & mut bidi_session,
355+ user_context_1. clone ( ) ,
356+ )
357+ . await ?;
351358
352- let context_3 =
353- utils:: new_tab_in_user_context ( & mut bidi_session, user_context_2. clone ( ) ) . await ?;
359+ let context_3 = utils:: browsing_context:: new_tab_in_user_context (
360+ & mut bidi_session,
361+ user_context_2. clone ( ) ,
362+ )
363+ . await ?;
354364
355- let context_4 =
356- utils:: new_tab_in_user_context ( & mut bidi_session, user_context_2. clone ( ) ) . await ?;
365+ let context_4 = utils:: browsing_context:: new_tab_in_user_context (
366+ & mut bidi_session,
367+ user_context_2. clone ( ) ,
368+ )
369+ . await ?;
357370
358371 bidi_session
359372 . browser_remove_user_context ( RemoveUserContextParameters :: new ( user_context_1) )
@@ -365,37 +378,36 @@ mod remove_user_context {
365378 . lock ( )
366379 . await
367380 . iter ( )
368- . map ( |event| event. clone ( ) [ "params "] [ "context" ] . as_str ( ) ? . to_string ( ) )
381+ . filter_map ( |event| event[ "parasm "] [ "context" ] . as_str ( ) . map ( String :: from ) )
369382 . collect :: < Vec < _ > > ( ) ;
370383
371384 bidi_session
372385 . browser_remove_user_context ( RemoveUserContextParameters :: new ( user_context_2) )
373386 . await ?;
374387
375- utils:: close_session ( & mut bidi_session) . await ?;
388+ utils:: session :: close ( & mut bidi_session) . await ?;
376389
377390 let final_events_len = events. lock ( ) . await . len ( ) ;
378391
379392 let final_destroyed_contexts = events
380393 . lock ( )
381394 . await
382395 . iter ( )
383- . map ( |event| event. clone ( ) [ "params "] [ "context" ] . as_str ( ) ? . to_string ( ) )
396+ . filter_map ( |event| event[ "parasm "] [ "context" ] . as_str ( ) . map ( String :: from ) )
384397 . collect :: < Vec < _ > > ( ) ;
385398
386399 assert ! ( initial_events_len == 2 ) ;
387-
388400 assert ! ( initial_destroyed_contexts. contains( & context_1) ) ;
389401 assert ! ( initial_destroyed_contexts. contains( & context_2) ) ;
390402
391403 assert ! ( final_events_len == 4 ) ;
392-
393404 assert ! ( final_destroyed_contexts. contains( & context_3) ) ;
394405 assert ! ( final_destroyed_contexts. contains( & context_4) ) ;
395406
396407 Ok ( ( ) )
397408 }
398409}
410+
399411// #[tokio::test]
400412// async fn test_remove_context_skips_beforeunload_prompt() {
401413// let mut bidi_session = utils::init_session().await?;
0 commit comments