private async Task InvokeSubStepsAsync(IStepResultDescriptor result) { var subSteps = InitializeComposite(result); if (!subSteps.Any()) { return; } try { if (subSteps.Any(s => s.Result.ExecutionException != null)) { throw new InvalidOperationException("Sub-steps initialization failed."); } foreach (var subStep in subSteps) { await subStep.ExecuteAsync(); } } finally { _result.SetSubSteps(subSteps.Select(s => s.Result).ToArray()); } }
private async Task InvokeSubStepsAsync(RunnableStep[] subSteps) { try { foreach (var subStep in subSteps) { await InvokeSubStepAsync(subStep); } } finally { _result.SetSubSteps(subSteps.Select(s => s.Result).ToArray()); } }
private async Task InvokeSubStepsAsync(IStepResultDescriptor result) { var subSteps = InitializeComposite(result); if (!subSteps.Any()) { return; } try { foreach (var subStep in subSteps) { await subStep.ExecuteAsync(); } } finally { _result.SetSubSteps(subSteps.Select(s => s.Result).ToArray()); } }