| >>> (indent 4) |
| return doughnutFryer.start() |
| .then((_) => _frostingGlazer.start()) |
| .then((_) => |
| Future.wait([ |
| _conveyorBelts.start(), |
| sprinkleSprinkler.start(), |
| sauceDripper.start()])) |
| .catchError(cannotGetConveyorBeltRunning) |
| .then((_) => tellEveryoneDonutsAreJustAboutDone()) |
| .then((_) => |
| Future.wait([ |
| croissantFactory.start(), |
| _giantBakingOvens.start(), |
| butterbutterer.start()]) |
| .catchError(_handleBakingFailures) |
| .timeout(scriptLoadingTimeout, onTimeout: _handleBakingFailures) |
| .catchError(cannotGetConveyorBeltRunning)) |
| .catchError(cannotGetConveyorBeltRunning) |
| .then((_) { |
| _logger.info("Let's eat!"); |
| }); |
| <<< |
| return doughnutFryer |
| .start() |
| .then((_) => _frostingGlazer.start()) |
| .then((_) => Future.wait([ |
| _conveyorBelts.start(), |
| sprinkleSprinkler.start(), |
| sauceDripper.start() |
| ])) |
| .catchError(cannotGetConveyorBeltRunning) |
| .then((_) => tellEveryoneDonutsAreJustAboutDone()) |
| .then((_) => Future.wait([ |
| croissantFactory.start(), |
| _giantBakingOvens.start(), |
| butterbutterer.start() |
| ]) |
| .catchError(_handleBakingFailures) |
| .timeout(scriptLoadingTimeout, onTimeout: _handleBakingFailures) |
| .catchError(cannotGetConveyorBeltRunning)) |
| .catchError(cannotGetConveyorBeltRunning) |
| .then((_) { |
| _logger.info("Let's eat!"); |
| }); |
| >>> (indent 22) |
| someVeryLongFutureWithManyChars().then((foo) { |
| doAThing(); |
| }).catchError((e) { |
| doAnotherThing; |
| }, test: someTestWithSoManyConditions(e) && itHasToWrap(e)); |
| <<< |
| someVeryLongFutureWithManyChars().then((foo) { |
| doAThing(); |
| }).catchError((e) { |
| doAnotherThing; |
| }, |
| test: someTestWithSoManyConditions(e) && |
| itHasToWrap(e)); |