fix(bienvenida,grabaciones): headline size, CTA radius, storage caption
Screen 14 / audit 14.3+14.7: welcome headline now 34px/ls-1.2 (was headlineMedium's 28/ls-1.0), CTA restyled to a radius-18 rounded rectangle instead of Material 3's default StadiumBorder (t4:696,715). Screen 12 / audit 12.2+12.3: the recordings storage card now shows the bold "X of Y used" headline ABOVE a 6px/radius-3 bar, followed by a real folder-path + purge-policy caption below it -- was the bar first with the "used" string as its only (small, generic) caption (t4:613). New ARB key recordingsLibraryStorageFolderCaption, translated to all 13 locales. Item 12.5 (folder/max-size settings living behind the header action instead of inline on this screen) is a deliberate structural split from WU15b; the audit itself scopes it out of this pass.
This commit is contained in:
@@ -133,6 +133,42 @@ void main() {
|
||||
},
|
||||
);
|
||||
|
||||
testWidgets('visual fidelity (audit 14.3): the headline is 34px/w800/ls-1.2 '
|
||||
'(t4 line 696), not headlineMedium\'s 28', (tester) async {
|
||||
final navegacion = EstadoNavegacionRaiz();
|
||||
addTearDown(navegacion.dispose);
|
||||
|
||||
await tester.pumpWidget(_app(navegacion: navegacion));
|
||||
await tester.pumpAndSettle();
|
||||
|
||||
final headline = tester.widget<Text>(find.text('Tu mundo, en directo'));
|
||||
expect(headline.style?.fontSize, 34);
|
||||
expect(headline.style?.fontWeight, FontWeight.w800);
|
||||
expect(headline.style?.letterSpacing, -1.2);
|
||||
});
|
||||
|
||||
testWidgets('visual fidelity (audit 14.7): the CTA is a radius-18 rounded '
|
||||
'rectangle (t4 line 715), not the default fully-round StadiumBorder', (
|
||||
tester,
|
||||
) async {
|
||||
final navegacion = EstadoNavegacionRaiz();
|
||||
addTearDown(navegacion.dispose);
|
||||
|
||||
await tester.pumpWidget(_app(navegacion: navegacion));
|
||||
await tester.pumpAndSettle();
|
||||
|
||||
final boton = tester.widget<FilledButton>(find.byType(FilledButton));
|
||||
final forma = boton.style?.shape?.resolve(<WidgetState>{});
|
||||
expect(
|
||||
forma,
|
||||
isA<RoundedRectangleBorder>().having(
|
||||
(s) => (s.borderRadius as BorderRadius).topLeft,
|
||||
'topLeft radius',
|
||||
const Radius.circular(18),
|
||||
),
|
||||
);
|
||||
});
|
||||
|
||||
testWidgets('rendered content contains no monetization strings', (
|
||||
tester,
|
||||
) async {
|
||||
|
||||
Reference in New Issue
Block a user