@@ -27,13 +27,19 @@ class _MockLogger extends Mock implements Logger {}
27
27
28
28
class _MockProgress extends Mock implements Progress {}
29
29
30
- class _MockProcessResult extends Mock implements ProcessResult {}
31
-
32
30
void main () {
33
31
group ('dartPubGet' , () {
34
32
late HookContext context;
35
33
late Logger logger;
36
34
35
+ const processId = 42 ;
36
+ final processResult = ProcessResult (
37
+ processId,
38
+ ExitCode .success.code,
39
+ '' ,
40
+ '' ,
41
+ );
42
+
37
43
setUp (() {
38
44
logger = _MockLogger ();
39
45
context = _FakeHookContext (logger: logger);
@@ -43,8 +49,7 @@ void main() {
43
49
44
50
test ('completes when process succeeds' , () async {
45
51
final exitCalls = < int > [];
46
- final result = _MockProcessResult ();
47
- when (() => result.exitCode).thenReturn (ExitCode .success.code);
52
+
48
53
await dartPubGet (
49
54
context,
50
55
workingDirectory: '.' ,
@@ -58,7 +63,7 @@ void main() {
58
63
expect (args, equals (['pub' , 'get' ]));
59
64
expect (workingDirectory, equals ('.' ));
60
65
expect (runInShell, isTrue);
61
- return result ;
66
+ return processResult ;
62
67
},
63
68
exit: exitCalls.add,
64
69
);
@@ -69,10 +74,14 @@ void main() {
69
74
test ('exits when process fails' , () async {
70
75
const error = 'oops something went wrong' ;
71
76
final exitCalls = < int > [];
72
- final result = _MockProcessResult ();
73
- final code = ExitCode .software.code;
74
- when (() => result.exitCode).thenReturn (code);
75
- when (() => result.stderr).thenReturn (error);
77
+
78
+ final processResult = ProcessResult (
79
+ processId,
80
+ ExitCode .software.code,
81
+ '' ,
82
+ error,
83
+ );
84
+
76
85
await dartPubGet (
77
86
context,
78
87
workingDirectory: '.' ,
@@ -82,21 +91,17 @@ void main() {
82
91
String ? workingDirectory,
83
92
bool ? runInShell,
84
93
}) async {
85
- return result ;
94
+ return processResult ;
86
95
},
87
96
exit: exitCalls.add,
88
97
);
89
- expect (exitCalls, equals ([code]));
98
+ expect (exitCalls, equals ([ExitCode .software. code]));
90
99
verify (() => logger.err (error)).called (1 );
91
100
});
92
101
93
102
test ('exits when ProcessException occurs' , () async {
94
103
const error = 'oops something went wrong' ;
95
104
final exitCalls = < int > [];
96
- final result = _MockProcessResult ();
97
- final code = ExitCode .software.code;
98
- when (() => result.exitCode).thenReturn (code);
99
- when (() => result.stderr).thenReturn (error);
100
105
await dartPubGet (
101
106
context,
102
107
workingDirectory: '.' ,
@@ -106,11 +111,16 @@ void main() {
106
111
String ? workingDirectory,
107
112
bool ? runInShell,
108
113
}) async {
109
- throw ProcessException ('dart' , ['pub' , 'get' ], error, code);
114
+ throw ProcessException (
115
+ 'dart' ,
116
+ ['pub' , 'get' ],
117
+ error,
118
+ ExitCode .software.code,
119
+ );
110
120
},
111
121
exit: exitCalls.add,
112
122
);
113
- expect (exitCalls, equals ([code]));
123
+ expect (exitCalls, equals ([ExitCode .software. code]));
114
124
verify (() => logger.err (error)).called (1 );
115
125
});
116
126
});
0 commit comments