import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:pluriwave/pantallas/ajustes/widgets/fila_ajuste.dart'; import 'package:pluriwave/tema/pluriwave_theme.dart'; /// S8 (Tier 1 visual fidelity): the prototype puts a trailing "current /// value" on nearly every settings row, 13px `rgba(242,247,250,.55)` (t4 /// lines 512-539, 625 — "Voz clara", "Alta", "3 guardados", "Alfabético", /// "7 · 84 MB", "Español", "Hoy, 08:12", "200 MB"). `FilaAjuste` used to /// accept only `icon`/`titulo`/`onTap` — no value slot at all. void main() { Widget host(Widget child) { return MaterialApp( theme: PluriWaveTheme.dark(), home: Scaffold(body: child), ); } testWidgets('renders the trailing value before the chevron when provided', ( tester, ) async { await tester.pumpWidget( host( FilaAjuste( icon: Icons.language_rounded, titulo: 'Language', valor: 'English', onTap: () {}, ), ), ); expect(find.text('English'), findsOneWidget); expect(find.byIcon(Icons.chevron_right_rounded), findsOneWidget); }); testWidgets('renders no trailing value text when valor is omitted ' '(unchanged pre-S8 behaviour)', (tester) async { await tester.pumpWidget( host( FilaAjuste( icon: Icons.info_outline_rounded, titulo: 'Info', onTap: () {}, ), ), ); expect(find.text('Info'), findsOneWidget); expect(find.byIcon(Icons.chevron_right_rounded), findsOneWidget); }); }