public void Should_Add_Events() { var db = ServiceProvider.GetRequiredService <FakeDbContext>(); var entity = new FakeEntity() { Id = 1, SomeData = "qwerty" }; db.Add(entity); entity.AddEvent(new FakeEvent() { Data = 42 }); entity.AddEvent(new FakeEvent() { Data = 43 }); db.SaveChanges(); var actual = db.EventOutbox.ToList(); Assert.Equal(2, actual.Count); }
public void Should_Not_Add_Events_When_Entity_Detached() { var db = ServiceProvider.GetRequiredService <FakeDbContext>(); var entity = new FakeEntity() { Id = 1, SomeData = "qwerty" }; //db.Add(entity); entity.AddEvent(new FakeEvent() { Data = 42 }); db.SaveChanges(); var actual = db.EventOutbox.ToList(); Assert.Empty(actual); }
public void Should_Add_Event() { var db = ServiceProvider.GetRequiredService <FakeDbContext>(); var entity = new FakeEntity() { Id = 1, SomeData = "qwerty" }; db.Add(entity); entity.AddEvent(new FakeEvent() { Data = 42 }); db.SaveChanges(); var actual = db.EventOutbox.ToList(); Assert.Single(actual); Assert.IsType <FakeEvent>(actual.First().EventData); Assert.Equal(42, ((FakeEvent)actual.First().EventData).Data); }