Пример #1
0
        public async Task Create_should_create_events_and_update_state()
        {
            var command = new CreateApp {
                Name = AppName, Actor = Actor, AppId = AppId
            };

            var result = await sut.ExecuteAsync(CreateCommand(command));

            result.ShouldBeEquivalent(sut.Snapshot);

            Assert.Equal(AppName, sut.Snapshot.Name);

            LastEvents
            .ShouldHaveSameEvents(
                CreateEvent(new AppCreated {
                Name = AppName
            }),
                CreateEvent(new AppContributorAssigned {
                ContributorId = Actor.Identifier, Role = Role.Owner
            }),
                CreateEvent(new AppLanguageAdded {
                Language = Language.EN
            }),
                CreateEvent(new AppPatternAdded {
                PatternId = patternId1, Name = "Number", Pattern = "[0-9]"
            }),
                CreateEvent(new AppPatternAdded {
                PatternId = patternId2, Name = "Numbers", Pattern = "[0-9]*"
            })
                );
        }
Пример #2
0
        private async Task <object?> PublishAsync(AppCommand command)
        {
            var result = await sut.ExecuteAsync(CreateCommand(command));

            return(result.Value);
        }