Exemple #1
0
            public static IScenarioThenStateBuilder Then(this IScenarioWhenStateBuilder builder, params IEvent[] events)
            {
                if (events == null)
                {
                    throw new ArgumentNullException("events");
                }
                if (events.Length == 0)
                {
                    return(builder.Then(Guid.Empty.ToString(), new object[0]));
                }

                using (var enumerator = events.AsEnumerable().GetEnumerator())
                {
                    enumerator.MoveNext();
                    var continuation = builder.Then(enumerator.Current.Id.ToString(), enumerator.Current);
                    while (enumerator.MoveNext())
                    {
                        continuation = continuation.Then(enumerator.Current.Id.ToString(), enumerator.Current);
                    }
                    return(continuation);
                }
            }