示例#1
0
        public async Task GetOptionalAsyncReturnsEmpty()
        {
            using (var fixture = new MsSqlStreamStoreFixture("dbo"))
            {
                using (var store = await fixture.GetStreamStore())
                {
                    var sut = new RepositoryScenarioBuilder(store)
                              .BuildForAsyncRepository();

                    var result = await sut.GetOptionalAsync(_model.UnknownIdentifier);

                    Assert.Equal(result, Optional <AggregateRootEntityStub> .Empty);
                }
            }
        }
示例#2
0
        public async Task GetOptionalAsyncReturnsRootForKnownId()
        {
            using (var fixture = new MsSqlStreamStoreFixture("dbo"))
            {
                using (var store = await fixture.GetStreamStore())
                {
                    var sut = new RepositoryScenarioBuilder(store)
                              .ScheduleAttachToUnitOfWork(new Aggregate(_model.KnownIdentifier, 0, _root))
                              .BuildForAsyncRepository();

                    var result = await sut.GetOptionalAsync(_model.KnownIdentifier);

                    Assert.Equal(result, new Optional <AggregateRootEntityStub>(_root));
                }
            }
        }
示例#3
0
        public async Task GetOptionalAsyncReturnsRootForKnownId()
        {
            using (var fixture = new MsSqlStreamStoreFixture("dbo"))
            {
                using (var store = await fixture.GetMsSqlStreamStore())
                {
                    var sut = new RepositoryScenarioBuilder(store)
                              .ScheduleAppendToStream(_model.KnownIdentifier, new EventStub(1))
                              .BuildForAsyncRepository();

                    var result = await sut.GetOptionalAsync(_model.KnownIdentifier);

                    Assert.True(result.HasValue);
                    result.Value.RecordedEvents.ShouldBeEquivalentTo(new[] { new EventStub(1) });
                }
            }
        }