Unverified Commit cd1d40a7 authored by Jonah Williams's avatar Jonah Williams Committed by GitHub

Revert "Add web safe indirection to Platform.isPlatform getters (#33406)" (#33776)

This reverts commit d92b3b40.
parent d92b3b40
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -83,7 +85,7 @@ void main() { ...@@ -83,7 +85,7 @@ void main() {
), ),
moreOrLessEquals(0.0), moreOrLessEquals(0.0),
); );
}, skip: isWindows); // floating point math not quite deterministic on Windows? }, skip: Platform.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,6 +2,7 @@ ...@@ -2,6 +2,7 @@
// 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';
...@@ -844,7 +845,7 @@ void main() { ...@@ -844,7 +845,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: !isLinux skip: !Platform.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.
...@@ -854,7 +855,7 @@ void main() { ...@@ -854,7 +855,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: !isLinux skip: !Platform.isLinux
); );
}); });
}); });
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -804,7 +806,7 @@ void main() { ...@@ -804,7 +806,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: !isLinux, skip: !Platform.isLinux,
); );
testWidgets( testWidgets(
...@@ -838,7 +840,7 @@ void main() { ...@@ -838,7 +840,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: !isLinux, skip: !Platform.isLinux,
); );
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -1327,7 +1329,7 @@ void main() { ...@@ -1327,7 +1329,7 @@ void main() {
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('segmented_control_test.0.0.png'), matchesGoldenFile('segmented_control_test.0.0.png'),
); );
}, skip: !isLinux); }, skip: !Platform.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>{};
...@@ -1365,5 +1367,5 @@ void main() { ...@@ -1365,5 +1367,5 @@ void main() {
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('segmented_control_test.1.0.png'), matchesGoldenFile('segmented_control_test.1.0.png'),
); );
}, skip: !isLinux); }, skip: !Platform.isLinux);
} }
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
// 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';
...@@ -375,7 +376,7 @@ void main() { ...@@ -375,7 +376,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: !isLinux); }, skip: !Platform.isLinux);
testWidgets('cursor iOS golden', (WidgetTester tester) async { testWidgets('cursor iOS golden', (WidgetTester tester) async {
debugDefaultTargetPlatformOverride = TargetPlatform.iOS; debugDefaultTargetPlatformOverride = TargetPlatform.iOS;
...@@ -405,7 +406,7 @@ void main() { ...@@ -405,7 +406,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: !isLinux); }, skip: !Platform.isLinux);
testWidgets( testWidgets(
'can control text content via controller', 'can control text content via controller',
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -81,7 +83,7 @@ void main() { ...@@ -81,7 +83,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
// 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';
...@@ -1435,7 +1436,7 @@ void main() { ...@@ -1435,7 +1436,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: !isLinux, skip: !Platform.isLinux,
); );
} }
}); });
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -138,7 +140,7 @@ void main() { ...@@ -138,7 +140,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
} }
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
// 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';
...@@ -19,7 +20,7 @@ void main() { ...@@ -19,7 +20,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: isWindows, skip: Platform.isWindows,
); );
} }
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -131,7 +133,7 @@ void main() { ...@@ -131,7 +133,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
// 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;
...@@ -141,7 +142,7 @@ void main() { ...@@ -141,7 +142,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
...@@ -154,7 +155,7 @@ void main() { ...@@ -154,7 +155,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
// 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';
...@@ -736,7 +737,7 @@ void main() { ...@@ -736,7 +737,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
// 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';
...@@ -2030,17 +2031,17 @@ void main() { ...@@ -2030,17 +2031,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: !isLinux, skip: !Platform.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: !isLinux, skip: !Platform.isLinux,
); );
}, },
skip: !isLinux, skip: !Platform.isLinux,
); );
testWidgets('InputDecorator draws and animates hoverColor', (WidgetTester tester) async { testWidgets('InputDecorator draws and animates hoverColor', (WidgetTester tester) async {
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -617,7 +619,7 @@ void main() { ...@@ -617,7 +619,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
...@@ -658,7 +660,7 @@ void main() { ...@@ -658,7 +660,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
}); });
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
// 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';
...@@ -277,7 +278,7 @@ void main() { ...@@ -277,7 +278,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(painterKey), find.byKey(painterKey),
matchesGoldenFile('radio.ink_ripple.png'), matchesGoldenFile('radio.ink_ripple.png'),
skip: !isLinux, skip: !Platform.isLinux,
); );
}); });
} }
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -268,7 +270,7 @@ void main() { ...@@ -268,7 +270,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
...@@ -280,7 +282,7 @@ void main() { ...@@ -280,7 +282,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
...@@ -297,7 +299,7 @@ void main() { ...@@ -297,7 +299,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
...@@ -314,7 +316,7 @@ void main() { ...@@ -314,7 +316,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
} }
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
// 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;
...@@ -404,7 +405,7 @@ void main() { ...@@ -404,7 +405,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: !isLinux); }, skip: !Platform.isLinux);
testWidgets('cursor iOS golden', (WidgetTester tester) async { testWidgets('cursor iOS golden', (WidgetTester tester) async {
debugDefaultTargetPlatformOverride = TargetPlatform.iOS; debugDefaultTargetPlatformOverride = TargetPlatform.iOS;
...@@ -433,7 +434,7 @@ void main() { ...@@ -433,7 +434,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: !isLinux); }, skip: !Platform.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(
...@@ -483,7 +484,7 @@ void main() { ...@@ -483,7 +484,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
// 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';
...@@ -72,7 +73,7 @@ void main() { ...@@ -72,7 +73,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
...@@ -94,7 +95,7 @@ void main() { ...@@ -94,7 +95,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
...@@ -113,7 +114,7 @@ void main() { ...@@ -113,7 +114,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -319,7 +321,7 @@ void main() { ...@@ -319,7 +321,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: !isLinux); skip: Platform.isWindows || Platform.isMacOS);
test('TextPainter - line wrap mid-word', () { test('TextPainter - line wrap mid-word', () {
final TextPainter painter = TextPainter() final TextPainter painter = TextPainter()
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -52,7 +54,7 @@ void main() { ...@@ -52,7 +54,7 @@ void main() {
matchesGoldenFile('localized_fonts.rich_text.styled_text_span.png'), matchesGoldenFile('localized_fonts.rich_text.styled_text_span.png'),
); );
}, },
skip: !isLinux, skip: !Platform.isLinux,
); );
testWidgets( testWidgets(
...@@ -104,7 +106,7 @@ void main() { ...@@ -104,7 +106,7 @@ void main() {
matchesGoldenFile('localized_fonts.text_ambient_locale.chars.png'), matchesGoldenFile('localized_fonts.text_ambient_locale.chars.png'),
); );
}, },
skip: !isLinux, skip: !Platform.isLinux,
); );
testWidgets( testWidgets(
...@@ -148,7 +150,7 @@ void main() { ...@@ -148,7 +150,7 @@ void main() {
matchesGoldenFile('localized_fonts.text_explicit_locale.chars.png'), matchesGoldenFile('localized_fonts.text_explicit_locale.chars.png'),
); );
}, },
skip: !isLinux, skip: !Platform.isLinux,
); );
} }
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
// 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';
...@@ -70,7 +71,7 @@ void main() { ...@@ -70,7 +71,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: isLinux); skip: Platform.isWindows || Platform.isMacOS);
test('getWordBoundary control test', () { test('getWordBoundary control test', () {
final RenderParagraph paragraph = RenderParagraph( final RenderParagraph paragraph = RenderParagraph(
...@@ -192,7 +193,7 @@ void main() { ...@@ -192,7 +193,7 @@ void main() {
layoutAt(3); layoutAt(3);
expect(paragraph.size.height, 30.0); expect(paragraph.size.height, 30.0);
}, skip: isWindows); // Ahem-based tests don't yet quite work on Windows }, skip: Platform.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,6 +2,7 @@ ...@@ -2,6 +2,7 @@
// 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';
...@@ -43,7 +44,7 @@ void main() { ...@@ -43,7 +44,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
} }
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -92,7 +94,7 @@ void main() { ...@@ -92,7 +94,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: !isLinux); }, skip: !Platform.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>();
...@@ -143,7 +145,7 @@ void main() { ...@@ -143,7 +145,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: !isLinux); }, skip: !Platform.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(
...@@ -722,6 +724,6 @@ void main() { ...@@ -722,6 +724,6 @@ void main() {
matchesGoldenFile('editable_text_test.2.0.png'), matchesGoldenFile('editable_text_test.2.0.png'),
); );
debugDefaultTargetPlatformOverride = null; debugDefaultTargetPlatformOverride = null;
}, skip: !isLinux); }, skip: !Platform.isLinux);
} }
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -21,7 +23,7 @@ void main() { ...@@ -21,7 +23,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
...@@ -40,7 +42,7 @@ void main() { ...@@ -40,7 +42,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
} }
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -536,7 +538,7 @@ void main() { ...@@ -536,7 +538,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
...@@ -591,7 +593,7 @@ void main() { ...@@ -591,7 +593,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -178,7 +180,7 @@ void main() { ...@@ -178,7 +180,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: !isLinux, skip: !Platform.isLinux,
); );
}); });
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
// 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';
...@@ -111,7 +112,7 @@ void main() { ...@@ -111,7 +112,7 @@ void main() {
await expectLater( await expectLater(
find.byKey(key), find.byKey(key),
matchesGoldenFile('physical_model_overflow.png'), matchesGoldenFile('physical_model_overflow.png'),
skip: !isLinux, skip: !Platform.isLinux,
); );
}); });
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -28,11 +30,13 @@ void main() { ...@@ -28,11 +30,13 @@ void main() {
debugDisableShadows = false; debugDisableShadows = false;
tester.binding.reassembleApplication(); tester.binding.reassembleApplication();
await tester.pump(); await tester.pump();
await expectLater( if (Platform.isLinux) {
find.byType(Container), // TODO(ianh): use the skip argument instead once that doesn't hang, https://github.com/dart-lang/test/issues/830
matchesGoldenFile('shadow.BoxDecoration.enabled.png'), await expectLater(
skip: !isLinux find.byType(Container),
); // shadows render differently on different platforms matchesGoldenFile('shadow.BoxDecoration.enabled.png'),
); // shadows render differently on different platforms
}
debugDisableShadows = true; debugDisableShadows = true;
}); });
...@@ -61,7 +65,7 @@ void main() { ...@@ -61,7 +65,7 @@ void main() {
); );
} }
debugDisableShadows = true; debugDisableShadows = true;
}, skip: !isLinux); // shadows render differently on different platforms }, skip: !Platform.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(
...@@ -89,11 +93,13 @@ void main() { ...@@ -89,11 +93,13 @@ void main() {
debugDisableShadows = false; debugDisableShadows = false;
tester.binding.reassembleApplication(); tester.binding.reassembleApplication();
await tester.pump(); await tester.pump();
await expectLater( if (Platform.isLinux) {
find.byType(Container), // TODO(ianh): use the skip argument instead once that doesn't hang, https://github.com/dart-lang/test/issues/830
matchesGoldenFile('shadow.PhysicalModel.enabled.png'), await expectLater(
skip: !isLinux, find.byType(Container),
); // shadows render differently on different platforms matchesGoldenFile('shadow.PhysicalModel.enabled.png'),
); // shadows render differently on different platforms
}
debugDisableShadows = true; debugDisableShadows = true;
}); });
...@@ -126,5 +132,5 @@ void main() { ...@@ -126,5 +132,5 @@ void main() {
); );
} }
debugDisableShadows = true; debugDisableShadows = true;
}, skip: !isLinux); // shadows render differently on different platforms }, skip: !Platform.isLinux); // shadows render differently on different platforms
} }
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// 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';
...@@ -55,7 +57,7 @@ void main() { ...@@ -55,7 +57,7 @@ void main() {
find.byType(Container), find.byType(Container),
matchesGoldenFile('text_golden.Centered.wrap.png'), matchesGoldenFile('text_golden.Centered.wrap.png'),
); );
}, skip: !isLinux); }, skip: !Platform.isLinux);
testWidgets('Text Foreground', (WidgetTester tester) async { testWidgets('Text Foreground', (WidgetTester tester) async {
...@@ -131,7 +133,7 @@ void main() { ...@@ -131,7 +133,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: !isLinux); }, skip: !Platform.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
...@@ -181,7 +183,7 @@ void main() { ...@@ -181,7 +183,7 @@ void main() {
find.byType(RepaintBoundary), find.byType(RepaintBoundary),
matchesGoldenFile('text_golden.Background.png'), matchesGoldenFile('text_golden.Background.png'),
); );
}, skip: !isLinux); }, skip: !Platform.isLinux);
testWidgets('Text Fade', (WidgetTester tester) async { testWidgets('Text Fade', (WidgetTester tester) async {
await tester.pumpWidget( await tester.pumpWidget(
...@@ -217,7 +219,7 @@ void main() { ...@@ -217,7 +219,7 @@ void main() {
find.byType(RepaintBoundary).first, find.byType(RepaintBoundary).first,
matchesGoldenFile('text_golden.Fade.1.png'), matchesGoldenFile('text_golden.Fade.1.png'),
); );
}, skip: !isLinux); }, skip: !Platform.isLinux);
testWidgets('Default Strut text', (WidgetTester tester) async { testWidgets('Default Strut text', (WidgetTester tester) async {
await tester.pumpWidget( await tester.pumpWidget(
...@@ -478,7 +480,7 @@ void main() { ...@@ -478,7 +480,7 @@ void main() {
find.byType(Container), find.byType(Container),
matchesGoldenFile('text_golden.Decoration.1.0.png'), matchesGoldenFile('text_golden.Decoration.1.0.png'),
); );
}, skip: !isLinux); // Coretext uses different thicknesses for decoration }, skip: !Platform.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(
...@@ -517,5 +519,5 @@ void main() { ...@@ -517,5 +519,5 @@ void main() {
find.byType(Container), find.byType(Container),
matchesGoldenFile('text_golden.DecorationThickness.1.0.png'), matchesGoldenFile('text_golden.DecorationThickness.1.0.png'),
); );
}, skip: !isLinux); // Coretext uses different thicknesses for decoration }, skip: !Platform.isLinux); // Coretext uses different thicknesses for decoration
} }
...@@ -54,7 +54,6 @@ export 'src/finders.dart'; ...@@ -54,7 +54,6 @@ 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