public void ShouldThrowExceptionOnWrongValueType() { var baseTypeDictionary = new Dictionary <string, int> { { "test", 1 } }; SinTDMap SinTDMap = new SinTDMap(); SinTDMap.keyType = SinTDInstance.GetSinTDType("string"); SinTDMap.elementType = SinTDInstance.GetSinTDType("string"); Assert.Throws <TypeCastException>( () => { var mapInstance = SinTDMap.AssignValuesFromObject(baseTypeDictionary) as Dictionary <object, object>; }); }
public void ShouldAssignDictionaryOfBaseTypesToMap() { var baseTypeDictionary = new Dictionary <string, int> { { "test", 1 } }; SinTDMap SinTDMap = new SinTDMap(); SinTDMap.keyType = SinTDInstance.GetSinTDType("string"); SinTDMap.elementType = SinTDInstance.GetSinTDType("i32"); Dictionary <object, object> mapInstance = SinTDMap.AssignValuesFromObject(baseTypeDictionary) as Dictionary <object, object>; Assert.AreEqual(1, mapInstance.Values.Count); Assert.AreEqual("test", (mapInstance.Keys.ElementAt(0))); Assert.AreEqual(1, (mapInstance.Values.ElementAt(0))); }
public void ShouldAssignArrayTypedValuesToMap() { var arrayKeyDictionary = new Dictionary <string, int[]> { { "test", new int[] { 1 } } }; SinTDArray valueArray = new SinTDArray(); valueArray.elementType = SinTDInstance.GetSinTDType("i32"); SinTDMap SinTDMap = new SinTDMap(); SinTDMap.keyType = SinTDInstance.GetSinTDType("string"); SinTDMap.elementType = valueArray; Dictionary <object, object> mapInstance = SinTDMap.AssignValuesFromObject(arrayKeyDictionary) as Dictionary <object, object>; Assert.AreEqual(typeof(object[]), mapInstance.Values.ElementAt(0).GetType()); Assert.AreEqual(1, ((object[])mapInstance.Values.ElementAt(0)).Length); Assert.AreEqual(1, ((object[])mapInstance.Values.ElementAt(0))[0]); }
public void ShouldAssignedArrayTypedKeysToMap() { var arrayKeyDictionary = new Dictionary <int[], string> { { new int[] { 1 }, "test" } }; SinTDArray keyArray = new SinTDArray(); keyArray.elementType = SinTDInstance.GetSinTDType("i32"); SinTDMap SinTDMap = new SinTDMap(); SinTDMap.keyType = keyArray; SinTDMap.elementType = SinTDInstance.GetSinTDType("string"); Dictionary <object, object> mapInstance = SinTDMap.AssignValuesFromObject(arrayKeyDictionary) as Dictionary <object, object>; Assert.AreEqual(typeof(object[]), mapInstance.Keys.ElementAt(0).GetType()); Assert.AreEqual(1, ((object[])mapInstance.Keys.ElementAt(0)).Length); Assert.AreEqual(1, ((object[])mapInstance.Keys.ElementAt(0))[0]); }
public void ShouldThrowExceptionOnWrongValueType() { var baseTypeDictionary = new Dictionary<string, int> { {"test", 1} }; SinTDMap SinTDMap = new SinTDMap(); SinTDMap.keyType = SinTDInstance.GetSinTDType("string"); SinTDMap.elementType = SinTDInstance.GetSinTDType("string"); Assert.Throws<TypeCastException>( () => { var mapInstance = SinTDMap.AssignValuesFromObject(baseTypeDictionary) as Dictionary<object, object>; }); }
public void ShouldAssignedArrayTypedKeysToMap() { var arrayKeyDictionary = new Dictionary<int[], string>{ {new int[]{1}, "test"} }; SinTDArray keyArray = new SinTDArray(); keyArray.elementType = SinTDInstance.GetSinTDType("i32"); SinTDMap SinTDMap = new SinTDMap(); SinTDMap.keyType = keyArray; SinTDMap.elementType = SinTDInstance.GetSinTDType("string"); Dictionary<object, object> mapInstance = SinTDMap.AssignValuesFromObject(arrayKeyDictionary) as Dictionary<object, object>; Assert.AreEqual(typeof(object[]), mapInstance.Keys.ElementAt(0).GetType()); Assert.AreEqual(1, ((object[])mapInstance.Keys.ElementAt(0)).Length); Assert.AreEqual(1, ((object[])mapInstance.Keys.ElementAt(0))[0]); }
public void ShouldAssignDictionaryOfBaseTypesToMap() { var baseTypeDictionary = new Dictionary<string, int> { {"test", 1} }; SinTDMap SinTDMap = new SinTDMap(); SinTDMap.keyType = SinTDInstance.GetSinTDType("string"); SinTDMap.elementType = SinTDInstance.GetSinTDType("i32"); Dictionary<object, object> mapInstance = SinTDMap.AssignValuesFromObject(baseTypeDictionary) as Dictionary<object, object>; Assert.AreEqual(1, mapInstance.Values.Count); Assert.AreEqual("test", (mapInstance.Keys.ElementAt(0))); Assert.AreEqual(1, (mapInstance.Values.ElementAt(0))); }
public void ShouldAssignArrayTypedValuesToMap() { var arrayKeyDictionary = new Dictionary<string, int[]>{ {"test", new int[]{1} } }; SinTDArray valueArray = new SinTDArray(); valueArray.elementType = SinTDInstance.GetSinTDType("i32"); SinTDMap SinTDMap = new SinTDMap(); SinTDMap.keyType = SinTDInstance.GetSinTDType("string"); SinTDMap.elementType = valueArray; Dictionary<object, object> mapInstance = SinTDMap.AssignValuesFromObject(arrayKeyDictionary) as Dictionary<object, object>; Assert.AreEqual(typeof(object[]), mapInstance.Values.ElementAt(0).GetType()); Assert.AreEqual(1, ((object[])mapInstance.Values.ElementAt(0)).Length); Assert.AreEqual(1, ((object[])mapInstance.Values.ElementAt(0))[0]); }