private static UnmergedProgramInformation CreateTestData(bool initialize, NullCrcFields nullCrcFields = NullCrcFields.None)
        {
            var code            = initialize ? TestCode : null;
            var title           = initialize ? TestTitle : null;
            var vendor          = initialize ? "Venn Door" : null;
            var year            = initialize ? "MCMLXXVIII" : null;
            var crcs            = nullCrcFields.HasFlag(NullCrcFields.Crcs) ? null : TestCrcDatas.Select(c => c.Crc).ToArray();
            var crcDescriptions = nullCrcFields.HasFlag(NullCrcFields.CrcDescriptions) ? null : TestCrcDatas.Select(c => c.Description).ToArray();
            var crcCfgs         = nullCrcFields.HasFlag(NullCrcFields.CrcCfgs) ? null : TestCrcDatas.Select(c => c.BinConfigTemplate).ToArray();
            var features        = initialize ? TestFeatures : null;

            var information = new UnmergedProgramInformation(code, title, vendor, year, crcs, crcDescriptions, crcCfgs, features);

            return(information);
        }
 public void UnmergedProgramInformation_CreateWithNullCrcData_ThrowsNullReferenceException(NullCrcFields nullCrcFields)
 {
     Assert.Throws <NullReferenceException>(() => CreateTestData(true, nullCrcFields));
 }