* fix SA1505 and SA1508 * fix SA1116 * fix SA1009 * fix SA1019 * fix SA1127 * fix SA1128 * fix SA1134 * fix indent * allow CA2227 * fix CA1810 * using clean up * fix naming * fix CA1806 * fix await * Revert "fix CA1806" This reverts commit a3b465087fdaf26ec461272373ee9810a90de2cc. * fix dotnet format * allow SA1009
55 lines
1.7 KiB
C#
55 lines
1.7 KiB
C#
using k8s.Models;
|
|
using Xunit;
|
|
using FluentAssertions;
|
|
using k8s.Versioning;
|
|
using AutoMapper;
|
|
|
|
namespace k8s.Tests
|
|
{
|
|
public class VersionConverterTests
|
|
{
|
|
[Fact]
|
|
public void CanExplicitlyConvert()
|
|
{
|
|
var a = new V1APIService { Spec = new V1APIServiceSpec { Group = "blah" } };
|
|
var b = (V1beta1APIService)a;
|
|
b.Spec.Group.Should().Be("blah");
|
|
}
|
|
|
|
[Fact]
|
|
public void ConfigurationsAreValid()
|
|
{
|
|
var config = new MapperConfiguration(VersionConverter.GetConfigurations);
|
|
config.AssertConfigurationIsValid();
|
|
}
|
|
|
|
[Theory]
|
|
[InlineData("v1", "v1beta1", 1)]
|
|
[InlineData("v1beta1", "v1", -1)]
|
|
[InlineData("v1beta1", "v1alpha1", 1)]
|
|
[InlineData("v1alpha1", "v1beta1", -1)]
|
|
[InlineData("v1", "v1alpha1", 1)]
|
|
[InlineData("v2alpha1", "v1", 1)]
|
|
[InlineData("v1", "v2alpha1", -1)]
|
|
[InlineData("v1", "v1", 0)]
|
|
[InlineData("v2", "v2", 0)]
|
|
[InlineData("v1beta1", "v1beta1", 0)]
|
|
[InlineData("v1beta2", "v1beta2", 0)]
|
|
[InlineData("v2beta2", "v2beta2", 0)]
|
|
public void KubernetesVersionCompare(string x, string y, int expected)
|
|
{
|
|
KubernetesVersionComparer.Instance.Compare(x, y).Should().Be(expected);
|
|
}
|
|
|
|
[Fact]
|
|
public void ConvertToVersion()
|
|
{
|
|
var src = new V1beta1APIService().Initialize();
|
|
src.ApiVersion.Should().Be("apiregistration.k8s.io/v1beta1");
|
|
var sut = (V1APIService)VersionConverter.ConvertToVersion(src, "v1");
|
|
sut.Should().NotBeNull();
|
|
sut.ApiVersion.Should().Be("apiregistration.k8s.io/v1");
|
|
}
|
|
}
|
|
}
|