onEvent method

  1. @override
void onEvent(
  1. PipeEvent event
)
override

Implementation

@override
void onEvent(PipeEvent event) {
  switch (event) {
    case RunStarted started:
      PipeFormat.title(started.info).forEach(_write);
      _write("started: ${started.startedAt.toIso8601String()}");
      _write("");
    case StepStarted started:
      if (started.step.children.isEmpty) {
        _writeStepHeader(started.step);
        _write(_stepRule);
      }
    case StepStatusChanged changed:
      _writeTimed(changed.step, "ยป ${changed.text}");
    case StepWarned warned:
      _writeTimed(warned.step, "warning: ${warned.message}");
    case StepLogged logged:
      _writeTimed(logged.step, logged.line);
    case CommandStarted started:
      _writeTimed(started.step, "\$ ${started.commandLine}");
    case CommandOutput output:
      _writeTimed(output.step, "  ${output.line}");
    case CommandFinished finished:
      _writeTimed(finished.step, finished.error != null ? "  could not start: ${finished.error}" : "  exit code: ${finished.exitCode}");
    case StepFinished finished:
      if (finished.step.children.isEmpty) {
        _writeStepEnd(finished.step);
      }
    case RunFinished finished:
      _write(_runRule);
      _write(PipeFormat.summary(finished.result));
      for (StepState step in finished.result.allSteps) {
        _write("${"  " * (step.depth + 1)}${PipeFormat.symbol(step, useColor: false)} ${_stepName(step)}${_stepEnd(step)}");
      }
  }
}