fix: show personal diet name and consultant notifications

This commit is contained in:
2026-11-06 14:22:55 +03:00
parent ad70d0988e
commit 6c4572af55
26 changed files with 323 additions and 34 deletions

View File

@@ -153,6 +153,29 @@ void main() {
});
});
testWidgets('shows personal diet name in status chip', (tester) async {
final consultation = mockConsultation.copyWith(
personalDietId: 1,
personalDietName: 'Индивидуальный план питания',
);
await mockNetworkImagesFor(() async {
await tester.pumpWidget(
wrap(ConsultationCardWidget(consultationsModel: consultation)),
);
await tester.pumpAndSettle();
final s = S.of(tester.element(find.byType(ConsultationCardWidget)));
expect(
find.text(
s.personal_diet_proposed_named('Индивидуальный план питания'),
),
findsOneWidget,
);
});
});
testWidgets('renders diary days', (tester) async {
await mockNetworkImagesFor(() async {
await tester.pumpWidget(

View File

@@ -21,11 +21,16 @@ Widget _wrap(Widget child) {
);
}
Widget _chip(ChosenPlanStateEnum state, {bool hasPersonalDiet = true}) {
Widget _chip(
ChosenPlanStateEnum state, {
bool hasPersonalDiet = true,
String? personalDietName,
}) {
return PersonalDietStatusChip(
progress: mapConsultationProgress(
state: state,
hasPersonalDiet: hasPersonalDiet,
personalDietName: personalDietName,
),
);
}
@@ -55,6 +60,24 @@ void main() {
expect(find.text(s.personal_diet_proposed), findsOneWidget);
});
testWidgets('proposed с названием показывает имя диеты', (tester) async {
await tester.pumpWidget(
_wrap(
_chip(
ChosenPlanStateEnum.stateStarted,
personalDietName: 'Индивидуальный план питания',
),
),
);
final s = S.of(tester.element(find.byType(PersonalDietStatusChip)));
expect(
find.text(s.personal_diet_proposed_named('Индивидуальный план питания')),
findsOneWidget,
);
});
testWidgets('notProposed показывает personal_diet_not_proposed', (
tester,
) async {