import 'package:eatvio_app/core/models/pagination_model.dart'; import 'package:eatvio_app/features/feed/models/diets_pagination_model.dart'; import 'package:flutter_test/flutter_test.dart'; void main() { group('DietsPagination', () { test('создает DietsPagination с правильными значениями', () { const diet = Diet( id: 1, slug: 'test-diet', name: 'Test Diet', image: 'https://example.com/image.jpg', duration: 7, state: DietState.active, type: DietType(veg: true, light: false, carb: false, meat: false), details: 'Test details', dailySchedule: {}, author: Author( authorSlug: 'author', authorName: 'Author Name', authorProfileIcon: 'https://example.com/icon.jpg', authorIsMe: false, isEntitySubscribedByMe: null, authorPlaceInRating: null, ), totalLikes: 10, totalViews: 100, totalComments: 5, wasLikedByMe: false, isFavorite: false, dailyNutrition: [], ); const pagination = DietsPagination( data: [diet], links: Links( first: 'https://example.com?page=1', last: 'https://example.com?page=1', prev: null, next: null, ), meta: Meta( currentPage: 1, from: 1, lastPage: 1, links: [], perPage: 10, to: 1, total: 1, ), ); expect(pagination.data.length, 1); expect(pagination.data.first.id, 1); expect(pagination.data.first.name, 'Test Diet'); }); }); group('DietState', () { test('toString возвращает правильные значения', () { expect(DietState.active.toString(), 'active'); expect(DietState.draft.toString(), 'drafted'); expect(DietState.personal.toString(), 'personal'); }); }); }