From 1fe26595bba35ac54b220aa0c0093680914b3a3d Mon Sep 17 00:00:00 2001 From: HuWentao <35894003+Hu-Wentao@users.noreply.github.com> Date: Sun, 10 Aug 2025 15:05:41 +0800 Subject: [PATCH] refactor DeviceScreenType::index, so that enumeration instances can be compared --- lib/src/device_screen_type.dart | 12 ++++++------ test/device_screen_type_test.dart | 20 ++++++++++++++++++++ 2 files changed, 26 insertions(+), 6 deletions(-) create mode 100644 test/device_screen_type_test.dart diff --git a/lib/src/device_screen_type.dart b/lib/src/device_screen_type.dart index 311321d..fec24fc 100644 --- a/lib/src/device_screen_type.dart +++ b/lib/src/device_screen_type.dart @@ -1,16 +1,16 @@ enum DeviceScreenType { + watch, + @Deprecated('Use lowercase version') + Watch, + mobile, @Deprecated('Use lowercase version') Mobile, + tablet, @Deprecated('Use lowercase version') Tablet, + desktop, @Deprecated('Use lowercase version') Desktop, - @Deprecated('Use lowercase version') - Watch, - mobile, - tablet, - desktop, - watch } enum RefinedSize { small, normal, large, extraLarge } diff --git a/test/device_screen_type_test.dart b/test/device_screen_type_test.dart new file mode 100644 index 0000000..0e8ebda --- /dev/null +++ b/test/device_screen_type_test.dart @@ -0,0 +1,20 @@ +import 'package:flutter_test/flutter_test.dart'; +import 'package:responsive_builder/responsive_builder.dart'; + +main() { + group('DeviceScreenType', () { + test('index', () { + final list = [ + DeviceScreenType.watch, + DeviceScreenType.mobile, + DeviceScreenType.tablet, + DeviceScreenType.desktop, + ]; + for (var i = 1; i < list.length; i++) { + final pre = list[i - 1]; + final cur = list[i]; + expect(pre.index < cur.index, true); + } + }); + }); +}