public void Resolve_uses_fallback_resolver_if_primary_resolver_returns_failure_result([ResolvesToFailure] IResolver primaryResolver, [ResolvesToFailure] IResolver fallbackResolver, ResolutionRequest request) { // Arrange var sut = new FallbackResolverProxy(primaryResolver, fallbackResolver); // Act sut.Resolve(request); // Assert Mock.Get(primaryResolver).Verify(x => x.Resolve(request), Times.Once); Mock.Get(fallbackResolver).Verify(x => x.Resolve(request), Times.Once); }
public void Resolve_does_not_use_fallback_resolver_if_primary_resolver_returns_success_result([ResolvesToFailure] IResolver primaryResolver, [ResolvesToFailure] IResolver fallbackResolver, ResolutionRequest request, ResolutionPath path, object resolved) { // Arrange var sut = new FallbackResolverProxy(primaryResolver, fallbackResolver); Mock.Get(primaryResolver) .Setup(x => x.Resolve(request)) .Returns(ResolutionResult.Success(path, resolved)); // Act sut.Resolve(request); // Assert Mock.Get(primaryResolver).Verify(x => x.Resolve(request), Times.Once); Mock.Get(fallbackResolver).Verify(x => x.Resolve(request), Times.Never); }