This repository has been archived on 2023-02-02. You can view files and clone it, but cannot push or open issues or pull requests.
mfgames-nitride-cil/tests/MfGames.Nitride.Yaml.Tests/TextContentYamlTests.cs

52 lines
1.2 KiB
C#
Raw Permalink Normal View History

using MfGames.Gallium;
using MfGames.Nitride.Tests;
using Xunit;
using Xunit.Abstractions;
namespace MfGames.Nitride.Yaml.Tests;
public class TextContentYamlTests : NitrideTestBase
{
public TextContentYamlTests(ITestOutputHelper output)
: base(output)
{
}
[Fact]
public void NoTextContent()
{
Entity entity = new();
TestContent? output = entity.GetTextContentYaml<TestContent>();
Assert.Null(output);
}
[Fact]
public void SetAndGetContent()
{
Entity entity = new Entity()
.SetTextContentYaml(new TestContent { Value = "t1" });
TestContent? output = entity.GetTextContentYaml<TestContent>();
Assert.NotNull(output);
Assert.Equal("t1", output.Value);
}
[Fact]
public void SetNullRemovesContent()
{
Entity entity = new Entity()
.SetTextContentYaml(new TestContent { Value = "t1" })
.SetTextContentYaml<TestContent>(null);
TestContent? output = entity.GetTextContentYaml<TestContent>();
Assert.Null(output);
}
private class TestContent
{
public string? Value { get; set; }
}
}