public void CreateListFromVerticalArrayRangeSimpleTypes() { var dateTimeArray = new object[1, 3]; dateTimeArray[0, 0] = DateTime.Today.Date.AddDays(1); dateTimeArray[0, 1] = null; dateTimeArray[0, 2] = DateTime.Today.Date.AddDays(2); List <DateTime> dateTimesList = ObjectToArrayOfPropertiesConverter.CreateListFromVerticalArrayRange <DateTime>(dateTimeArray); Assert.AreEqual(2, dateTimesList.Count); Assert.AreEqual(DateTime.Today.Date.AddDays(1), dateTimesList[0]); Assert.AreEqual(DateTime.Today.Date.AddDays(2), dateTimesList[1]); var stringArray = new object[1, 3]; stringArray[0, 0] = "One"; stringArray[0, 1] = null; stringArray[0, 2] = "Three"; List <string> stringList = ObjectToArrayOfPropertiesConverter.CreateListFromVerticalArrayRange <string>(stringArray); Assert.AreEqual(2, stringList.Count); Assert.AreEqual("One", stringList[0]); Assert.AreEqual("Three", stringList[1]); var intArray = new object[1, 3]; intArray[0, 0] = 1; intArray[0, 1] = null; intArray[0, 2] = 3; List <int> intList = ObjectToArrayOfPropertiesConverter.CreateListFromVerticalArrayRange <int>(intArray); Assert.AreEqual(2, intList.Count); Assert.AreEqual(1, intList[0]); Assert.AreEqual(3, intList[1]); var doubleArray = new object[1, 3]; doubleArray[0, 0] = 1; doubleArray[0, 1] = null; doubleArray[0, 2] = 3; var doubleList = ObjectToArrayOfPropertiesConverter.CreateListFromVerticalArrayRange <double>(doubleArray); Assert.AreEqual(2, doubleList.Count); Assert.AreEqual(1, doubleList[0]); Assert.AreEqual(3, doubleList[1]); var decimalArray = new object[1, 3]; decimalArray[0, 0] = 1.1m; decimalArray[0, 1] = null; decimalArray[0, 2] = 3.1m; var decimalList = ObjectToArrayOfPropertiesConverter.CreateListFromVerticalArrayRange <decimal>(decimalArray); Assert.AreEqual(2, decimalList.Count); Assert.AreEqual(1.1m, decimalList[0]); Assert.AreEqual(3.1m, decimalList[1]); }
public void CreateListFromVerticalArrayRange() { var sourceArrayWithExtraData = new object[10, 3]; sourceArrayWithExtraData[0, 0] = "Jonh Doe"; sourceArrayWithExtraData[1, 0] = 100; sourceArrayWithExtraData[2, 0] = 40; sourceArrayWithExtraData[3, 0] = PersonType.One; sourceArrayWithExtraData[4, 0] = false; sourceArrayWithExtraData[5, 0] = null; sourceArrayWithExtraData[6, 0] = "#N/A"; sourceArrayWithExtraData[7, 0] = null; sourceArrayWithExtraData[8, 0] = "#N/A"; sourceArrayWithExtraData[9, 0] = null; sourceArrayWithExtraData[0, 1] = "Jonh Doe "; sourceArrayWithExtraData[1, 1] = 200; sourceArrayWithExtraData[2, 1] = 50; sourceArrayWithExtraData[3, 1] = PersonType.Two; sourceArrayWithExtraData[4, 1] = true; sourceArrayWithExtraData[5, 1] = null; sourceArrayWithExtraData[6, 1] = "#N/A"; sourceArrayWithExtraData[7, 1] = null; sourceArrayWithExtraData[8, 1] = "#N/A"; sourceArrayWithExtraData[9, 1] = null; // Third row is empty and should be not converted to object. // sourceArrayWithExtraData[0, 2] = null; sourceArrayWithExtraData[1, 2] = null; sourceArrayWithExtraData[2, 2] = null; sourceArrayWithExtraData[3, 2] = null; sourceArrayWithExtraData[4, 2] = null; sourceArrayWithExtraData[5, 2] = null; sourceArrayWithExtraData[6, 2] = null; sourceArrayWithExtraData[7, 2] = null; sourceArrayWithExtraData[8, 2] = null; sourceArrayWithExtraData[9, 2] = null; List <ClassWithParamData> list = ObjectToArrayOfPropertiesConverter.CreateListFromVerticalArrayRange <ClassWithParamData>(sourceArrayWithExtraData); Assert.AreEqual(list.Count, 2); }