blob: 3c5a73e8a66905a9a91f5ebe260e95d6fa6dd88d [file] [log] [blame]
// Copyright 2020 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 'package:devtools_app/src/preferences.dart';
import 'package:test/test.dart';
void main() {
group('PreferencesController', () {
PreferencesController controller;
setUp(() {
controller = PreferencesController();
});
test('has value', () {
expect(controller.darkModeTheme.value, isNotNull);
});
test('toggleDarkModeTheme', () {
bool valueChanged = false;
final originalValue = controller.darkModeTheme.value;
controller.darkModeTheme.addListener(() {
valueChanged = true;
});
controller.toggleDarkModeTheme(!controller.darkModeTheme.value);
expect(valueChanged, isTrue);
expect(controller.darkModeTheme.value, isNot(originalValue));
});
test('toggleVmDeveloperMode', () {
bool valueChanged = false;
final originalValue = controller.vmDeveloperModeEnabled.value;
controller.vmDeveloperModeEnabled.addListener(() {
valueChanged = true;
});
controller
.toggleVmDeveloperMode(!controller.vmDeveloperModeEnabled.value);
expect(valueChanged, isTrue);
expect(controller.vmDeveloperModeEnabled.value, isNot(originalValue));
});
});
}