update test cases

This commit is contained in:
Wenqi Li 2023-05-15 01:41:02 +08:00
parent a68059733d
commit e708c0a964
3 changed files with 13 additions and 15 deletions

View File

@ -22,14 +22,14 @@ void main() {
test('list albums', () async {
MediumType mediumType = MediumType.image;
bool newest = true;
var result = await PhotoGallery.listAlbums(mediumType: mediumType);
var expected = Generator.generateAlbums(mediumType: mediumType);
var expected = Generator.generateAlbums(mediumType: mediumType, newest: newest);
expect(result, expected);
});
test('list media', () async {
MediumType mediumType = MediumType.image;
bool newest = true;
int skip = 0;
int take = 1;
List<Album> albums = await PhotoGallery.listAlbums(mediumType: mediumType);
@ -38,7 +38,6 @@ void main() {
MediaPage expected = Generator.generateMediaPage(
album: allAlbum,
mediumType: mediumType,
newest: newest,
skip: skip,
take: take,
);

View File

@ -3,34 +3,37 @@ import 'dart:io';
import 'package:photo_gallery/photo_gallery.dart';
class Generator {
static dynamic generateAlbumsJson(
{MediumType? mediumType = MediumType.image}) {
static dynamic generateAlbumsJson({
MediumType? mediumType = MediumType.image,
bool? newest = true,
}) {
return [
{
"id": "__ALL__",
"mediumType": mediumTypeToJson(mediumType),
"newest": newest,
"name": "All",
"count": 5,
},
{
"id": "AlbumId",
"mediumType": mediumTypeToJson(mediumType),
"newest": newest,
"name": "AlbumName",
"count": 5,
}
];
}
static List<Album> generateAlbums({MediumType? mediumType}) {
return Generator.generateAlbumsJson(mediumType: mediumType)
.map<Album>((x) => Album.fromJson(x))
static List<Album> generateAlbums({MediumType? mediumType, bool newest = true}) {
return Generator.generateAlbumsJson(mediumType: mediumType, newest: newest)
.map<Album>((x) => Album.fromJson(x, mediumType, newest))
.toList();
}
static dynamic generateMediaPageJson({
required String albumId,
MediumType? mediumType,
bool newest = true,
int? skip,
int? take,
}) {
@ -44,7 +47,6 @@ class Generator {
}
return {
"newest": newest,
"start": skip,
"items": items,
};
@ -69,14 +71,12 @@ class Generator {
static MediaPage generateMediaPage({
required Album album,
MediumType? mediumType,
bool newest = true,
int? skip,
int? take,
}) {
dynamic json = generateMediaPageJson(
albumId: album.id,
mediumType: mediumType,
newest: newest,
skip: skip,
take: take ?? album.count,
);

View File

@ -7,18 +7,17 @@ import 'generator.dart';
Future<dynamic> mockMethodCallHandler(MethodCall call) async {
if (call.method == "listAlbums") {
MediumType? mediumType = jsonToMediumType(call.arguments['mediumType']);
dynamic albums = Generator.generateAlbumsJson(mediumType: mediumType);
bool newest = call.arguments['newest'];
dynamic albums = Generator.generateAlbumsJson(mediumType: mediumType, newest: newest);
return albums;
} else if (call.method == "listMedia") {
String albumId = call.arguments['albumId'];
MediumType? mediumType = jsonToMediumType(call.arguments['mediumType']);
bool newest = call.arguments['newest'];
int? skip = call.arguments['skip'];
int? take = call.arguments['take'];
dynamic mediaPage = Generator.generateMediaPageJson(
albumId: albumId,
mediumType: mediumType,
newest: newest,
skip: skip,
take: take,
);