@@ -49,45 +49,51 @@ void main() {
49
49
expect (await context.webDriver.pageSource, contains ('Flutter' ));
50
50
});
51
51
52
- test ('can not launch devtools for the same app in multiple tabs' , () async {
53
- var appUrl = await context.webDriver.currentUrl;
54
- // Open a new tab, select it, and navigate to the app
55
- await context.webDriver.driver
56
- .execute ("window.open('$appUrl ', '_blank');" , []);
57
- await Future .delayed (const Duration (seconds: 2 ));
58
- var windows = await context.webDriver.windows.toList ();
59
- var oldAppWindow = windows[0 ];
60
- var newAppWindow = windows[1 ];
61
- var devToolsWindow = windows[2 ];
62
- await newAppWindow.setAsActive ();
63
-
64
- // Wait for the page to be ready before trying to open DevTools again.
65
- await _waitForPageReady (context);
66
-
67
- // Try to open devtools and check for the alert.
68
- await context.webDriver.driver.keyboard.sendChord ([Keyboard .alt, 'd' ]);
69
- await Future .delayed (const Duration (seconds: 2 ));
70
- var alert = context.webDriver.driver.switchTo.alert;
71
- expect (alert, isNotNull);
72
- expect (await alert.text,
73
- contains ('This app is already being debugged in a different tab' ));
74
- await alert.accept ();
75
-
76
- // Now close the old app and try to re-open devtools.
77
- await oldAppWindow.setAsActive ();
78
- await oldAppWindow.close ();
79
- await devToolsWindow.setAsActive ();
80
- await devToolsWindow.close ();
81
- await newAppWindow.setAsActive ();
82
- await context.webDriver.driver.keyboard.sendChord ([Keyboard .alt, 'd' ]);
83
- await Future .delayed (const Duration (seconds: 2 ));
84
- windows = await context.webDriver.windows.toList ();
85
- devToolsWindow = windows.firstWhere ((window) => window != newAppWindow);
86
- await devToolsWindow.setAsActive ();
87
- // TODO(grouma): switch back to `fixture.webdriver.title` when
88
- // https://github.com/flutter/devtools/issues/2045 is fixed.
89
- expect (await context.webDriver.pageSource, contains ('Flutter' ));
90
- });
52
+ test (
53
+ 'can not launch devtools for the same app in multiple tabs' ,
54
+ () async {
55
+ var appUrl = await context.webDriver.currentUrl;
56
+ // Open a new tab, select it, and navigate to the app
57
+ await context.webDriver.driver
58
+ .execute ("window.open('$appUrl ', '_blank');" , []);
59
+ await Future .delayed (const Duration (seconds: 2 ));
60
+ var windows = await context.webDriver.windows.toList ();
61
+ var oldAppWindow = windows[0 ];
62
+ var newAppWindow = windows[1 ];
63
+ var devToolsWindow = windows[2 ];
64
+ await newAppWindow.setAsActive ();
65
+
66
+ // Wait for the page to be ready before trying to open DevTools again.
67
+ await _waitForPageReady (context);
68
+
69
+ // Try to open devtools and check for the alert.
70
+ await context.webDriver.driver.keyboard.sendChord ([Keyboard .alt, 'd' ]);
71
+ await Future .delayed (const Duration (seconds: 2 ));
72
+ var alert = context.webDriver.driver.switchTo.alert;
73
+ expect (alert, isNotNull);
74
+ expect (await alert.text,
75
+ contains ('This app is already being debugged in a different tab' ));
76
+ await alert.accept ();
77
+
78
+ // Now close the old app and try to re-open devtools.
79
+ await oldAppWindow.setAsActive ();
80
+ await oldAppWindow.close ();
81
+ await devToolsWindow.setAsActive ();
82
+ await devToolsWindow.close ();
83
+ await newAppWindow.setAsActive ();
84
+ await context.webDriver.driver.keyboard.sendChord ([Keyboard .alt, 'd' ]);
85
+ await Future .delayed (const Duration (seconds: 2 ));
86
+ windows = await context.webDriver.windows.toList ();
87
+ devToolsWindow = windows.firstWhere ((window) => window != newAppWindow);
88
+ await devToolsWindow.setAsActive ();
89
+ // TODO(grouma): switch back to `fixture.webdriver.title` when
90
+ // https://github.com/flutter/devtools/issues/2045 is fixed.
91
+ expect (await context.webDriver.pageSource, contains ('Flutter' ));
92
+ },
93
+ // TODO(elliette): Enable this test once
94
+ // https://github.com/dart-lang/webdev/issues/1504 is resolved.
95
+ skip: true ,
96
+ );
91
97
92
98
test ('destroys and recreates the isolate during a page refresh' , () async {
93
99
// This test is the same as one in reload_test, but runs here when there
0 commit comments