public void TestFileRead1() { string path = Environment.CurrentDirectory + "/config-1.csv"; if (!File.Exists(path)) { throw new Exception("file not found"); } CsvConfigReader reader = new CsvConfigReader(); reader.ReadFile(path); CsvValue value = reader[1]["key12"].Value; string[] stringArray = value; Assert.AreEqual(5, stringArray.Length); Assert.AreEqual("hello,001", stringArray[0]); Assert.AreEqual("hello,002", stringArray[1]); Assert.AreEqual("hello,003", stringArray[2]); Assert.AreEqual("hello,004", stringArray[3]); Assert.AreEqual("hello,005", stringArray[4]); bool[] boolArray = reader[1]["key9"].Value; foreach (bool b in boolArray) { Assert.IsTrue(b); } }
public void TestConstrcutorString() { string src = "hello"; CsvValue value = new CsvValue(CsvValueType.String, src); string v = value; Assert.AreEqual(src, v); }
public void TestConstrcutorInt() { string src = ""; CsvValue value = new CsvValue(CsvValueType.Int, src); int v = value; Assert.AreEqual(0, v); src = "1234"; value = new CsvValue(CsvValueType.Int, src); v = value; Assert.AreEqual(1234, v); }
public void TestStringArray() { string[] array = new string[] { "a", "b", "c", "d", "e" }; CsvValue value = array; Assert.AreEqual(CsvValueType.ArrayString, value.Type); string[] result = value; Assert.AreEqual(5, result.Length); for (int i = 0; i < array.Length; i++) { Assert.AreEqual(array[i], result[i]); } }
public void TestFloatArray() { float[] array = { 1.1f, 1.2f, 1.3f, 1.4f, 1.5f }; CsvValue value = array; Assert.AreEqual(CsvValueType.ArrayFloat, value.Type); float[] result = value; Assert.AreEqual(5, result.Length); for (int i = 0; i < array.Length; i++) { AssertAreEqual(array[i], result[i]); } }
public void TestIntArray() { int[] array = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; CsvValue value = array; Assert.AreEqual(CsvValueType.ArrayInt, value.Type); int[] result = value; Assert.AreEqual(10, result.Length); for (int i = 0; i < array.Length; i++) { Assert.AreEqual(array[i], result[i]); } }
public void TestBoolArray() { bool[] array = new bool[] { true, false, true, false };//count = 4 CsvValue value = array; Assert.AreEqual(CsvValueType.ArrayBool, value.Type); bool[] result = value; Assert.AreEqual(4, result.Length); for (int i = 0; i < array.Length; i++) { Assert.AreEqual(array[i], result[i]); } }
public CsvSerializer() { this.PropertyValueConverters = typeof(T).GetProperties().Select(x => { if (x.PropertyType == typeof(DateTime)) { return(Tuple.Create(x, (Func <Object, string>)(o => CsvValue.FromDate((DateTime)o)))); } else if (x.PropertyType == typeof(DateTime?)) { return(Tuple.Create(x, (Func <Object, string>)(o => CsvValue.FromNullableDate((DateTime?)o)))); } else { return(Tuple.Create(x, (Func <Object, string>)CsvValue.From)); } }).ToList(); }
public void Test3() { StringBuilder sb = new StringBuilder(); sb.AppendLine("KI,B,I,L,F,D,S"); //7types sb.AppendLine("key1,key2,key3,key4,key5,key6,key7"); sb.AppendLine("1, true, 101, 1001,1.1, 2.1, \"v1,v1;v1,v1\""); sb.AppendLine("2,false, 102, 1002,1.2, 2.2, \"v2,v2;v2,v2\""); CsvConfigReader reader = new CsvConfigReader(); reader.Read(new StringReader(sb.ToString())); CsvConfig config = reader[1]; CsvValue value = config["key7"].Value; string strValue = value; Console.WriteLine(strValue); }
public void TestEquals() { CsvValue[] array = new CsvValue[] { 100, 100L, 100f, 100d }; for (int i = 0; i < array.Length; i++) { for (int j = 0; j < array.Length; j++) { AssertAreEqual(array[i], array[j]); } } AssertAreEqual(true, true); AssertAreEqual("hello", "hello"); }
public void TestConstrcutorArray() { string src = "1;2;3;4;5"; CsvValue value = new CsvValue(CsvValueType.ArrayInt, src); int[] intArray = value; Assert.AreEqual(5, intArray.Length); Assert.AreEqual(1, intArray[0]); Assert.AreEqual(2, intArray[1]); Assert.AreEqual(3, intArray[2]); Assert.AreEqual(4, intArray[3]); Assert.AreEqual(5, intArray[4]); src = "str0;str1;str2;str3;str4"; value = new CsvValue(CsvValueType.ArrayString, src); string[] strArray = value; for (int i = 0; i < 5; i++) { Assert.AreEqual("str" + i, strArray[i]); } }
public void TestImplicit() { int oriInt = 100; CsvValue v = oriInt; int resultInt = v; Assert.AreEqual(oriInt, resultInt); long oriLong = 10000000000000L; v = oriLong; long resultLong = v; Assert.AreEqual(oriLong, resultLong); bool oriBool = true; v = oriBool; bool resultBool = v; Assert.AreEqual(oriBool, resultBool); float oriF = 0.2f; v = oriF; float resultF = v; Assert.AreEqual(oriF, resultF); double oriD = 0.001d; v = oriD; double resultD = v; Assert.AreEqual(oriD, resultD); }
public void AssertAreEqual(CsvValue v1, CsvValue v2) { bool equal = v1.Equals(v2); Assert.True(equal); }