public async Task WHEN_call_reload_on_all_() { //Arrange var mockActiveActor1 = new MockBuilder <ITestActor>(); var mockActiveActor2 = new MockBuilder <ITestActor>(); var mockActiveActor3 = new MockBuilder <ITestActor>(); var mockServiceLocator = new ServiceLocatorMockBuilder().Where_Resolve_returns_sequence( new List <ITestActor> { mockActiveActor1.Object, mockActiveActor2.Object, mockActiveActor3.Object, }); AddService(mockServiceLocator.Object); await Sut.GetOneAsync("1"); await Sut.GetOneAsync("2"); //Act await Sut.ReloadActiveAsync(); //Assert mockActiveActor1.Mock.Verify(x => x.ReloadAsync(), Times.Once); mockActiveActor2.Mock.Verify(x => x.ReloadAsync(), Times.Once); mockActiveActor3.Mock.Verify(x => x.ReloadAsync(), Times.Never); }
public async Task WHEN_predicate_is_given_SHOULD_only_remove_and_dispose_actors_that_match() { //Arrange var mockServiceLocator = new ServiceLocatorMockBuilder().Where_Resolve_returns_sequence( new List <ITestActor> { new MockBuilder <ITestActor>().With(x => x.ExtraProperty, "adrian").Object, new MockBuilder <ITestActor>().With(x => x.ExtraProperty, "bob").Object, new MockBuilder <ITestActor>().With(x => x.ExtraProperty, "cyril").Object, new MockBuilder <ITestActor>().With(x => x.ExtraProperty, "domino").Object, }); AddService(mockServiceLocator.Object); await Sut.GetOneAsync("1"); await Sut.GetOneAsync("2"); await Sut.GetOneAsync("3"); await Sut.GetOneAsync("4"); //Act await Sut.RemoveAsync(x => x.ExtraProperty.Contains("d")); //Assert var result = await Sut.GetActiveAsync(); Assert.That(result.Count, Is.EqualTo(2)); }