@@ -58,15 +58,15 @@ TaskFunction createMacOSRunReleaseTest() {
5858}
5959
6060TaskFunction createWindowsRunDebugTest () {
61- return DesktopRunOutputTest (
61+ return WindowsRunOutputTest (
6262 '${flutterDirectory .path }/dev/integration_tests/ui' ,
6363 'lib/empty.dart' ,
6464 release: false ,
6565 ).call;
6666}
6767
6868TaskFunction createWindowsRunReleaseTest () {
69- return DesktopRunOutputTest (
69+ return WindowsRunOutputTest (
7070 '${flutterDirectory .path }/dev/integration_tests/ui' ,
7171 'lib/empty.dart' ,
7272 release: true ,
@@ -164,6 +164,30 @@ class AndroidRunOutputTest extends RunOutputTask {
164164 }
165165}
166166
167+ class WindowsRunOutputTest extends DesktopRunOutputTest {
168+ WindowsRunOutputTest (
169+ super .testDirectory,
170+ super .testTarget, {
171+ required super .release,
172+ super .allowStderr = false ,
173+ }
174+ );
175+
176+ static final RegExp _buildOutput = RegExp (
177+ r'Building Windows application\.\.\.\s*\d+(\.\d+)?(ms|s)' ,
178+ multiLine: true ,
179+ );
180+
181+ @override
182+ void verifyBuildOutput (List <String > stdout) {
183+ _findNextMatcherInList (
184+ stdout,
185+ _buildOutput.hasMatch,
186+ 'Building Windows application...' ,
187+ );
188+ }
189+ }
190+
167191class DesktopRunOutputTest extends RunOutputTask {
168192 DesktopRunOutputTest (
169193 super .testDirectory,
@@ -188,6 +212,8 @@ class DesktopRunOutputTest extends RunOutputTask {
188212 'Launching $testTarget on' ,
189213 );
190214
215+ verifyBuildOutput (stdout);
216+
191217 _findNextMatcherInList (
192218 stdout,
193219 (String line) => line.contains ('Quit (terminate the application on the device).' ),
@@ -202,6 +228,9 @@ class DesktopRunOutputTest extends RunOutputTask {
202228
203229 return TaskResult .success (null );
204230 }
231+
232+ /// Verify the output from `flutter run` 's build step.
233+ void verifyBuildOutput (List <String > stdout) {}
205234}
206235
207236/// Test that the output of `flutter run` is expected.
0 commit comments