Unverified Commit 6619ab8f authored by Jonah Williams's avatar Jonah Williams Committed by GitHub

Add web safe indirection to Platform.isPlatform getters (2) (#33780)

parent cd1d40a7
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
import 'package:flutter/animation.dart'; import 'package:flutter/animation.dart';
import 'package:flutter/widgets.dart'; import 'package:flutter/widgets.dart';
...@@ -85,7 +83,7 @@ void main() { ...@@ -85,7 +83,7 @@ void main() {
), ),
moreOrLessEquals(0.0), moreOrLessEquals(0.0),
); );
}, skip: Platform.isWindows); // floating point math not quite deterministic on Windows? }, skip: isWindows); // floating point math not quite deterministic on Windows?
test('ConstantTween', () { test('ConstantTween', () {
final ConstantTween<double> tween = ConstantTween<double>(100.0); final ConstantTween<double> tween = ConstantTween<double>(100.0);
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'dart:ui'; import 'dart:ui';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
...@@ -845,7 +844,7 @@ void main() { ...@@ -845,7 +844,7 @@ void main() {
await expectLater( await expectLater(
find.byType(CupertinoDatePicker), find.byType(CupertinoDatePicker),
matchesGoldenFile('date_picker_test.datetime.initial.1.png'), matchesGoldenFile('date_picker_test.datetime.initial.1.png'),
skip: !Platform.isLinux skip: !isLinux
); );
// Slightly drag the hour component to make the current hour off-center. // Slightly drag the hour component to make the current hour off-center.
...@@ -855,7 +854,7 @@ void main() { ...@@ -855,7 +854,7 @@ void main() {
await expectLater( await expectLater(
find.byType(CupertinoDatePicker), find.byType(CupertinoDatePicker),
matchesGoldenFile('date_picker_test.datetime.drag.1.png'), matchesGoldenFile('date_picker_test.datetime.drag.1.png'),
skip: !Platform.isLinux skip: !isLinux
); );
}); });
}); });
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
...@@ -806,7 +804,7 @@ void main() { ...@@ -806,7 +804,7 @@ void main() {
}, },
// TODO(xster): remove once https://github.com/flutter/flutter/issues/17483 // TODO(xster): remove once https://github.com/flutter/flutter/issues/17483
// is fixed. // is fixed.
skip: !Platform.isLinux, skip: !isLinux,
); );
testWidgets( testWidgets(
...@@ -840,7 +838,7 @@ void main() { ...@@ -840,7 +838,7 @@ void main() {
}, },
// TODO(xster): remove once https://github.com/flutter/flutter/issues/17483 // TODO(xster): remove once https://github.com/flutter/flutter/issues/17483
// is fixed. // is fixed.
skip: !Platform.isLinux, skip: !isLinux,
); );
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'package:flutter/widgets.dart'; import 'package:flutter/widgets.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
...@@ -1329,7 +1327,7 @@ void main() { ...@@ -1329,7 +1327,7 @@ void main() {
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('segmented_control_test.0.0.png'), matchesGoldenFile('segmented_control_test.0.0.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
testWidgets('Golden Test Pressed State', (WidgetTester tester) async { testWidgets('Golden Test Pressed State', (WidgetTester tester) async {
final Map<int, Widget> children = <int, Widget>{}; final Map<int, Widget> children = <int, Widget>{};
...@@ -1367,5 +1365,5 @@ void main() { ...@@ -1367,5 +1365,5 @@ void main() {
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('segmented_control_test.1.0.png'), matchesGoldenFile('segmented_control_test.1.0.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
} }
...@@ -3,7 +3,6 @@ ...@@ -3,7 +3,6 @@
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:async'; import 'dart:async';
import 'dart:io';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
...@@ -376,7 +375,7 @@ void main() { ...@@ -376,7 +375,7 @@ void main() {
find.byKey(const ValueKey<int>(1)), find.byKey(const ValueKey<int>(1)),
matchesGoldenFile('text_field_cursor_test.0.2.png'), matchesGoldenFile('text_field_cursor_test.0.2.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
testWidgets('cursor iOS golden', (WidgetTester tester) async { testWidgets('cursor iOS golden', (WidgetTester tester) async {
debugDefaultTargetPlatformOverride = TargetPlatform.iOS; debugDefaultTargetPlatformOverride = TargetPlatform.iOS;
...@@ -406,7 +405,7 @@ void main() { ...@@ -406,7 +405,7 @@ void main() {
find.byKey(const ValueKey<int>(1)), find.byKey(const ValueKey<int>(1)),
matchesGoldenFile('text_field_cursor_test.1.2.png'), matchesGoldenFile('text_field_cursor_test.1.2.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
testWidgets( testWidgets(
'can control text content via controller', 'can control text content via controller',
...@@ -2613,7 +2612,7 @@ void main() { ...@@ -2613,7 +2612,7 @@ void main() {
await expectLater( await expectLater(
find.byType(CupertinoTextField), find.byType(CupertinoTextField),
matchesGoldenFile('text_field_test.disabled.0.png'), matchesGoldenFile('text_field_test.disabled.0.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
} }
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
...@@ -83,7 +81,7 @@ void main() { ...@@ -83,7 +81,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(_painterKey), find.byKey(_painterKey),
matchesGoldenFile('bottom_app_bar_theme.custom_shape.png'), matchesGoldenFile('bottom_app_bar_theme.custom_shape.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'dart:ui'; import 'dart:ui';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
...@@ -1436,7 +1435,7 @@ void main() { ...@@ -1436,7 +1435,7 @@ void main() {
await expectLater( await expectLater(
find.byType(BottomNavigationBar), find.byType(BottomNavigationBar),
matchesGoldenFile('bottom_navigation_bar.shifting_transition.2.$pump.png'), matchesGoldenFile('bottom_navigation_bar.shifting_transition.2.$pump.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
} }
}); });
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
...@@ -140,7 +138,7 @@ void main() { ...@@ -140,7 +138,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(painterKey), find.byKey(painterKey),
matchesGoldenFile('card_theme.custom_shape.png'), matchesGoldenFile('card_theme.custom_shape.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
} }
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'dart:ui'; import 'dart:ui';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
...@@ -20,7 +19,7 @@ void main() { ...@@ -20,7 +19,7 @@ void main() {
}, },
// Skip on Windows because this test is quite flaky when run on Windows, // Skip on Windows because this test is quite flaky when run on Windows,
// until https://github.com/flutter/flutter/issues/19696 is fixed. // until https://github.com/flutter/flutter/issues/19696 is fixed.
skip: Platform.isWindows, skip: isWindows,
); );
} }
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
...@@ -133,7 +131,7 @@ void main() { ...@@ -133,7 +131,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(_painterKey), find.byKey(_painterKey),
matchesGoldenFile('dialog_theme.dialog_with_custom_border.png'), matchesGoldenFile('dialog_theme.dialog_with_custom_border.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'dart:math' as math; import 'dart:math' as math;
import 'dart:ui' show window; import 'dart:ui' show window;
...@@ -142,7 +141,7 @@ void main() { ...@@ -142,7 +141,7 @@ void main() {
await expectLater( await expectLater(
find.ancestor(of: buttonFinder, matching: find.byType(RepaintBoundary)).first, find.ancestor(of: buttonFinder, matching: find.byType(RepaintBoundary)).first,
matchesGoldenFile('dropdown_test.default.0.png'), matchesGoldenFile('dropdown_test.default.0.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
...@@ -155,7 +154,7 @@ void main() { ...@@ -155,7 +154,7 @@ void main() {
await expectLater( await expectLater(
find.ancestor(of: buttonFinder, matching: find.byType(RepaintBoundary)).first, find.ancestor(of: buttonFinder, matching: find.byType(RepaintBoundary)).first,
matchesGoldenFile('dropdown_test.expanded.0.png'), matchesGoldenFile('dropdown_test.expanded.0.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'dart:ui'; import 'dart:ui';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
...@@ -737,7 +736,7 @@ void main() { ...@@ -737,7 +736,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(key), find.byKey(key),
matchesGoldenFile('floating_action_button_test.clip.2.png'), // .clip.1.png is obsolete and can be removed matchesGoldenFile('floating_action_button_test.clip.2.png'), // .clip.1.png is obsolete and can be removed
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
......
...@@ -3,7 +3,6 @@ ...@@ -3,7 +3,6 @@
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:async'; import 'dart:async';
import 'dart:io' show Platform;
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
...@@ -2031,17 +2030,17 @@ void main() { ...@@ -2031,17 +2030,17 @@ void main() {
await expectLater( await expectLater(
find.byType(InputDecorator), find.byType(InputDecorator),
matchesGoldenFile('input_decorator.outline_icon_label.ltr.png'), matchesGoldenFile('input_decorator.outline_icon_label.ltr.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
await tester.pumpWidget(buildFrame(TextDirection.rtl)); await tester.pumpWidget(buildFrame(TextDirection.rtl));
await expectLater( await expectLater(
find.byType(InputDecorator), find.byType(InputDecorator),
matchesGoldenFile('input_decorator.outline_icon_label.rtl.png'), matchesGoldenFile('input_decorator.outline_icon_label.rtl.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}, },
skip: !Platform.isLinux, skip: !isLinux,
); );
testWidgets('InputDecorator draws and animates hoverColor', (WidgetTester tester) async { testWidgets('InputDecorator draws and animates hoverColor', (WidgetTester tester) async {
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/painting.dart'; import 'package:flutter/painting.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
...@@ -619,7 +617,7 @@ void main() { ...@@ -619,7 +617,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(painterKey), find.byKey(painterKey),
matchesGoldenFile('material.border_paint_above.png'), matchesGoldenFile('material.border_paint_above.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
...@@ -660,7 +658,7 @@ void main() { ...@@ -660,7 +658,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(painterKey), find.byKey(painterKey),
matchesGoldenFile('material.border_paint_below.png'), matchesGoldenFile('material.border_paint_below.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
}); });
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'dart:ui'; import 'dart:ui';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
...@@ -278,7 +277,7 @@ void main() { ...@@ -278,7 +277,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(painterKey), find.byKey(painterKey),
matchesGoldenFile('radio.ink_ripple.png'), matchesGoldenFile('radio.ink_ripple.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
} }
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
...@@ -270,7 +268,7 @@ void main() { ...@@ -270,7 +268,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(_painterKey), find.byKey(_painterKey),
matchesGoldenFile('tab_bar_theme.tab_indicator_size_tab.png'), matchesGoldenFile('tab_bar_theme.tab_indicator_size_tab.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
...@@ -282,7 +280,7 @@ void main() { ...@@ -282,7 +280,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(_painterKey), find.byKey(_painterKey),
matchesGoldenFile('tab_bar_theme.tab_indicator_size_label.png'), matchesGoldenFile('tab_bar_theme.tab_indicator_size_label.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
...@@ -299,7 +297,7 @@ void main() { ...@@ -299,7 +297,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(_painterKey), find.byKey(_painterKey),
matchesGoldenFile('tab_bar_theme.custom_tab_indicator.png'), matchesGoldenFile('tab_bar_theme.custom_tab_indicator.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
...@@ -316,7 +314,7 @@ void main() { ...@@ -316,7 +314,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(_painterKey), find.byKey(_painterKey),
matchesGoldenFile('tab_bar_theme.beveled_rect_indicator.png'), matchesGoldenFile('tab_bar_theme.beveled_rect_indicator.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
} }
...@@ -3,7 +3,6 @@ ...@@ -3,7 +3,6 @@
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:async'; import 'dart:async';
import 'dart:io';
import 'dart:math' as math; import 'dart:math' as math;
import 'dart:ui' as ui show window; import 'dart:ui' as ui show window;
...@@ -405,7 +404,7 @@ void main() { ...@@ -405,7 +404,7 @@ void main() {
find.byKey(const ValueKey<int>(1)), find.byKey(const ValueKey<int>(1)),
matchesGoldenFile('text_field_cursor_test.0.0.png'), matchesGoldenFile('text_field_cursor_test.0.0.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
testWidgets('cursor iOS golden', (WidgetTester tester) async { testWidgets('cursor iOS golden', (WidgetTester tester) async {
debugDefaultTargetPlatformOverride = TargetPlatform.iOS; debugDefaultTargetPlatformOverride = TargetPlatform.iOS;
...@@ -434,7 +433,7 @@ void main() { ...@@ -434,7 +433,7 @@ void main() {
find.byKey(const ValueKey<int>(1)), find.byKey(const ValueKey<int>(1)),
matchesGoldenFile('text_field_cursor_test.1.0.png'), matchesGoldenFile('text_field_cursor_test.1.0.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
testWidgets('text field selection toolbar renders correctly inside opacity', (WidgetTester tester) async { testWidgets('text field selection toolbar renders correctly inside opacity', (WidgetTester tester) async {
await tester.pumpWidget( await tester.pumpWidget(
...@@ -484,7 +483,7 @@ void main() { ...@@ -484,7 +483,7 @@ void main() {
// The toolbar exists in the Overlay above the MaterialApp. // The toolbar exists in the Overlay above the MaterialApp.
find.byType(Overlay), find.byType(Overlay),
matchesGoldenFile('text_field_opacity_test.0.2.png'), matchesGoldenFile('text_field_opacity_test.0.2.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/painting.dart'; import 'package:flutter/painting.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
...@@ -73,7 +72,7 @@ void main() { ...@@ -73,7 +72,7 @@ void main() {
await expectLater( await expectLater(
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('continuous_rectangle_border.golden_test_even_radii.png'), matchesGoldenFile('continuous_rectangle_border.golden_test_even_radii.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
...@@ -95,7 +94,7 @@ void main() { ...@@ -95,7 +94,7 @@ void main() {
await expectLater( await expectLater(
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('continuous_rectangle_border.golden_test_varying_radii.png'), matchesGoldenFile('continuous_rectangle_border.golden_test_varying_radii.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
...@@ -114,7 +113,7 @@ void main() { ...@@ -114,7 +113,7 @@ void main() {
await expectLater( await expectLater(
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('continuous_rectangle_border.golden_test_large_radii.png'), matchesGoldenFile('continuous_rectangle_border.golden_test_large_radii.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:flutter/painting.dart'; import 'package:flutter/painting.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
...@@ -321,7 +319,7 @@ void main() { ...@@ -321,7 +319,7 @@ void main() {
); );
}, },
// Ahem-based tests don't yet quite work on Windows or some MacOS environments // Ahem-based tests don't yet quite work on Windows or some MacOS environments
skip: Platform.isWindows || Platform.isMacOS); skip: !isLinux);
test('TextPainter - line wrap mid-word', () { test('TextPainter - line wrap mid-word', () {
final TextPainter painter = TextPainter() final TextPainter painter = TextPainter()
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
...@@ -54,7 +52,7 @@ void main() { ...@@ -54,7 +52,7 @@ void main() {
matchesGoldenFile('localized_fonts.rich_text.styled_text_span.png'), matchesGoldenFile('localized_fonts.rich_text.styled_text_span.png'),
); );
}, },
skip: !Platform.isLinux, skip: !isLinux,
); );
testWidgets( testWidgets(
...@@ -106,7 +104,7 @@ void main() { ...@@ -106,7 +104,7 @@ void main() {
matchesGoldenFile('localized_fonts.text_ambient_locale.chars.png'), matchesGoldenFile('localized_fonts.text_ambient_locale.chars.png'),
); );
}, },
skip: !Platform.isLinux, skip: !isLinux,
); );
testWidgets( testWidgets(
...@@ -150,7 +148,7 @@ void main() { ...@@ -150,7 +148,7 @@ void main() {
matchesGoldenFile('localized_fonts.text_explicit_locale.chars.png'), matchesGoldenFile('localized_fonts.text_explicit_locale.chars.png'),
); );
}, },
skip: !Platform.isLinux, skip: !isLinux,
); );
} }
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'dart:ui' as ui show TextBox; import 'dart:ui' as ui show TextBox;
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
...@@ -71,7 +70,7 @@ void main() { ...@@ -71,7 +70,7 @@ void main() {
expect(boxes.any((ui.TextBox box) => box.right == 100 && box.top == 10), isTrue); expect(boxes.any((ui.TextBox box) => box.right == 100 && box.top == 10), isTrue);
}, },
// Ahem-based tests don't yet quite work on Windows or some MacOS environments // Ahem-based tests don't yet quite work on Windows or some MacOS environments
skip: Platform.isWindows || Platform.isMacOS); skip: isLinux);
test('getWordBoundary control test', () { test('getWordBoundary control test', () {
final RenderParagraph paragraph = RenderParagraph( final RenderParagraph paragraph = RenderParagraph(
...@@ -193,7 +192,7 @@ void main() { ...@@ -193,7 +192,7 @@ void main() {
layoutAt(3); layoutAt(3);
expect(paragraph.size.height, 30.0); expect(paragraph.size.height, 30.0);
}, skip: Platform.isWindows); // Ahem-based tests don't yet quite work on Windows }, skip: isWindows); // Ahem-based tests don't yet quite work on Windows
test('changing color does not do layout', () { test('changing color does not do layout', () {
final RenderParagraph paragraph = RenderParagraph( final RenderParagraph paragraph = RenderParagraph(
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'dart:ui'; import 'dart:ui';
import 'package:flutter/widgets.dart'; import 'package:flutter/widgets.dart';
...@@ -44,7 +43,7 @@ void main() { ...@@ -44,7 +43,7 @@ void main() {
await expectLater( await expectLater(
find.byType(RepaintBoundary).first, find.byType(RepaintBoundary).first,
matchesGoldenFile('backdrop_filter_test.cull_rect.1.png'), matchesGoldenFile('backdrop_filter_test.cull_rect.1.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
} }
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
...@@ -94,7 +92,7 @@ void main() { ...@@ -94,7 +92,7 @@ void main() {
find.byKey(const ValueKey<int>(1)), find.byKey(const ValueKey<int>(1)),
matchesGoldenFile('editable_text_test.0.3.png'), matchesGoldenFile('editable_text_test.0.3.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
testWidgets('cursor layout has correct radius', (WidgetTester tester) async { testWidgets('cursor layout has correct radius', (WidgetTester tester) async {
final GlobalKey<EditableTextState> editableTextKey = GlobalKey<EditableTextState>(); final GlobalKey<EditableTextState> editableTextKey = GlobalKey<EditableTextState>();
...@@ -145,7 +143,7 @@ void main() { ...@@ -145,7 +143,7 @@ void main() {
find.byKey(const ValueKey<int>(1)), find.byKey(const ValueKey<int>(1)),
matchesGoldenFile('editable_text_test.1.3.png'), matchesGoldenFile('editable_text_test.1.3.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
testWidgets('Cursor animates on iOS', (WidgetTester tester) async { testWidgets('Cursor animates on iOS', (WidgetTester tester) async {
final Widget widget = MaterialApp( final Widget widget = MaterialApp(
...@@ -724,6 +722,6 @@ void main() { ...@@ -724,6 +722,6 @@ void main() {
matchesGoldenFile('editable_text_test.2.0.png'), matchesGoldenFile('editable_text_test.2.0.png'),
); );
debugDefaultTargetPlatformOverride = null; debugDefaultTargetPlatformOverride = null;
}, skip: !Platform.isLinux); }, skip: !isLinux);
} }
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
import 'package:flutter/widgets.dart'; import 'package:flutter/widgets.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
...@@ -23,7 +21,7 @@ void main() { ...@@ -23,7 +21,7 @@ void main() {
await expectLater( await expectLater(
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('invert_colors_test.0.png'), matchesGoldenFile('invert_colors_test.0.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
...@@ -42,7 +40,7 @@ void main() { ...@@ -42,7 +40,7 @@ void main() {
await expectLater( await expectLater(
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('invert_colors_test.1.png'), matchesGoldenFile('invert_colors_test.1.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
} }
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
...@@ -538,7 +536,7 @@ void main() { ...@@ -538,7 +536,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(const Key('list_wheel_scroll_view')), find.byKey(const Key('list_wheel_scroll_view')),
matchesGoldenFile('list_wheel_scroll_view.center_child.magnified.png'), matchesGoldenFile('list_wheel_scroll_view.center_child.magnified.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
...@@ -593,7 +591,7 @@ void main() { ...@@ -593,7 +591,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(const Key('list_wheel_scroll_view')), find.byKey(const Key('list_wheel_scroll_view')),
matchesGoldenFile('list_wheel_scroll_view.curved_wheel.left.png'), matchesGoldenFile('list_wheel_scroll_view.curved_wheel.left.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io';
import 'package:flutter/widgets.dart'; import 'package:flutter/widgets.dart';
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
...@@ -180,7 +178,7 @@ void main() { ...@@ -180,7 +178,7 @@ void main() {
await expectLater( await expectLater(
find.byType(RepaintBoundary).first, find.byType(RepaintBoundary).first,
matchesGoldenFile('opacity_test.offset.1.png'), matchesGoldenFile('opacity_test.offset.1.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'dart:math' as math show pi; import 'dart:math' as math show pi;
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
...@@ -112,7 +111,7 @@ void main() { ...@@ -112,7 +111,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(key), find.byKey(key),
matchesGoldenFile('physical_model_overflow.png'), matchesGoldenFile('physical_model_overflow.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
......
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
...@@ -30,13 +28,11 @@ void main() { ...@@ -30,13 +28,11 @@ void main() {
debugDisableShadows = false; debugDisableShadows = false;
tester.binding.reassembleApplication(); tester.binding.reassembleApplication();
await tester.pump(); await tester.pump();
if (Platform.isLinux) {
// TODO(ianh): use the skip argument instead once that doesn't hang, https://github.com/dart-lang/test/issues/830
await expectLater( await expectLater(
find.byType(Container), find.byType(Container),
matchesGoldenFile('shadow.BoxDecoration.enabled.png'), matchesGoldenFile('shadow.BoxDecoration.enabled.png'),
skip: !isLinux
); // shadows render differently on different platforms ); // shadows render differently on different platforms
}
debugDisableShadows = true; debugDisableShadows = true;
}); });
...@@ -65,7 +61,7 @@ void main() { ...@@ -65,7 +61,7 @@ void main() {
); );
} }
debugDisableShadows = true; debugDisableShadows = true;
}, skip: !Platform.isLinux); // shadows render differently on different platforms }, skip: !isLinux); // shadows render differently on different platforms
testWidgets('Shadows with PhysicalLayer', (WidgetTester tester) async { testWidgets('Shadows with PhysicalLayer', (WidgetTester tester) async {
await tester.pumpWidget( await tester.pumpWidget(
...@@ -93,13 +89,11 @@ void main() { ...@@ -93,13 +89,11 @@ void main() {
debugDisableShadows = false; debugDisableShadows = false;
tester.binding.reassembleApplication(); tester.binding.reassembleApplication();
await tester.pump(); await tester.pump();
if (Platform.isLinux) {
// TODO(ianh): use the skip argument instead once that doesn't hang, https://github.com/dart-lang/test/issues/830
await expectLater( await expectLater(
find.byType(Container), find.byType(Container),
matchesGoldenFile('shadow.PhysicalModel.enabled.png'), matchesGoldenFile('shadow.PhysicalModel.enabled.png'),
skip: !isLinux,
); // shadows render differently on different platforms ); // shadows render differently on different platforms
}
debugDisableShadows = true; debugDisableShadows = true;
}); });
...@@ -132,5 +126,5 @@ void main() { ...@@ -132,5 +126,5 @@ void main() {
); );
} }
debugDisableShadows = true; debugDisableShadows = true;
}, skip: !Platform.isLinux); // shadows render differently on different platforms }, skip: !isLinux); // shadows render differently on different platforms
} }
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:io' show Platform;
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart'; import 'package:flutter/widgets.dart';
...@@ -57,7 +55,7 @@ void main() { ...@@ -57,7 +55,7 @@ void main() {
find.byType(Container), find.byType(Container),
matchesGoldenFile('text_golden.Centered.wrap.png'), matchesGoldenFile('text_golden.Centered.wrap.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
testWidgets('Text Foreground', (WidgetTester tester) async { testWidgets('Text Foreground', (WidgetTester tester) async {
...@@ -133,7 +131,7 @@ void main() { ...@@ -133,7 +131,7 @@ void main() {
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('text_golden.Foreground.stroke_and_gradient.png'), matchesGoldenFile('text_golden.Foreground.stroke_and_gradient.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
// TODO(garyq): This test requires an update when the background // TODO(garyq): This test requires an update when the background
// drawing from the beginning of the line bug is fixed. The current // drawing from the beginning of the line bug is fixed. The current
...@@ -183,7 +181,7 @@ void main() { ...@@ -183,7 +181,7 @@ void main() {
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('text_golden.Background.png'), matchesGoldenFile('text_golden.Background.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
testWidgets('Text Fade', (WidgetTester tester) async { testWidgets('Text Fade', (WidgetTester tester) async {
await tester.pumpWidget( await tester.pumpWidget(
...@@ -219,7 +217,7 @@ void main() { ...@@ -219,7 +217,7 @@ void main() {
find.byType(RepaintBoundary).first, find.byType(RepaintBoundary).first,
matchesGoldenFile('text_golden.Fade.1.png'), matchesGoldenFile('text_golden.Fade.1.png'),
); );
}, skip: !Platform.isLinux); }, skip: !isLinux);
testWidgets('Default Strut text', (WidgetTester tester) async { testWidgets('Default Strut text', (WidgetTester tester) async {
await tester.pumpWidget( await tester.pumpWidget(
...@@ -480,7 +478,7 @@ void main() { ...@@ -480,7 +478,7 @@ void main() {
find.byType(Container), find.byType(Container),
matchesGoldenFile('text_golden.Decoration.1.0.png'), matchesGoldenFile('text_golden.Decoration.1.0.png'),
); );
}, skip: !Platform.isLinux); // Coretext uses different thicknesses for decoration }, skip: !isLinux); // Coretext uses different thicknesses for decoration
testWidgets('Decoration thickness', (WidgetTester tester) async { testWidgets('Decoration thickness', (WidgetTester tester) async {
final TextDecoration allDecorations = TextDecoration.combine( final TextDecoration allDecorations = TextDecoration.combine(
...@@ -519,5 +517,5 @@ void main() { ...@@ -519,5 +517,5 @@ void main() {
find.byType(Container), find.byType(Container),
matchesGoldenFile('text_golden.DecorationThickness.1.0.png'), matchesGoldenFile('text_golden.DecorationThickness.1.0.png'),
); );
}, skip: !Platform.isLinux); // Coretext uses different thicknesses for decoration }, skip: !isLinux); // Coretext uses different thicknesses for decoration
} }
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
import 'dart:async'; import 'dart:async';
import 'dart:convert'; import 'dart:convert';
import 'dart:io' show Platform;
import 'dart:math'; import 'dart:math';
import 'dart:ui' as ui; import 'dart:ui' as ui;
...@@ -1583,7 +1582,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1583,7 +1582,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
_CreationLocation location = knownLocations[id]; _CreationLocation location = knownLocations[id];
expect(location.file, equals(file)); expect(location.file, equals(file));
// ClockText widget. // ClockText widget.
expect(location.line, equals(51)); expect(location.line, equals(50));
expect(location.column, equals(9)); expect(location.column, equals(9));
expect(count, equals(1)); expect(count, equals(1));
...@@ -1592,7 +1591,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1592,7 +1591,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
location = knownLocations[id]; location = knownLocations[id];
expect(location.file, equals(file)); expect(location.file, equals(file));
// Text widget in _ClockTextState build method. // Text widget in _ClockTextState build method.
expect(location.line, equals(89)); expect(location.line, equals(88));
expect(location.column, equals(12)); expect(location.column, equals(12));
expect(count, equals(1)); expect(count, equals(1));
...@@ -1617,7 +1616,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1617,7 +1616,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
location = knownLocations[id]; location = knownLocations[id];
expect(location.file, equals(file)); expect(location.file, equals(file));
// ClockText widget. // ClockText widget.
expect(location.line, equals(51)); expect(location.line, equals(50));
expect(location.column, equals(9)); expect(location.column, equals(9));
expect(count, equals(3)); // 3 clock widget instances rebuilt. expect(count, equals(3)); // 3 clock widget instances rebuilt.
...@@ -1626,7 +1625,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1626,7 +1625,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
location = knownLocations[id]; location = knownLocations[id];
expect(location.file, equals(file)); expect(location.file, equals(file));
// Text widget in _ClockTextState build method. // Text widget in _ClockTextState build method.
expect(location.line, equals(89)); expect(location.line, equals(88));
expect(location.column, equals(12)); expect(location.column, equals(12));
expect(count, equals(3)); // 3 clock widget instances rebuilt. expect(count, equals(3)); // 3 clock widget instances rebuilt.
...@@ -1897,7 +1896,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1897,7 +1896,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
await expectLater( await expectLater(
layer.toImage(renderObject.semanticBounds.inflate(50.0)), layer.toImage(renderObject.semanticBounds.inflate(50.0)),
matchesGoldenFile('inspector.repaint_boundary_margin.png'), matchesGoldenFile('inspector.repaint_boundary_margin.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
// Regression test for how rendering with a pixel scale other than 1.0 // Regression test for how rendering with a pixel scale other than 1.0
...@@ -1908,7 +1907,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1908,7 +1907,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
pixelRatio: 0.5, pixelRatio: 0.5,
), ),
matchesGoldenFile('inspector.repaint_boundary_margin_small.png'), matchesGoldenFile('inspector.repaint_boundary_margin_small.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
await expectLater( await expectLater(
...@@ -1917,7 +1916,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1917,7 +1916,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
pixelRatio: 2.0, pixelRatio: 2.0,
), ),
matchesGoldenFile('inspector.repaint_boundary_margin_large.png'), matchesGoldenFile('inspector.repaint_boundary_margin_large.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
final Layer layerParent = layer.parent; final Layer layerParent = layer.parent;
...@@ -1933,7 +1932,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1933,7 +1932,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
height: 300.0, height: 300.0,
), ),
matchesGoldenFile('inspector.repaint_boundary.png'), matchesGoldenFile('inspector.repaint_boundary.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
// Verify that taking a screenshot didn't change the layers associated with // Verify that taking a screenshot didn't change the layers associated with
...@@ -1951,7 +1950,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1951,7 +1950,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
margin: 50.0, margin: 50.0,
), ),
matchesGoldenFile('inspector.repaint_boundary_margin.png'), matchesGoldenFile('inspector.repaint_boundary_margin.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
// Verify that taking a screenshot didn't change the layers associated with // Verify that taking a screenshot didn't change the layers associated with
...@@ -1972,7 +1971,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1972,7 +1971,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
debugPaint: true, debugPaint: true,
), ),
matchesGoldenFile('inspector.repaint_boundary_debugPaint.png'), matchesGoldenFile('inspector.repaint_boundary_debugPaint.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
// Verify that taking a screenshot with debug paint on did not change // Verify that taking a screenshot with debug paint on did not change
// the number of children the layer has. // the number of children the layer has.
...@@ -1983,7 +1982,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1983,7 +1982,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
await expectLater( await expectLater(
find.byType(RepaintBoundaryWithDebugPaint), find.byType(RepaintBoundaryWithDebugPaint),
matchesGoldenFile('inspector.repaint_boundary.png'), matchesGoldenFile('inspector.repaint_boundary.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
expect(renderObject.debugLayer, equals(layer)); expect(renderObject.debugLayer, equals(layer));
...@@ -1997,7 +1996,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -1997,7 +1996,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
height: 100.0, height: 100.0,
), ),
matchesGoldenFile('inspector.container.png'), matchesGoldenFile('inspector.container.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
await expectLater( await expectLater(
...@@ -2008,7 +2007,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2008,7 +2007,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
debugPaint: true, debugPaint: true,
), ),
matchesGoldenFile('inspector.container_debugPaint.png'), matchesGoldenFile('inspector.container_debugPaint.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
{ {
...@@ -2029,7 +2028,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2029,7 +2028,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
debugPaint: true, debugPaint: true,
), ),
matchesGoldenFile('inspector.container_debugPaint.png'), matchesGoldenFile('inspector.container_debugPaint.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
expect(container.debugNeedsLayout, isFalse); expect(container.debugNeedsLayout, isFalse);
} }
...@@ -2042,7 +2041,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2042,7 +2041,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
height: 100.0, height: 100.0,
), ),
matchesGoldenFile('inspector.container_small.png'), matchesGoldenFile('inspector.container_small.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
await expectLater( await expectLater(
...@@ -2053,7 +2052,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2053,7 +2052,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
maxPixelRatio: 3.0, maxPixelRatio: 3.0,
), ),
matchesGoldenFile('inspector.container_large.png'), matchesGoldenFile('inspector.container_large.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
// This screenshot will show the clip rect debug paint but no other // This screenshot will show the clip rect debug paint but no other
...@@ -2066,7 +2065,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2066,7 +2065,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
debugPaint: true, debugPaint: true,
), ),
matchesGoldenFile('inspector.clipRect_debugPaint.png'), matchesGoldenFile('inspector.clipRect_debugPaint.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
final Element clipRect = find.byType(ClipRRect).evaluate().single; final Element clipRect = find.byType(ClipRRect).evaluate().single;
...@@ -2083,7 +2082,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2083,7 +2082,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
await expectLater( await expectLater(
clipRectScreenshot, clipRectScreenshot,
matchesGoldenFile('inspector.clipRect_debugPaint_margin.png'), matchesGoldenFile('inspector.clipRect_debugPaint_margin.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
// Verify we get the same image if we go through the service extension // Verify we get the same image if we go through the service extension
...@@ -2111,7 +2110,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2111,7 +2110,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
await expectLater( await expectLater(
screenshotImage, screenshotImage,
matchesReferenceImage(await clipRectScreenshot), matchesReferenceImage(await clipRectScreenshot),
skip: !Platform.isLinux, skip: !isLinux,
); );
// Test with a very visible debug paint // Test with a very visible debug paint
...@@ -2123,7 +2122,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2123,7 +2122,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
debugPaint: true, debugPaint: true,
), ),
matchesGoldenFile('inspector.padding_debugPaint.png'), matchesGoldenFile('inspector.padding_debugPaint.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
// The bounds for this box crop its rendered content. // The bounds for this box crop its rendered content.
...@@ -2135,7 +2134,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2135,7 +2134,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
debugPaint: true, debugPaint: true,
), ),
matchesGoldenFile('inspector.sizedBox_debugPaint.1.png'), matchesGoldenFile('inspector.sizedBox_debugPaint.1.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
// Verify that setting a margin includes the previously cropped content. // Verify that setting a margin includes the previously cropped content.
...@@ -2148,7 +2147,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2148,7 +2147,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
debugPaint: true, debugPaint: true,
), ),
matchesGoldenFile('inspector.sizedBox_debugPaint_margin.png'), matchesGoldenFile('inspector.sizedBox_debugPaint_margin.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
...@@ -2220,7 +2219,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2220,7 +2219,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
await expectLater( await expectLater(
find.byKey(mainStackKey), find.byKey(mainStackKey),
matchesGoldenFile('inspector.composited_transform.only_offsets.png'), matchesGoldenFile('inspector.composited_transform.only_offsets.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
await expectLater( await expectLater(
...@@ -2230,13 +2229,13 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2230,13 +2229,13 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
height: 500.0, height: 500.0,
), ),
matchesGoldenFile('inspector.composited_transform.only_offsets_follower.png'), matchesGoldenFile('inspector.composited_transform.only_offsets_follower.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
await expectLater( await expectLater(
WidgetInspectorService.instance.screenshot(find.byType(Stack).evaluate().first, width: 300.0, height: 300.0), WidgetInspectorService.instance.screenshot(find.byType(Stack).evaluate().first, width: 300.0, height: 300.0),
matchesGoldenFile('inspector.composited_transform.only_offsets_small.1.png'), matchesGoldenFile('inspector.composited_transform.only_offsets_small.1.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
await expectLater( await expectLater(
...@@ -2246,7 +2245,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2246,7 +2245,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
height: 500.0, height: 500.0,
), ),
matchesGoldenFile('inspector.composited_transform.only_offsets_target.png'), matchesGoldenFile('inspector.composited_transform.only_offsets_target.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
}); });
...@@ -2319,7 +2318,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2319,7 +2318,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
await expectLater( await expectLater(
find.byKey(mainStackKey), find.byKey(mainStackKey),
matchesGoldenFile('inspector.composited_transform.with_rotations.png'), matchesGoldenFile('inspector.composited_transform.with_rotations.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
await expectLater( await expectLater(
...@@ -2329,7 +2328,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2329,7 +2328,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
height: 500.0, height: 500.0,
), ),
matchesGoldenFile('inspector.composited_transform.with_rotations_small.png'), matchesGoldenFile('inspector.composited_transform.with_rotations_small.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
await expectLater( await expectLater(
...@@ -2339,7 +2338,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2339,7 +2338,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
height: 500.0, height: 500.0,
), ),
matchesGoldenFile('inspector.composited_transform.with_rotations_target.png'), matchesGoldenFile('inspector.composited_transform.with_rotations_target.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
await expectLater( await expectLater(
...@@ -2349,7 +2348,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService { ...@@ -2349,7 +2348,7 @@ class TestWidgetInspectorService extends Object with WidgetInspectorService {
height: 500.0, height: 500.0,
), ),
matchesGoldenFile('inspector.composited_transform.with_rotations_follower.png'), matchesGoldenFile('inspector.composited_transform.with_rotations_follower.png'),
skip: !Platform.isLinux, skip: !isLinux,
); );
// Make sure taking screenshots hasn't modified the positions of the // Make sure taking screenshots hasn't modified the positions of the
......
...@@ -54,6 +54,7 @@ export 'src/finders.dart'; ...@@ -54,6 +54,7 @@ export 'src/finders.dart';
export 'src/goldens.dart'; export 'src/goldens.dart';
export 'src/matchers.dart'; export 'src/matchers.dart';
export 'src/nonconst.dart'; export 'src/nonconst.dart';
export 'src/platform.dart';
export 'src/stack_manipulation.dart'; export 'src/stack_manipulation.dart';
export 'src/test_async_utils.dart'; export 'src/test_async_utils.dart';
export 'src/test_compat.dart'; export 'src/test_compat.dart';
......
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'dart:io';
// Whether the current dart code is running in an environment that was compiled
// to JavaScript.
const bool _kIsCompiledToJavaScript = identical(0, 0.0);
/// Whether the test is running on the Windows operating system.
///
/// This does not include test compiled to JavaScript running in a browser on
/// the Windows operating system.
bool get isWindows {
if (_kIsCompiledToJavaScript) {
return false;
}
return Platform.isWindows;
}
/// Whether the test is running on the macOS operating system.
///
/// This does not include test compiled to JavaScript running in a browser on
/// the macOS operating system.
bool get isMacOS {
if (_kIsCompiledToJavaScript) {
return false;
}
return Platform.isMacOS;
}
/// Whether the test is running on the Linux operating system.
///
/// This does not include test compiled to JavaScript running in a browser on
/// the Linux operating system.
bool get isLinux {
if (_kIsCompiledToJavaScript) {
return false;
}
return Platform.isLinux;
}
/// Whether the test is running in a web browser compiled to JavaScript.
bool get isBrowser {
return _kIsCompiledToJavaScript;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment