public async Task GeneratesActivityStreamForCard()
        {
            var cardId     = Guid.NewGuid().ToString();
            var streamName = $"Card-{cardId}";

            await _esdb.SeedStream(streamName, new Event[]
            {
                new TaskOpened(cardId, DateTime.UtcNow.AddHours(-1), "Test"),
                new CardAssigned(cardId, null, "Jason Mitchell"),
                new DevelopmentStarted(cardId, DateTime.UtcNow)
            });

            await _runner.Start(CancellationToken.None);

            await Wait.UntilAsserted(async() =>
            {
                var activity = await _repository.GetActivityForCard(cardId);
                activity.Should().BeEquivalentTo(new[]
                {
                    "Task 'Test' was opened",
                    "Card was assigned to Jason Mitchell",
                    "Development was started"
                }, opt => opt.WithStrictOrdering());
            });
        }
Esempio n. 2
0
 public async Task StartAsync(CancellationToken cancellationToken)
 {
     await _runner.Start(cancellationToken);
 }