forked from eatvio/eatvio_app
52 lines
1.7 KiB
Dart
52 lines
1.7 KiB
Dart
import 'package:eatvio_app/features/feed/models/feed_blog_post_model.dart';
|
|
import 'package:eatvio_app/features/feed/models/post_feed_mapper.dart';
|
|
import 'package:eatvio_app/features/feed/models/post_feed_pagination_model.dart';
|
|
|
|
import 'fixture_reader.dart';
|
|
|
|
class FeedFixtures {
|
|
FeedFixtures._();
|
|
|
|
static Map<String, dynamic> postFeedResponseJson() {
|
|
return FixtureReader.readAsMap('feed/post_feed_response.json');
|
|
}
|
|
|
|
static Map<String, dynamic> postFeedNextPageResponseJson() {
|
|
return FixtureReader.readAsMap('feed/post_feed_next_page_response.json');
|
|
}
|
|
|
|
static Map<String, dynamic> postFeedEmptyResponseJson() {
|
|
return FixtureReader.readAsMap('feed/post_feed_empty_response.json');
|
|
}
|
|
|
|
static Map<String, dynamic> feedBlogPostResponseJson() {
|
|
return FixtureReader.readAsMap('feed/feed_blog_post_response.json');
|
|
}
|
|
|
|
static PostFeedPaginationModel postFeedPaginationModel() {
|
|
return PostFeedPaginationModel.fromJson(postFeedResponseJson());
|
|
}
|
|
|
|
static PostFeedPaginationModel postFeedNextPagePaginationModel() {
|
|
return PostFeedPaginationModel.fromJson(postFeedNextPageResponseJson());
|
|
}
|
|
|
|
static PostFeedPaginationModel postFeedEmptyPaginationModel() {
|
|
return PostFeedPaginationModel.fromJson(postFeedEmptyResponseJson());
|
|
}
|
|
|
|
static PostFeedItemModel postFeedItem({int index = 0}) {
|
|
return postFeedPaginationModel().data[index];
|
|
}
|
|
|
|
static List<FeedBlogPostModel> mappedFeedPosts({int? currentUserId}) {
|
|
return postFeedPaginationModel().data
|
|
.map((item) => PostFeedMapper.fromPostFeedItem(item, currentUserId: currentUserId))
|
|
.toList();
|
|
}
|
|
|
|
static FeedBlogPostModel feedBlogPostModel() {
|
|
return FeedBlogPostModel.fromJson(feedBlogPostResponseJson());
|
|
}
|
|
}
|