From 598af534577c937fd1c242ee77b49eae4839f829 Mon Sep 17 00:00:00 2001 From: Sebastian Stehle Date: Sun, 10 Dec 2017 18:51:50 +0100 Subject: [PATCH] Tests fixed --- .../Commands/DomainObjectBase.cs | 8 +++--- .../Commands/AggregateHandlerTests.cs | 20 +++++++++++--- .../Commands/DomainObjectBaseTests.cs | 26 +++++-------------- .../PropertiesBagTests.cs | 2 +- 4 files changed, 28 insertions(+), 28 deletions(-) diff --git a/src/Squidex.Infrastructure/Commands/DomainObjectBase.cs b/src/Squidex.Infrastructure/Commands/DomainObjectBase.cs index 06c81f26f..c5800711f 100644 --- a/src/Squidex.Infrastructure/Commands/DomainObjectBase.cs +++ b/src/Squidex.Infrastructure/Commands/DomainObjectBase.cs @@ -84,17 +84,17 @@ namespace Squidex.Infrastructure.Commands public async Task WriteAsync(ISemanticLog log) { - var events = uncomittedEvents; + var events = uncomittedEvents.ToArray(); - if (events.Count > 0) + if (events.Length > 0) { - state.Version += events.Count; + state.Version += events.Length; await persistence.WriteSnapshotAsync(state); try { - await persistence.WriteEventsAsync(uncomittedEvents.ToArray()); + await persistence.WriteEventsAsync(events); } catch (Exception ex) { diff --git a/tests/Squidex.Infrastructure.Tests/Commands/AggregateHandlerTests.cs b/tests/Squidex.Infrastructure.Tests/Commands/AggregateHandlerTests.cs index 5ca90705e..943e02bd8 100644 --- a/tests/Squidex.Infrastructure.Tests/Commands/AggregateHandlerTests.cs +++ b/tests/Squidex.Infrastructure.Tests/Commands/AggregateHandlerTests.cs @@ -25,7 +25,7 @@ namespace Squidex.Infrastructure.Commands private readonly IServiceProvider serviceProvider = A.Fake(); private readonly IStore store = A.Fake(); private readonly IStateFactory stateFactory = A.Fake(); - private readonly IPersistence persistence = A.Fake>(); + private readonly IPersistence persistence = A.Fake>(); private readonly Envelope event1 = new Envelope(new MyEvent()); private readonly Envelope event2 = new Envelope(new MyEvent()); private readonly CommandContext context; @@ -37,10 +37,10 @@ namespace Squidex.Infrastructure.Commands public AggregateHandlerTests() { - command = new MyCommand { AggregateId = domainObjectId }; + command = new MyCommand { AggregateId = domainObjectId, ExpectedVersion = EtagVersion.Any }; context = new CommandContext(command); - A.CallTo(() => store.WithSnapshots(domainObjectId.ToString(), A>.Ignored)) + A.CallTo(() => store.WithSnapshots(domainObjectId.ToString(), A>.Ignored)) .Returns(persistence); A.CallTo(() => stateFactory.CreateAsync(domainObjectId.ToString())) @@ -111,12 +111,14 @@ namespace Squidex.Infrastructure.Commands await sut.CreateSyncedAsync(context, async x => { x.RaiseEvent(new MyEvent()); + x.RaiseEvent(new MyEvent()); await Task.Yield(); passedDomainObject = x; }); + Assert.Equal(1, domainObject.State.Version); Assert.Equal(domainObject, passedDomainObject); Assert.NotNull(context.Result>()); @@ -132,10 +134,12 @@ namespace Squidex.Infrastructure.Commands await sut.CreateAsync(context, x => { x.RaiseEvent(new MyEvent()); + x.RaiseEvent(new MyEvent()); passedDomainObject = x; }); + Assert.Equal(1, domainObject.State.Version); Assert.Equal(domainObject, passedDomainObject); Assert.NotNull(context.Result>()); @@ -151,10 +155,12 @@ namespace Squidex.Infrastructure.Commands await sut.CreateSyncedAsync(context, x => { x.RaiseEvent(new MyEvent()); + x.RaiseEvent(new MyEvent()); passedDomainObject = x; }); + Assert.Equal(1, domainObject.State.Version); Assert.Equal(domainObject, passedDomainObject); Assert.NotNull(context.Result>()); @@ -198,12 +204,14 @@ namespace Squidex.Infrastructure.Commands await sut.UpdateAsync(context, async x => { x.RaiseEvent(new MyEvent()); + x.RaiseEvent(new MyEvent()); await Task.Yield(); passedDomainObject = x; }); + Assert.Equal(1, domainObject.State.Version); Assert.Equal(domainObject, passedDomainObject); Assert.NotNull(context.Result()); @@ -219,12 +227,14 @@ namespace Squidex.Infrastructure.Commands await sut.UpdateSyncedAsync(context, async x => { x.RaiseEvent(new MyEvent()); + x.RaiseEvent(new MyEvent()); await Task.Yield(); passedDomainObject = x; }); + Assert.Equal(1, domainObject.State.Version); Assert.Equal(domainObject, passedDomainObject); Assert.NotNull(context.Result()); @@ -240,10 +250,12 @@ namespace Squidex.Infrastructure.Commands await sut.UpdateAsync(context, x => { x.RaiseEvent(new MyEvent()); + x.RaiseEvent(new MyEvent()); passedDomainObject = x; }); + Assert.Equal(1, domainObject.State.Version); Assert.Equal(domainObject, passedDomainObject); Assert.NotNull(context.Result()); @@ -259,10 +271,12 @@ namespace Squidex.Infrastructure.Commands await sut.UpdateSyncedAsync(context, x => { x.RaiseEvent(new MyEvent()); + x.RaiseEvent(new MyEvent()); passedDomainObject = x; }); + Assert.Equal(1, domainObject.State.Version); Assert.Equal(domainObject, passedDomainObject); Assert.NotNull(context.Result()); diff --git a/tests/Squidex.Infrastructure.Tests/Commands/DomainObjectBaseTests.cs b/tests/Squidex.Infrastructure.Tests/Commands/DomainObjectBaseTests.cs index bbd13e61d..539cd839f 100644 --- a/tests/Squidex.Infrastructure.Tests/Commands/DomainObjectBaseTests.cs +++ b/tests/Squidex.Infrastructure.Tests/Commands/DomainObjectBaseTests.cs @@ -22,20 +22,20 @@ namespace Squidex.Infrastructure.Commands public class DomainObjectBaseTests { private readonly IStore store = A.Fake(); - private readonly IPersistence persistence = A.Fake>(); + private readonly IPersistence persistence = A.Fake>(); private readonly Guid id = Guid.NewGuid(); private readonly MyDomainObject sut = new MyDomainObject(); public DomainObjectBaseTests() { - A.CallTo(() => store.WithSnapshots(id.ToString(), A>.Ignored)) + A.CallTo(() => store.WithSnapshots(id.ToString(), A>.Ignored)) .Returns(persistence); } [Fact] public void Should_instantiate() { - Assert.Equal(EtagVersion.NotFound, sut.Version); + Assert.Equal(EtagVersion.Empty, sut.Version); } [Fact] @@ -47,7 +47,7 @@ namespace Squidex.Infrastructure.Commands sut.RaiseEvent(event1); sut.RaiseEvent(event2); - Assert.Equal(EtagVersion.NotFound, sut.Version); + Assert.Equal(EtagVersion.Empty, sut.Version); Assert.Equal(new IEvent[] { event1, event2 }, sut.GetUncomittedEvents().Select(x => x.Payload).ToArray()); sut.ClearUncommittedEvents(); @@ -58,21 +58,14 @@ namespace Squidex.Infrastructure.Commands [Fact] public async Task Should_write_state_and_events_when_saved() { - A.CallTo(() => persistence.Version) - .Returns(100); - await sut.ActivateAsync(id.ToString(), store); - Assert.Equal(100, sut.Version); - var event1 = new MyEvent(); var event2 = new MyEvent(); + var newState = new MyDomainState(); sut.RaiseEvent(event1); sut.RaiseEvent(event2); - - var newState = new MyDomainState(); - sut.UpdateState(newState); await sut.WriteAsync(A.Fake()); @@ -88,24 +81,17 @@ namespace Squidex.Infrastructure.Commands [Fact] public async Task Should_ignore_exception_when_saving() { - A.CallTo(() => persistence.Version) - .Returns(100); - A.CallTo(() => persistence.WriteEventsAsync(A>>.Ignored)) .Throws(new InvalidOperationException()); await sut.ActivateAsync(id.ToString(), store); - Assert.Equal(100, sut.Version); - var event1 = new MyEvent(); var event2 = new MyEvent(); + var newState = new MyDomainState(); sut.RaiseEvent(event1); sut.RaiseEvent(event2); - - var newState = new MyDomainState(); - sut.UpdateState(newState); await sut.WriteAsync(A.Fake()); diff --git a/tests/Squidex.Infrastructure.Tests/PropertiesBagTests.cs b/tests/Squidex.Infrastructure.Tests/PropertiesBagTests.cs index 7f2b1c5be..a833217e5 100644 --- a/tests/Squidex.Infrastructure.Tests/PropertiesBagTests.cs +++ b/tests/Squidex.Infrastructure.Tests/PropertiesBagTests.cs @@ -214,7 +214,7 @@ namespace Squidex.Infrastructure { bag.Set("Key", long.MaxValue); - Assert.Throws(() => bag["Key"].ToInt64(c)); + Assert.Throws(() => bag["Key"].ToInt32(c)); } [Fact]