我有任何Pilot带有(Hanger)属性的()对象数组,该属性可以为null,它本身具有(List<Plane>)属性.出于测试目的,我想简化并将其"展平"为具有属性PilotName(字符串)和Planes(数组)的匿名对象,但不确定如何处理null Hanger属性或空PlanesList.
(为什么是匿名对象?因为我正在测试的API的对象是只读的,我希望测试是'声明性的':自包含,简单和可读......但我对其他建议持开放态度.我也是我想了解更多有关LINQ的信息.)
例
class Pilot
{
public string Name;
public Hanger Hanger;
}
class Hanger
{
public string Name;
public List<Plane> PlaneList;
}
class Plane
{
public string Name;
}
[TestFixture]
class General
{
[Test]
public void Test()
{
var pilots = new Pilot[]
{
new Pilot() { Name = "Higgins" },
new Pilot()
{
Name = "Jones", Hanger = new Hanger()
{
Name = "Area …Run Code Online (Sandbox Code Playgroud) 我有一组自己包含一组的对象.
private class Pilot
{
public string Name;
public HashSet<string> Skills;
}
Run Code Online (Sandbox Code Playgroud)
这是一些测试数据:
public void TestSetComparison()
{
var pilots = new[]
{
new Pilot { Name = "Smith", Skills = new HashSet<string>(new[] { "B-52", "F-14" }) },
new Pilot { Name = "Higgins", Skills = new HashSet<string>(new[] { "Concorde", "F-14" }) },
new Pilot { Name = "Jones", Skills = new HashSet<string>(new[] { "F-14", "B-52" }) },
new Pilot { Name = "Wilson", Skills = new HashSet<string>(new[] { "F-14", "Concorde" …Run Code Online (Sandbox Code Playgroud)