m3_lightmeter/test/utils/selectable_provider_test.dart

77 lines
1.8 KiB
Dart
Raw Permalink Normal View History

2023-11-01 10:46:52 +00:00
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:lightmeter/utils/selectable_provider.dart';
void main() {
group('SelectableInheritedModel.updateShouldNotifyDependent', () {
final model = SelectableInheritedModel<int>(
values: List.generate(25, (index) => index),
selected: 1,
child: const SizedBox(),
);
test(
'`{}`',
() {
expect(
model.updateShouldNotifyDependent(
SelectableInheritedModel<int>(
values: List.generate(25, (index) => index),
selected: 1,
child: const SizedBox(),
),
{},
),
false,
);
},
);
test(
'`{SelectableAspect.list}`',
() {
expect(
model.updateShouldNotifyDependent(
SelectableInheritedModel<int>(
values: List.generate(25, (index) => index),
selected: 1,
child: const SizedBox(),
),
{SelectableAspect.list},
),
true,
);
},
);
test(
'`{SelectableAspect.selected}`',
() {
expect(
model.updateShouldNotifyDependent(
SelectableInheritedModel<int>(
values: List.generate(25, (index) => index),
selected: 1,
child: const SizedBox(),
),
{SelectableAspect.selected},
),
false,
);
expect(
model.updateShouldNotifyDependent(
SelectableInheritedModel<int>(
values: List.generate(25, (index) => index),
selected: 2,
child: const SizedBox(),
),
{SelectableAspect.selected},
),
true,
);
},
);
});
}