* migrate to record * chore: update project files and clean up unused references * refactor: convert classes to records and simplify constructors for IntOrString, ResourceQuantity, and V1Patch * fix: define IsExternalInit to resolve CS0518 error in IntOrString * refactor: change IntOrString and ResourceQuantity from records to structs, update implicit conversions, and simplify null checks * refactor: add JsonPropertyName attribute to Value property in IntOrString struct * refactor: simplify V1Patch constructor and improve argument validation * refactor: remove unnecessary CultureInfo parameter in ToInt method * Update src/KubernetesClient/Models/ResourceQuantity.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/KubernetesClient/Models/IntOrString.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Revert "Update src/KubernetesClient/Models/ResourceQuantity.cs" This reverts commit 62b20a691554659e28d419067220dc1a0620133b. * refactor: remove commented-out formatting check and simplify build command * refactor: remove IValidate.cs from project references in Aot and Classic --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
39 lines
863 B
C#
39 lines
863 B
C#
using k8s.Models;
|
|
using Xunit;
|
|
|
|
namespace k8s.Tests
|
|
{
|
|
public class IntOrStringTests
|
|
{
|
|
[Fact]
|
|
public void Serialize()
|
|
{
|
|
{
|
|
var v = 123;
|
|
IntOrString intorstr = v;
|
|
|
|
Assert.Equal("123", KubernetesJson.Serialize(intorstr));
|
|
}
|
|
|
|
{
|
|
IntOrString intorstr = "12%";
|
|
Assert.Equal("\"12%\"", KubernetesJson.Serialize(intorstr));
|
|
}
|
|
}
|
|
|
|
[Fact]
|
|
public void Deserialize()
|
|
{
|
|
{
|
|
var v = KubernetesJson.Deserialize<IntOrString>("1234");
|
|
Assert.Equal("1234", v.Value);
|
|
}
|
|
|
|
{
|
|
var v = KubernetesJson.Deserialize<IntOrString>("\"12%\"");
|
|
Assert.Equal("12%", v.Value);
|
|
}
|
|
}
|
|
}
|
|
}
|