mirror of
https://github.com/nsnail/Ocelot.git
synced 2025-04-26 14:52:49 +08:00

* feat: Kubernetes ServiceDiscoveryProvider * 编写k8s测试例子 * feat:fix kube config * feat: remove port * feat : complete the k8s test * feat : add kubeserviceDiscovery test * feat : add kube provider unittest * feat :add kubetnetes docs how to use ocelot with kubetnetes docs * keep the configuration as simple as possible, no qos, no cache * fix: use http * add PollingKubeServiceDiscovery * feat : refactor logger * feat : add pollkube docs * feat:Remove unnecessary code * feat : code-block json
36 lines
1.2 KiB
C#
36 lines
1.2 KiB
C#
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<IOcelotLoggerFactory>();
|
|
var logger = new Mock<IOcelotLogger>();
|
|
loggerFactory.Setup(x => x.CreateLogger<Kube>()).Returns(logger.Object);
|
|
var kubeFactory = new Mock<IKubeApiClientFactory>();
|
|
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<Kube>();
|
|
}
|
|
}
|
|
}
|