finished tests

This commit is contained in:
commitimpush 2022-09-02 16:48:45 +02:00
parent ca429c48f8
commit 1ae89ef3cb
5 changed files with 7 additions and 71 deletions

View file

@ -1 +1 @@
{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"image_picker_ios","path":"C:\\\\src\\\\flutter\\\\.pub-cache\\\\hosted\\\\pub.dartlang.org\\\\image_picker_ios-0.8.5+6\\\\","native_build":true,"dependencies":[]}],"android":[{"name":"flutter_plugin_android_lifecycle","path":"C:\\\\src\\\\flutter\\\\.pub-cache\\\\hosted\\\\pub.dartlang.org\\\\flutter_plugin_android_lifecycle-2.0.7\\\\","native_build":true,"dependencies":[]},{"name":"image_picker_android","path":"C:\\\\src\\\\flutter\\\\.pub-cache\\\\hosted\\\\pub.dartlang.org\\\\image_picker_android-0.8.5+2\\\\","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"]}],"macos":[],"linux":[],"windows":[],"web":[{"name":"image_picker_for_web","path":"C:\\\\src\\\\flutter\\\\.pub-cache\\\\hosted\\\\pub.dartlang.org\\\\image_picker_for_web-2.1.8\\\\","dependencies":[]}]},"dependencyGraph":[{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"image_picker","dependencies":["image_picker_android","image_picker_for_web","image_picker_ios"]},{"name":"image_picker_android","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"image_picker_for_web","dependencies":[]},{"name":"image_picker_ios","dependencies":[]}],"date_created":"2022-09-02 16:11:58.043866","version":"3.0.5"}
{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"image_picker_ios","path":"C:\\\\src\\\\flutter\\\\.pub-cache\\\\hosted\\\\pub.dartlang.org\\\\image_picker_ios-0.8.5+6\\\\","native_build":true,"dependencies":[]}],"android":[{"name":"flutter_plugin_android_lifecycle","path":"C:\\\\src\\\\flutter\\\\.pub-cache\\\\hosted\\\\pub.dartlang.org\\\\flutter_plugin_android_lifecycle-2.0.7\\\\","native_build":true,"dependencies":[]},{"name":"image_picker_android","path":"C:\\\\src\\\\flutter\\\\.pub-cache\\\\hosted\\\\pub.dartlang.org\\\\image_picker_android-0.8.5+2\\\\","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"]}],"macos":[],"linux":[],"windows":[],"web":[{"name":"image_picker_for_web","path":"C:\\\\src\\\\flutter\\\\.pub-cache\\\\hosted\\\\pub.dartlang.org\\\\image_picker_for_web-2.1.8\\\\","dependencies":[]}]},"dependencyGraph":[{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"image_picker","dependencies":["image_picker_android","image_picker_for_web","image_picker_ios"]},{"name":"image_picker_android","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"image_picker_for_web","dependencies":[]},{"name":"image_picker_ios","dependencies":[]}],"date_created":"2022-09-02 16:42:31.527883","version":"3.0.5"}

View file

@ -3,13 +3,16 @@ import 'dart:typed_data';
import 'package:image_picker/image_picker.dart';
class ImagePickerService {
final ImagePicker _imagePicker = ImagePicker();
ImagePickerService({this.imagePicker});
ImagePicker? imagePicker;
/// [pickImage] is the function that picks the image and returns it as a [Uint8List].
/// The function requires [source], an [ImageSource] that's the method of how the image needs to be picked, for example gallery or camera.
Future<Uint8List?> pickImage(ImageSource source) async {
var image =
await (await _imagePicker.pickImage(source: source))?.readAsBytes();
await (await (imagePicker ?? ImagePicker()).pickImage(source: source))
?.readAsBytes();
return image;
}
}

View file

@ -1,4 +0,0 @@
import 'package:image_picker/image_picker.dart';
import 'package:mocktail/mocktail.dart';
class ImagePickerMock extends Mock implements ImagePicker {}

View file

@ -1,22 +1,4 @@
import 'dart:typed_data';
import 'dart:ui';
import 'package:flutter/material.dart';
import 'package:flutter_image_picker/src/services/image_picker_service.dart';
import 'package:image_picker/image_picker.dart';
import 'package:mocktail/mocktail.dart';
class ImagePickerServiceMock extends Mock implements ImagePickerService {
// @override
// Future<Uint8List?> pickImage(ImageSource source) async {
// PictureRecorder recorder = PictureRecorder();
// Canvas c = Canvas(recorder);
// c.drawRect(
// const Rect.fromLTWH(0, 0, 100, 100), Paint()..color = Colors.red); // et
// Picture p = recorder.endRecording();
// var image = await p.toImage(100, 100);
// ByteData data =
// await image.toByteData(format: ImageByteFormat.png) as ByteData;
// return Future.value(data.buffer.asUint8List());
// }
}
class ImagePickerServiceMock extends Mock implements ImagePickerService {}

View file

@ -1,45 +0,0 @@
// import 'dart:typed_data';
// import 'package:flutter/material.dart';
// import 'package:flutter_image_picker/src/services/image_picker_service.dart';
// import 'package:flutter_test/flutter_test.dart';
// import 'package:image_picker/image_picker.dart';
// import 'package:mocktail/mocktail.dart';
// import '../../mocks/image_picker_mock.dart';
// void main() {
// WidgetsFlutterBinding.ensureInitialized();
// late ImagePickerMock imagePickerMock;
// late ImagePickerService sut;
// setUp(() {
// imagePickerMock = ImagePickerMock();
// sut = ImagePickerService();
// });
// group("Image Picker Test with camera option", () {
// setUp(() {
// imagePickerMock = ImagePickerMock();
// sut = ImagePickerService();
// });
// test("When function called with Camera parameter returns correct picture",
// () async {
// // Setup the neccesary variables to test
// XFile? xFile = XFile("Test", bytes: Uint8List(50));
// // //Mock the pickImage function of the image picker to return an image
// when(() => imagePickerMock.pickImage(source: ImageSource.gallery))
// .thenAnswer((_) => Future.value(xFile));
// // Execute test
// var image = await sut.pickImage(ImageSource.gallery);
// // //Assert test
// expect(image, Uint8List(50));
// });
// });
// group("Image Picker Widget with gallery option", () {});
// }