Field removal to their own classes

This commit is contained in:
Matt Nadareski
2021-01-29 22:54:16 -08:00
parent 6e8792c361
commit 24eacc303a
13 changed files with 1324 additions and 1079 deletions

View File

@@ -0,0 +1,45 @@
using SabreTools.DatItems;
using SabreTools.Filtering;
using Xunit;
namespace SabreTools.Test.Filtering
{
public class RemoverTests
{
[Fact]
public void RemoveFieldsDatItemTest()
{
var datItem = CreateDatItem();
var remover = new DatItemRemover();
remover.SetRemover("DatItem.Name");
remover.RemoveFields(datItem);
Assert.Null(datItem.GetName());
}
[Fact]
public void RemoveFieldsMachineTest()
{
var datItem = CreateDatItem();
var remover = new DatItemRemover();
remover.SetRemover("Machine.Name");
remover.RemoveFields(datItem);
Assert.Null(datItem.Machine.Name);
}
/// <summary>
/// Generate a consistent DatItem for testing
/// </summary>
private DatItem CreateDatItem()
{
return new Rom
{
Name = "foo",
Machine = new Machine
{
Name = "bar",
Description = "bar",
}
};
}
}
}