public void Apply(CalendarItemRemoved @event) { AddToUncommitted(@event); var item = items.Single(x => x.Id == @event.ItemId); items.Remove(item); }
public void PushesChanges() { var created = new CalendarItemCreated("hash1", new CalendarItem("1234")); var changed = new CalendarItemChanged("hash2", "1234", "Title", "Asger"); var removed = new CalendarItemRemoved("hash3", "1234"); Emit(Id <LocalCalendar>(), created, changed, removed); When(new Push(storeFactory) { CalendarId = Id <LocalCalendar>(), RemoteId = Id <RemoteCalendar>() }); Then(new PushedToRemote(Id <RemoteCalendar>(), created.ChangeId)); Then(new PushedToRemote(Id <RemoteCalendar>(), changed.ChangeId)); Then(new PushedToRemote(Id <RemoteCalendar>(), removed.ChangeId)); }
public void AppliesChangesToStore() { var created = new CalendarItemCreated("hash1", new CalendarItem("1234")); var changed = new CalendarItemChanged("hash2", "1234", "Title", "Asger"); var removed = new CalendarItemRemoved("hash3", "1234"); Emit(Id <LocalCalendar>(), created, changed, removed); When(new Push(storeFactory) { CalendarId = Id <LocalCalendar>(), RemoteId = Id <RemoteCalendar>() }); Then <PushedToRemote>(); Then <PushedToRemote>(); Then <PushedToRemote>(); store.Events[0].ShouldBeOfType <CalendarItemCreated>().Item.Id.ShouldBe("1234"); store.Events[1].ShouldBeOfType <CalendarItemChanged>().ItemId.ShouldBe("1234"); store.Events[2].ShouldBeOfType <CalendarItemRemoved>().ItemId.ShouldBe("1234"); }
public void Apply(CalendarItemRemoved @event) { Events.Add(@event); }
public void Apply(CalendarItemRemoved @event) { throw new NotImplementedException(); }