Browse Source

Bugfix

pull/335/head
Sebastian Stehle 7 years ago
parent
commit
9bf46ee086
  1. 4
      src/Squidex.Domain.Apps.Entities/Backup/BackupReader.cs
  2. 4
      src/Squidex.Infrastructure/EventSourcing/DefaultEventDataFormatter.cs
  3. 2
      src/Squidex.Infrastructure/EventSourcing/IEventDataFormatter.cs
  4. 4
      tests/Squidex.Infrastructure.Tests/EventSourcing/Grains/EventConsumerGrainTests.cs
  5. 4
      tests/Squidex.Infrastructure.Tests/States/PersistenceEventSourcingTests.cs

4
src/Squidex.Domain.Apps.Entities/Backup/BackupReader.cs

@ -127,9 +127,9 @@ namespace Squidex.Domain.Apps.Entities.Backup
MapHeaders(data);
var eventStream = streamNameResolver.WithNewId(streamName, guidMapper.NewGuidOrNull);
var eventEnvelope = formatter.Parse(data, true, guidMapper.NewGuidOrValue);
var eventEnvelope = formatter.Parse(data, guidMapper.NewGuidOrValue);
await handler((streamName, eventEnvelope));
await handler((eventStream, eventEnvelope));
}
readEvents++;

4
src/Squidex.Infrastructure/EventSourcing/DefaultEventDataFormatter.cs

@ -25,12 +25,12 @@ namespace Squidex.Infrastructure.EventSourcing
this.serializer = serializer;
}
public Envelope<IEvent> Parse(EventData eventData, bool migrate = true, Func<string, string> stringConverter = null)
public Envelope<IEvent> Parse(EventData eventData, Func<string, string> stringConverter = null)
{
var payloadType = typeNameRegistry.GetType(eventData.Type);
var payloadObj = serializer.Deserialize<IEvent>(eventData.Payload, payloadType, stringConverter);
if (migrate && payloadObj is IMigratedEvent migratedEvent)
if (payloadObj is IMigratedEvent migratedEvent)
{
payloadObj = migratedEvent.Migrate();
}

2
src/Squidex.Infrastructure/EventSourcing/IEventDataFormatter.cs

@ -11,7 +11,7 @@ namespace Squidex.Infrastructure.EventSourcing
{
public interface IEventDataFormatter
{
Envelope<IEvent> Parse(EventData eventData, bool migrate = true, Func<string, string> stringConverter = null);
Envelope<IEvent> Parse(EventData eventData, Func<string, string> stringConverter = null);
EventData ToEventData(Envelope<IEvent> envelope, Guid commitId, bool migrate = true);
}

4
tests/Squidex.Infrastructure.Tests/EventSourcing/Grains/EventConsumerGrainTests.cs

@ -82,7 +82,7 @@ namespace Squidex.Infrastructure.EventSourcing.Grains
A.CallTo(() => persistence.WriteSnapshotAsync(A<EventConsumerState>.Ignored))
.Invokes(new Action<EventConsumerState>(s => state = s));
A.CallTo(() => formatter.Parse(eventData, true, null))
A.CallTo(() => formatter.Parse(eventData, null))
.Returns(envelope);
sut = new MyEventConsumerGrain(
@ -196,7 +196,7 @@ namespace Squidex.Infrastructure.EventSourcing.Grains
[Fact]
public async Task Should_ignore_old_events()
{
A.CallTo(() => formatter.Parse(eventData, true, null))
A.CallTo(() => formatter.Parse(eventData, null))
.Throws(new TypeNameNotFoundException());
var @event = new StoredEvent("Stream", Guid.NewGuid().ToString(), 123, eventData);

4
tests/Squidex.Infrastructure.Tests/States/PersistenceEventSourcingTests.cs

@ -61,7 +61,7 @@ namespace Squidex.Infrastructure.States
A.CallTo(() => eventStore.QueryAsync(key, 0))
.Returns(new List<StoredEvent> { storedEvent });
A.CallTo(() => eventDataFormatter.Parse(storedEvent.Data, true, null))
A.CallTo(() => eventDataFormatter.Parse(storedEvent.Data, null))
.Throws(new TypeNameNotFoundException());
var persistedEvents = new List<IEvent>();
@ -256,7 +256,7 @@ namespace Squidex.Infrastructure.States
eventsStored.Add(eventStored);
A.CallTo(() => eventDataFormatter.Parse(eventData, true, null))
A.CallTo(() => eventDataFormatter.Parse(eventData, null))
.Returns(new Envelope<IEvent>(@event));
i++;

Loading…
Cancel
Save