fix(favoritos): restyle the dashed custom-station CTA to spec
Tier 4 visual fidelity, audit 4.5 (t4 line 235): the border and the label/icon now use the prototype's two DIFFERENT opacities (rgba(255,255,255,.16) stroke vs rgba(242,247,250,.6) text/icon, previously one shared 50% colour for both), padding is a uniform 14 instead of symmetric(18,16), and the icon is a plain add glyph at 20px instead of add_circle_outline_rounded.
This commit is contained in:
@@ -102,6 +102,33 @@ void main() {
|
||||
await tester.pump(const Duration(milliseconds: 100));
|
||||
}
|
||||
|
||||
group('visual fidelity (audit 4.5): dashed custom-station CTA', () {
|
||||
testWidgets(
|
||||
'padding is 14 all around, the icon is a plain add glyph at 20px, '
|
||||
'and the label is 13.5px/w800 (t4 line 235)',
|
||||
(tester) async {
|
||||
final estado = await crearEstadoVacio();
|
||||
addTearDown(estado.dispose);
|
||||
await tester.pumpWidget(buildScreen(estado));
|
||||
await pumpStable(tester);
|
||||
|
||||
final padding = tester.widget<Padding>(
|
||||
find.byKey(const Key('custom-station-cta-padding')),
|
||||
);
|
||||
expect(padding.padding, const EdgeInsets.all(14));
|
||||
|
||||
expect(find.byIcon(Icons.add_circle_outline_rounded), findsNothing);
|
||||
final icon = tester.widget<Icon>(find.byIcon(Icons.add_rounded));
|
||||
expect(icon.size, 20);
|
||||
|
||||
final l10n = lookupAppLocalizations(const Locale('en'));
|
||||
final texto = tester.widget<Text>(find.text(l10n.customStationsAddCta));
|
||||
expect(texto.style?.fontSize, 13.5);
|
||||
expect(texto.style?.fontWeight, FontWeight.w800);
|
||||
},
|
||||
);
|
||||
});
|
||||
|
||||
// ── EstadoRadio: new state surface (state-layer, not widget-layer) ───────
|
||||
|
||||
test('listaFavoritosManual returns favorites in stored order, NOT re-sorted '
|
||||
|
||||
Reference in New Issue
Block a user