public void ApplyTest()
{
DataTable table = new DataTable("myData");
table.Columns.Add("Double", typeof(double));
table.Columns.Add("Integer", typeof(int));
table.Columns.Add("Boolean", typeof(bool));
table.Rows.Add(4.20, 42, true);
table.Rows.Add(-3.14, -17, false);
table.Rows.Add(21.00, 0, false);
Projection target = new Projection("Integer", "Boolean");
DataTable actual = target.Apply(table);
Assert.AreEqual(2, actual.Columns.Count);
Assert.AreEqual(3, actual.Rows.Count);
Assert.AreEqual("Integer", actual.Columns[0].ColumnName);
Assert.AreEqual("Boolean", actual.Columns[1].ColumnName);
}