using Microsoft.Extensions.DependencyInjection; using Moq; using Ocelot.Configuration; using Ocelot.Logging; using Ocelot.Provider.Kubernetes; using Shouldly; using System; using Xunit; namespace Ocelot.UnitTests.Kubernetes { public class KubeProviderFactoryTests { private readonly IServiceProvider _provider; public KubeProviderFactoryTests() { var services = new ServiceCollection(); var loggerFactory = new Mock(); var logger = new Mock(); loggerFactory.Setup(x => x.CreateLogger()).Returns(logger.Object); var kubeFactory = new Mock(); services.AddSingleton(kubeFactory.Object); services.AddSingleton(loggerFactory.Object); _provider = services.BuildServiceProvider(); } [Fact] public void should_return_KubeServiceDiscoveryProvider() { var provider = KubernetesProviderFactory.Get(_provider, new ServiceProviderConfiguration("kube", "localhost", 443, "", "", 1,"dev"), ""); provider.ShouldBeOfType(); } } }