private static void AssertHourInfos <T>(IDrop2GHourInfo <T> source, T[] dest) { Assert.AreEqual(source.Hour0Info, dest[0]); Assert.AreEqual(source.Hour1Info, dest[1]); Assert.AreEqual(source.Hour2Info, dest[2]); Assert.AreEqual(source.Hour3Info, dest[3]); Assert.AreEqual(source.Hour4Info, dest[4]); Assert.AreEqual(source.Hour5Info, dest[5]); Assert.AreEqual(source.Hour6Info, dest[6]); Assert.AreEqual(source.Hour7Info, dest[7]); Assert.AreEqual(source.Hour8Info, dest[8]); Assert.AreEqual(source.Hour9Info, dest[9]); Assert.AreEqual(source.Hour10Info, dest[10]); Assert.AreEqual(source.Hour11Info, dest[11]); Assert.AreEqual(source.Hour12Info, dest[12]); Assert.AreEqual(source.Hour13Info, dest[13]); Assert.AreEqual(source.Hour14Info, dest[14]); Assert.AreEqual(source.Hour15Info, dest[15]); Assert.AreEqual(source.Hour16Info, dest[16]); Assert.AreEqual(source.Hour17Info, dest[17]); Assert.AreEqual(source.Hour18Info, dest[18]); Assert.AreEqual(source.Hour19Info, dest[19]); Assert.AreEqual(source.Hour20Info, dest[20]); Assert.AreEqual(source.Hour21Info, dest[21]); Assert.AreEqual(source.Hour22Info, dest[22]); Assert.AreEqual(source.Hour23Info, dest[23]); }
public static void AssertHourTest <TValue>(this IDrop2GHourInfo <TValue> info, TValue[] expectedValues) { Assert.IsNotNull(info); Assert.AreEqual(info.Hour0Info, expectedValues[0]); Assert.AreEqual(info.Hour1Info, expectedValues[1]); Assert.AreEqual(info.Hour2Info, expectedValues[2]); Assert.AreEqual(info.Hour3Info, expectedValues[3]); Assert.AreEqual(info.Hour4Info, expectedValues[4]); Assert.AreEqual(info.Hour5Info, expectedValues[5]); Assert.AreEqual(info.Hour6Info, expectedValues[6]); Assert.AreEqual(info.Hour7Info, expectedValues[7]); Assert.AreEqual(info.Hour8Info, expectedValues[8]); Assert.AreEqual(info.Hour9Info, expectedValues[9]); Assert.AreEqual(info.Hour10Info, expectedValues[10]); Assert.AreEqual(info.Hour11Info, expectedValues[11]); Assert.AreEqual(info.Hour12Info, expectedValues[12]); Assert.AreEqual(info.Hour13Info, expectedValues[13]); Assert.AreEqual(info.Hour14Info, expectedValues[14]); Assert.AreEqual(info.Hour15Info, expectedValues[15]); Assert.AreEqual(info.Hour16Info, expectedValues[16]); Assert.AreEqual(info.Hour17Info, expectedValues[17]); Assert.AreEqual(info.Hour18Info, expectedValues[18]); Assert.AreEqual(info.Hour19Info, expectedValues[19]); Assert.AreEqual(info.Hour20Info, expectedValues[20]); Assert.AreEqual(info.Hour21Info, expectedValues[21]); Assert.AreEqual(info.Hour22Info, expectedValues[22]); Assert.AreEqual(info.Hour23Info, expectedValues[23]); }
public static TInfo GenerateHourInfo <TInfo, TValue>( this IDrop2GHourInfo <string> csvStat) where TInfo : class, IDrop2GHourInfo <TValue>, new() { TInfo info = new TInfo(); csvStat.ConvertProperties <IDrop2GHourInfo <string>, IDrop2GHourInfo <TValue> >(info); return(info); }
public static List <T> GenerateHourInfos <T>( this IDrop2GHourInfo <string> csvStat, Action <List <T>, object, short> UpdateInfos) { List <T> infos = new List <T>(); PropertyInfo[] properties = (typeof(IDrop2GHourInfo <string>)).GetProperties(); for (short hour = 0; hour < 24; hour++) { string propertyName = "Hour" + hour + "Info"; PropertyInfo property = properties.FirstOrDefault(x => x.Name == propertyName); if (property != null) { object statContent = property.GetValue(csvStat); UpdateInfos(infos, statContent, hour); } } return(infos); }
public static List <NeighborHourInfo> GenerateNeighborHourInfos( this IDrop2GHourInfo <string> csvStat) { return(csvStat.GenerateHourInfos <NeighborHourInfo>((i, s, h) => i.UpdateInfos(s, h))); }