@@ -6,17 +6,19 @@ import 'dart:typed_data';
6
6
7
7
import 'package:file/memory.dart' ;
8
8
import 'package:flutter_cache_manager/flutter_cache_manager.dart' ;
9
- import 'package:mockito/mockito .dart' ;
9
+ import 'package:mocktail/mocktail .dart' ;
10
10
import 'dart:async' ;
11
11
12
12
class FakeCacheManager extends Mock implements CacheManager {
13
13
void throwsNotFound (String url) {
14
- when (getFileStream (
15
- url,
16
- withProgress: anyNamed ('withProgress' ),
17
- headers: anyNamed ('headers' ),
18
- key: anyNamed ('key' ),
19
- )).thenThrow (HttpExceptionWithStatus (404 , 'Invalid statusCode: 404' ,
14
+ when (this ).calls (#getFileStream).withArgs (
15
+ positional: [url],
16
+ named: {
17
+ #key: any,
18
+ #headers: any,
19
+ #withProgress: any,
20
+ },
21
+ ).thenThrow (HttpExceptionWithStatus (404 , 'Invalid statusCode: 404' ,
20
22
uri: Uri .parse (url)));
21
23
}
22
24
@@ -31,12 +33,14 @@ class FakeCacheManager extends Mock implements CacheManager {
31
33
Uint8List .fromList (imageData.skip (offset).take (chunkSize).toList ()),
32
34
];
33
35
34
- when (getFileStream (
35
- url,
36
- withProgress: anyNamed ('withProgress' ),
37
- headers: anyNamed ('headers' ),
38
- key: anyNamed ('key' ),
39
- )).thenAnswer ((realInvocation) => _createResultStream (
36
+ when (this ).calls (#getFileStream).withArgs (
37
+ positional: [url],
38
+ named: {
39
+ #key: any,
40
+ #headers: any,
41
+ #withProgress: any,
42
+ },
43
+ ).thenAnswer ((_) => _createResultStream (
40
44
url,
41
45
chunks,
42
46
imageData,
@@ -74,27 +78,31 @@ class FakeCacheManager extends Mock implements CacheManager {
74
78
75
79
class FakeImageCacheManager extends Mock implements ImageCacheManager {
76
80
ExpectedData returns (
77
- String url,
78
- List <int > imageData, {
79
- Duration delayBetweenChunks,
80
- }) {
81
+ String url,
82
+ List <int > imageData, {
83
+ Duration delayBetweenChunks,
84
+ }) {
81
85
const chunkSize = 8 ;
82
86
final chunks = < Uint8List > [
83
87
for (int offset = 0 ; offset < imageData.length; offset += chunkSize)
84
88
Uint8List .fromList (imageData.skip (offset).take (chunkSize).toList ()),
85
89
];
86
90
87
- when (getImageFile (
88
- url,
89
- withProgress: anyNamed ('withProgress' ),
90
- headers: anyNamed ('headers' ),
91
- key: anyNamed ('key' ),
92
- )).thenAnswer ((realInvocation) => _createResultStream (
93
- url,
94
- chunks,
95
- imageData,
96
- delayBetweenChunks,
97
- ));
91
+ when (this ).calls (#getImageFile).withArgs (
92
+ positional: [url],
93
+ named: {
94
+ #key: any,
95
+ #headers: any,
96
+ #withProgress: any,
97
+ #maxHeight: any,
98
+ #maxWidth: any,
99
+ },
100
+ ).thenAnswer ((_) => _createResultStream (
101
+ url,
102
+ chunks,
103
+ imageData,
104
+ delayBetweenChunks,
105
+ ));
98
106
99
107
return ExpectedData (
100
108
chunks: chunks.length,
@@ -104,11 +112,11 @@ class FakeImageCacheManager extends Mock implements ImageCacheManager {
104
112
}
105
113
106
114
Stream <FileResponse > _createResultStream (
107
- String url,
108
- List <Uint8List > chunks,
109
- List <int > imageData,
110
- Duration delayBetweenChunks,
111
- ) async * {
115
+ String url,
116
+ List <Uint8List > chunks,
117
+ List <int > imageData,
118
+ Duration delayBetweenChunks,
119
+ ) async * {
112
120
var totalSize = imageData.length;
113
121
var downloaded = 0 ;
114
122
for (var chunk in chunks) {
0 commit comments