import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:userfront/core/theme/theme_controller.dart'; void main() { TestWidgetsFlutterBinding.ensureInitialized(); setUp(() async { SharedPreferences.setMockInitialValues({}); await ThemeController.instance.setThemeMode(ThemeMode.light); }); test('저장된 dark 값을 복원한다', () async { SharedPreferences.setMockInitialValues({ ThemeController.storageKey: 'dark', }); await ThemeController.instance.restore(); expect(ThemeController.instance.value, ThemeMode.dark); }); test('toggle 결과를 저장한다', () async { await ThemeController.instance.restore(); await ThemeController.instance.toggle(); final prefs = await SharedPreferences.getInstance(); expect(ThemeController.instance.value, ThemeMode.dark); expect(prefs.getString(ThemeController.storageKey), 'dark'); }); }