55import 'dart:async' ;
66
77import 'package:build/build.dart' ;
8- import 'package:build_runner/src/build/build_result.dart' ;
98import 'package:build_test/build_test.dart' ;
109import 'package:logging/logging.dart' ;
1110import 'package:test/test.dart' ;
@@ -14,14 +13,13 @@ import '../common/common.dart';
1413
1514void main () {
1615 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' : '' },
2420 );
21+ expect (result.succeeded, false );
22+ expect (result.errors, ['Log message for a|lib/a.dart.' ]);
2523 });
2624
2725 test ('should fail if a severe was logged on a previous build' , () async {
@@ -30,7 +28,8 @@ void main() {
3028 {'a|lib/a.dart' : '' },
3129 outputs: {'a|lib/a.dart.empty' : '' },
3230 );
33- expect (result.buildResult.status, BuildStatus .failure);
31+ expect (result.succeeded, false );
32+ expect (result.errors, ['Log message for a|lib/a.dart.' ]);
3433
3534 final builder = _LoggingBuilder (Level .SEVERE );
3635 result = await testBuilders (
@@ -40,7 +39,8 @@ void main() {
4039 readerWriter: result.readerWriter,
4140 outputs: {'a|lib/a.dart.empty' : '' },
4241 );
43- expect (result.buildResult.status, BuildStatus .failure);
42+ expect (result.succeeded, false );
43+ expect (result.errors, ['Log message for a|lib/a.dart.' ]);
4444 // Should have failed without actually building again.
4545 expect (builder.built, false );
4646 });
@@ -53,7 +53,8 @@ void main() {
5353 {'a|lib/a.dart' : '' },
5454 outputs: {'a|lib/a.dart.empty' : '' },
5555 );
56- expect (result.buildResult.status, BuildStatus .failure);
56+ expect (result.succeeded, false );
57+ expect (result.errors, ['Log message for a|lib/a.dart.' ]);
5758
5859 result = await testBuilders (
5960 [_LoggingBuilder (Level .WARNING )],
@@ -62,18 +63,18 @@ void main() {
6263 readerWriter: result.readerWriter,
6364 outputs: {'a|lib/a.dart.empty' : '' },
6465 );
65- expect (result.buildResult.status, BuildStatus .success);
66+ expect (result.succeeded, true );
67+ expect (result.errors, isEmpty);
6668 },
6769 );
6870
6971 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' : '' },
7675 );
76+ expect (result.succeeded, false );
77+ expect (result.errors, ['Exception: Some build failure' ]);
7778 });
7879
7980 test (
@@ -110,7 +111,8 @@ void main() {
110111 ],
111112 {'a|lib/a.txt' : '' },
112113 );
113- expect (result.buildResult.status, BuildStatus .failure);
114+ expect (result.succeeded, false );
115+ expect (result.errors, ['Wrote an output then failed' ]);
114116 },
115117 );
116118}
@@ -124,7 +126,7 @@ class _LoggingBuilder implements Builder {
124126 @override
125127 Future <void > build (BuildStep buildStep) async {
126128 built = true ;
127- log.log (level, buildStep.inputId. toString () );
129+ log.log (level, 'Log message for ${ buildStep .inputId }.' );
128130 await buildStep.canRead (buildStep.inputId);
129131 await buildStep.writeAsString (buildStep.inputId.addExtension ('.empty' ), '' );
130132 }
0 commit comments