aves_mio1/.flutter/packages/flutter/test/painting/text_scaler_test.dart
FabioMich66 19a982ede6
Some checks are pending
Quality check / Flutter analysis (push) Waiting to run
Quality check / CodeQL analysis (java-kotlin) (push) Waiting to run
first commit
2026-03-05 15:51:30 +01:00

61 lines
2.3 KiB
Dart

// Copyright 2014 The Flutter 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 'package:flutter/widgets.dart';
import 'package:flutter_test/flutter_test.dart';
void main() {
group('Linear TextScaler', () {
test('equality', () {
const a = TextScaler.linear(3.0);
final TextScaler b = TextScaler.noScaling.clamp(minScaleFactor: 3.0);
// Creates a non-const TextScaler instance.
final c = TextScaler.linear(3.0); // ignore: prefer_const_constructors
final TextScaler d = TextScaler.noScaling
.clamp(minScaleFactor: 1, maxScaleFactor: 5)
.clamp(minScaleFactor: 3, maxScaleFactor: 6);
final list = <TextScaler>[a, b, c, d];
for (final lhs in list) {
expect(list, everyElement(lhs));
}
});
test('clamping', () {
expect(TextScaler.noScaling.clamp(minScaleFactor: 3.0), const TextScaler.linear(3.0));
expect(const TextScaler.linear(5.0).clamp(maxScaleFactor: 3.0), const TextScaler.linear(3.0));
expect(const TextScaler.linear(5.0).clamp(maxScaleFactor: 3.0), const TextScaler.linear(3.0));
expect(
const TextScaler.linear(5.0).clamp(minScaleFactor: 3.0, maxScaleFactor: 3.0),
const TextScaler.linear(3.0),
);
// Asserts when min > max.
expect(
() => TextScaler.noScaling.clamp(minScaleFactor: 5.0, maxScaleFactor: 4.0),
throwsA(
isA<AssertionError>().having(
(AssertionError error) => error.toString(),
'message',
contains('maxScaleFactor >= minScaleFactor'),
),
),
);
});
});
group('SystemTextScaler', () {
testWidgets('equality', (WidgetTester tester) async {
addTearDown(() => tester.platformDispatcher.clearAllTestValues());
tester.platformDispatcher.textScaleFactorTestValue = 123;
final TextScaler scaler1 = MediaQueryData.fromView(tester.view).textScaler;
tester.platformDispatcher.textScaleFactorTestValue = 345;
final TextScaler scaler2 = MediaQueryData.fromView(tester.view).textScaler;
tester.platformDispatcher.textScaleFactorTestValue = 123;
final TextScaler scaler3 = MediaQueryData.fromView(tester.view).textScaler;
expect(scaler1, scaler3);
expect(scaler1, isNot(scaler2));
});
});
}