[e2e] Add test to launch terminal and check for focus
Change-Id: Idefd59930570313cb1644631d46355bcec214de1
Reviewed-on: https://fuchsia-review.googlesource.com/c/experiences/+/474560
Reviewed-by: Charles Whitten <cwhitten@google.com>
Reviewed-by: Yeonhee Lee <yhlee@google.com>
Commit-Queue: Sanjay Chouksey <sanjayc@google.com>
diff --git a/tests/e2e/test/ermine_session_shell_ask_test.dart b/tests/e2e/test/ermine_session_shell_ask_test.dart
index 05ea2ee..1d2d712 100644
--- a/tests/e2e/test/ermine_session_shell_ask_test.dart
+++ b/tests/e2e/test/ermine_session_shell_ask_test.dart
@@ -38,6 +38,25 @@
expect(askResult, 'spinning_square_view');
});
+ test('use ask to launch terminal and verify focus', () async {
+ await ermine.gotoOverview();
+ await ermine.driver.enterText('');
+ final terminalResult = find.text('terminal');
+ await ermine.driver.tap(terminalResult);
+
+ // The terminal view should be displayed in a window with title.
+ final terminalTitle = await ermine.driver.getText(find.text('terminal'));
+ expect(terminalTitle, 'terminal');
+
+ // The inspect data should show that the view has focus.
+ const componentUrl = 'fuchsia-pkg://fuchsia.com/terminal#meta/terminal.cmx';
+ final inspect = await ermine.waitForView(componentUrl);
+ expect(inspect['focused'], isTrue);
+
+ // Close the terminal view.
+ await ermine.driver.requestData('close');
+ });
+
// TODO(http://fxbug.dev/60790): Implement this when input tool is ready.
test('use ask to resolve spinning_square_view using input tool', () async {},
skip: true);
diff --git a/tests/e2e/test/ermine_session_shell_simple_browser_test.dart b/tests/e2e/test/ermine_session_shell_simple_browser_test.dart
index 6146cbb..8dae98e 100644
--- a/tests/e2e/test/ermine_session_shell_simple_browser_test.dart
+++ b/tests/e2e/test/ermine_session_shell_simple_browser_test.dart
@@ -52,5 +52,10 @@
final termsLink = webdriver.findElement(By.linkText('Terms'));
expect(termsLink, isNotNull, reason: 'Cannot find text link "Terms".');
+
+ // Close the view.
+ await ermine.driver.requestData('close');
+ // Verify the view is closed.
+ await ermine.driver.waitForAbsent(find.text('simple_browser'));
});
}
diff --git a/tests/e2e/test/ermine_spinning_square_view_test.dart b/tests/e2e/test/ermine_spinning_square_view_test.dart
index f631658..35814d9 100644
--- a/tests/e2e/test/ermine_spinning_square_view_test.dart
+++ b/tests/e2e/test/ermine_spinning_square_view_test.dart
@@ -34,7 +34,6 @@
const componentUrl =
'fuchsia-pkg://fuchsia.com/spinning_square_view#meta/spinning_square_view.cmx';
await ermine.launch(componentUrl);
- await ermine.component.search('spinning_square_view.cmx');
// Get the view rect.
final viewRect = await ermine.getViewRect(componentUrl);
// Give the view couple of seconds to draw before taking its screenshot.
@@ -45,6 +44,7 @@
// spinning_square_view displays a red square on purple background.
const purple = 0xffb73a67; // (0xAABBGGRR)
const red = 0xff5700f5; // (0xAABBGGRR)
+ expect(histogram.keys.length, 2);
expect(histogram[purple], isNotNull);
expect(histogram[red], isNotNull);
expect(histogram[purple] > histogram[red], isTrue);