import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:jiu_client/core/auth/auth_state.dart'; import 'package:jiu_client/models/shop.dart'; import 'package:jiu_client/providers/shop_provider.dart'; import 'package:jiu_client/screens/settings/settings_screen.dart'; import '../support/golden_harness.dart'; import '../support/shell_harness.dart'; /// design-distill 阶段4:系统设置 golden × 三主题(回归闸 + 保真基准)。 /// 桌面版挂进真 AppShell,默认「门店信息」面板,门店数据照抄原型 /// screens/settings.html(鼎晟酒行 / DSJH-001 / 拱墅区运河路…): /// node tools/fidelity.mjs settings /// 更新基准:flutter test --update-goldens test/golden/settings_golden_test.dart const _shop = ShopInfo( id: 1, code: 'DSJH-001', name: '鼎晟酒行', address: '浙江省杭州市拱墅区运河路 168 号 1 幢', phone: '0571-8888 6666', managerName: '王经理', wechatId: 'dingsheng-wine', ); List _overrides() => [ shopInfoProvider.overrideWith((ref) => _shop), isReadonlyProvider.overrideWithValue(false), ]; void main() { TestWidgetsFlutterBinding.ensureInitialized(); SharedPreferences.setMockInitialValues({}); // 桌面:外壳挂载整框(默认门店信息面板) shellGoldenAcrossThemes( 'settings 门店信息 整框(桌面)', path: '/settings', screen: (_) => const SettingsScreen(), goldenPrefix: 'settings', overrides: _overrides, logical: const Size(1280, 900), ); // 移动:seg 横滚 + 单列面板 goldenAcrossThemes( 'settings 门店信息 整屏(移动)', goldenPrefix: 'settings_mobile', child: () => const Scaffold(body: SettingsScreen()), overrides: _overrides, logical: const Size(390, 1200), ); }