5
5
import 'dart:async' ;
6
6
7
7
import 'package:build/build.dart' ;
8
- import 'package:build_runner/src/build/build_result.dart' ;
9
8
import 'package:build_test/build_test.dart' ;
10
9
import 'package:logging/logging.dart' ;
11
10
import 'package:test/test.dart' ;
@@ -14,14 +13,13 @@ import '../common/common.dart';
14
13
15
14
void main () {
16
15
test ('should fail if a severe logged' , () async {
17
- expect (
18
- (await testBuilders (
19
- [_LoggingBuilder (Level .SEVERE )],
20
- {'a|lib/a.dart' : '' },
21
- outputs: {'a|lib/a.dart.empty' : '' },
22
- )).buildResult.status,
23
- BuildStatus .failure,
16
+ final result = await testBuilders (
17
+ [_LoggingBuilder (Level .SEVERE )],
18
+ {'a|lib/a.dart' : '' },
19
+ outputs: {'a|lib/a.dart.empty' : '' },
24
20
);
21
+ expect (result.succeeded, false );
22
+ expect (result.errors, ['Log message for a|lib/a.dart.' ]);
25
23
});
26
24
27
25
test ('should fail if a severe was logged on a previous build' , () async {
@@ -30,7 +28,8 @@ void main() {
30
28
{'a|lib/a.dart' : '' },
31
29
outputs: {'a|lib/a.dart.empty' : '' },
32
30
);
33
- expect (result.buildResult.status, BuildStatus .failure);
31
+ expect (result.succeeded, false );
32
+ expect (result.errors, ['Log message for a|lib/a.dart.' ]);
34
33
35
34
final builder = _LoggingBuilder (Level .SEVERE );
36
35
result = await testBuilders (
@@ -40,7 +39,8 @@ void main() {
40
39
readerWriter: result.readerWriter,
41
40
outputs: {'a|lib/a.dart.empty' : '' },
42
41
);
43
- expect (result.buildResult.status, BuildStatus .failure);
42
+ expect (result.succeeded, false );
43
+ expect (result.errors, ['Log message for a|lib/a.dart.' ]);
44
44
// Should have failed without actually building again.
45
45
expect (builder.built, false );
46
46
});
@@ -53,7 +53,8 @@ void main() {
53
53
{'a|lib/a.dart' : '' },
54
54
outputs: {'a|lib/a.dart.empty' : '' },
55
55
);
56
- expect (result.buildResult.status, BuildStatus .failure);
56
+ expect (result.succeeded, false );
57
+ expect (result.errors, ['Log message for a|lib/a.dart.' ]);
57
58
58
59
result = await testBuilders (
59
60
[_LoggingBuilder (Level .WARNING )],
@@ -62,18 +63,18 @@ void main() {
62
63
readerWriter: result.readerWriter,
63
64
outputs: {'a|lib/a.dart.empty' : '' },
64
65
);
65
- expect (result.buildResult.status, BuildStatus .success);
66
+ expect (result.succeeded, true );
67
+ expect (result.errors, isEmpty);
66
68
},
67
69
);
68
70
69
71
test ('should fail if an exception is thrown' , () async {
70
- expect (
71
- (await testBuilders (
72
- [TestBuilder (build: (_, _) => throw Exception ('Some build failure' ))],
73
- {'a|lib/a.txt' : '' },
74
- )).buildResult.status,
75
- BuildStatus .failure,
72
+ final result = await testBuilders (
73
+ [TestBuilder (build: (_, _) => throw Exception ('Some build failure' ))],
74
+ {'a|lib/a.txt' : '' },
76
75
);
76
+ expect (result.succeeded, false );
77
+ expect (result.errors, ['Exception: Some build failure' ]);
77
78
});
78
79
79
80
test (
@@ -110,7 +111,8 @@ void main() {
110
111
],
111
112
{'a|lib/a.txt' : '' },
112
113
);
113
- expect (result.buildResult.status, BuildStatus .failure);
114
+ expect (result.succeeded, false );
115
+ expect (result.errors, ['Wrote an output then failed' ]);
114
116
},
115
117
);
116
118
}
@@ -124,7 +126,7 @@ class _LoggingBuilder implements Builder {
124
126
@override
125
127
Future <void > build (BuildStep buildStep) async {
126
128
built = true ;
127
- log.log (level, buildStep.inputId. toString () );
129
+ log.log (level, 'Log message for ${ buildStep .inputId }.' );
128
130
await buildStep.canRead (buildStep.inputId);
129
131
await buildStep.writeAsString (buildStep.inputId.addExtension ('.empty' ), '' );
130
132
}
0 commit comments