mirror of
https://github.com/inventree/inventree-app.git
synced 2025-06-12 18:25:26 +00:00
List refactor (#179)
* Catch paginator bug if widget is disposed before request returns * Refactoring paginated query widget - Add option to enable / disable search filters * Major refactor of paginated search widget - Learned something new.. a state can access widget.<attribute> - THIS CHANGES EVERTHING * Preferences: Add code for tri-state values - Also improve unit testing for preferences code * Allow boolean form fields to be optionally tristate * paginator: Allow custom boolean filters * Remove outdated filtering preferences * Refactor filter options - Allow specification of more detailed options * Add custom filters for "part" list * filter tweaks * Remove legacy "SublocationList" widget * Add filtering option for locationlist * Updates for stock location widget * Refactor category display widget * More widget refactoring * Update main search widget * Fix unit tests * Improve filtering on BOM display page
This commit is contained in:
@ -8,7 +8,6 @@ import "package:inventree/preferences.dart";
|
||||
void main() {
|
||||
|
||||
setUp(() async {
|
||||
|
||||
});
|
||||
|
||||
group("Settings Tests:", () {
|
||||
@ -26,5 +25,44 @@ void main() {
|
||||
|
||||
expect(await InvenTreeSettingsManager().getValue("abc", "123"), equals("xyz"));
|
||||
});
|
||||
|
||||
test("Booleans", () async {
|
||||
// Tests for boolean values
|
||||
|
||||
await InvenTreeSettingsManager().removeValue("chicken");
|
||||
|
||||
// Use default values when a setting does not exist
|
||||
assert(await InvenTreeSettingsManager().getBool("chicken", true) == true);
|
||||
assert(await InvenTreeSettingsManager().getBool("chicken", false) == false);
|
||||
|
||||
// Explicitly set to true
|
||||
await InvenTreeSettingsManager().setValue("chicken", true);
|
||||
assert(await InvenTreeSettingsManager().getBool("chicken", false) == true);
|
||||
|
||||
// Explicitly set to false
|
||||
await InvenTreeSettingsManager().setValue("chicken", false);
|
||||
assert(await InvenTreeSettingsManager().getBool("chicken", true) == false);
|
||||
|
||||
});
|
||||
|
||||
test("Tri State", () async {
|
||||
// Tests for tristate values
|
||||
|
||||
await InvenTreeSettingsManager().removeValue("dog");
|
||||
|
||||
// Use default values when a setting does not exist
|
||||
for (bool? value in [true, false, null]) {
|
||||
assert(await InvenTreeSettingsManager().getTriState("dog", value) == value);
|
||||
}
|
||||
|
||||
// Explicitly set to a value
|
||||
for (bool? value in [true, false, null]) {
|
||||
await InvenTreeSettingsManager().setValue("dog", value);
|
||||
|
||||
assert(await InvenTreeSettingsManager().getTriState("dog", true) == value);
|
||||
assert(await InvenTreeSettingsManager().getTriState("dog", false) == value);
|
||||
assert(await InvenTreeSettingsManager().getTriState("dog", null) == value);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
Reference in New Issue
Block a user