public void When_object_removed_modified_event_should_be_called() { var subscriber = Substitute.For <IDummySubscriber>(); var item = new { Id = AutoFixture.Create <string>(), Str = AutoFixture.Create <string>(), Int = AutoFixture.Create <int>(), Obj = new { Value = AutoFixture.Create <string>() } }; var jObject = JObject.FromObject(item); var collection = new StreamCollection(_name); collection.Added(item.Id, jObject); collection.Modified += subscriber.React; // Act collection.Removed(item.Id); // Assert subscriber.Received() .React(Arg.Any <object>(), Arg.Is <StreamCollectionEventArgs>(args => args.ModificationType == ModificationType.Removed && args.Result == jObject )); }
public void When_object_deleted_remove_from_collection() { var item = new { Id = AutoFixture.Create <string>(), Str = AutoFixture.Create <string>(), Int = AutoFixture.Create <int>(), Obj = new { Value = AutoFixture.Create <string>() } }; var collection = new StreamCollection(_name); // Act collection.Added(item.Id, JObject.FromObject(item)); collection.Removed(item.Id); // Assert var result = collection.GetAnonymousTypeById(item.Id, item); result.Should().BeNull(); }
public void When_object_removed_modified_event_should_be_called() { var subscriber = Substitute.For<IDummySubscriber>(); var item = new { Id = AutoFixture.Create<string>(), Str = AutoFixture.Create<string>(), Int = AutoFixture.Create<int>(), Obj = new { Value = AutoFixture.Create<string>() } }; var jObject = JObject.FromObject(item); var collection = new StreamCollection(_name); collection.Added(item.Id, jObject); collection.Modified += subscriber.React; // Act collection.Removed(item.Id); // Assert subscriber.Received() .React(Arg.Any<object>(), Arg.Is<StreamCollectionEventArgs>(args => args.ModificationType == ModificationType.Removed && args.Result == jObject )); }
public void When_object_deleted_remove_from_collection() { var item = new { Id = AutoFixture.Create<string>(), Str = AutoFixture.Create<string>(), Int = AutoFixture.Create<int>(), Obj = new { Value = AutoFixture.Create<string>() } }; var collection = new StreamCollection(_name); // Act collection.Added(item.Id, JObject.FromObject(item)); collection.Removed(item.Id); // Assert var result = collection.GetAnonymousTypeById(item.Id, item); result.Should().BeNull(); }