Skip to content

Commit 70d9990

Browse files
committed
chore: update e2e tests pipeline to run on macOS and implement flutter drive for integration tests
1 parent 25cbc5c commit 70d9990

2 files changed

Lines changed: 19 additions & 2 deletions

File tree

.github/workflows/e2e_tests_pipeline.yaml

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ jobs:
112112
~/.android/adb*
113113
114114
pipeline-e2e-web:
115-
runs-on: ubuntu-latest
115+
runs-on: macos-latest
116116
timeout-minutes: 25
117117
steps:
118118
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938
@@ -143,8 +143,18 @@ jobs:
143143
run: melos bootstrap --scope "cloud_firestore*"
144144
- name: Run pipeline E2E tests (Chrome)
145145
working-directory: packages/cloud_firestore/cloud_firestore/pipeline_example
146+
# Web devices are not supported for the `flutter test` command yet. As a
147+
# workaround we use the `flutter drive` command. Tracking issue:
148+
# https://github.com/flutter/flutter/issues/66264
146149
run: |
147-
flutter test integration_test/pipeline/pipeline_live_test.dart --timeout 10x --dart-define=CI=true -d chrome
150+
chromedriver --port=4444 --trace-buffer-size=100000 &
151+
flutter drive --target=./integration_test/pipeline/pipeline_live_test.dart --driver=./test_driver/integration_test.dart -d chrome --dart-define=CI=true | tee output.log
152+
output=$(<output.log)
153+
if [[ "$output" =~ \[E\] ]]; then
154+
echo "All tests did not pass. Please check the logs for more information."
155+
exit 1
156+
fi
157+
shell: bash
148158

149159
pipeline-e2e-ios:
150160
runs-on: macos-15
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
// Copyright 2026, the Chromium project authors. Please see the AUTHORS file
2+
// for details. All rights reserved. Use of this source code is governed by a
3+
// BSD-style license that can be found in the LICENSE file.
4+
5+
import 'package:integration_test/integration_test_driver.dart';
6+
7+
Future<void> main() => integrationDriver();

0 commit comments

Comments
 (0)