public void Test2str() { StructValue sv = new StructValue(mt1, vf); Assert.AreEqual("one(785945377): {}", sv.ToString()); sv = new StructValue(mt2, vf); Assert.AreEqual("two(827843303): {}", sv.ToString()); sv = new StructValue(mt1, vf); sv.Add(mf1, true); Assert.AreEqual("one(785945377): {f1(1512176592)=True}", sv.ToString()); sv = new StructValue(mt1, vf); sv.Add(mf3, 23); Assert.AreEqual("one(785945377): {f3(1512176594)=23}", sv.ToString()); sv = new StructValue(mt1, vf); sv.Add(mf1, false); sv.Add(mf3, 74); Assert.AreEqual("one(785945377): {f1(1512176592)=False, f3(1512176594)=74}", sv.ToString()); }
public void Put3() { StructValue sv = new StructValue(mt1, vf); sv.Add(mf1, false); sv.Add(mf2, new Boolean[] { true, false }); sv.Add(mf3, 1); sv.Add(mf4, new int[] { 1, 2 }); sv.Add(mf5, "a"); sv.Add(mf6, new String[] { "a", "b" }); Assert.AreEqual(6, sv.Count); // now "remove" them all sv.Add(mf1, null); sv.Add(mf2, null); sv.Add(mf3, null); sv.Add(mf4, null); sv.Add(mf5, null); sv.Add(mf6, null); Assert.AreEqual(0, sv.Count); }
public void Get() { StructValue sv = new StructValue(mt1, vf); Assert.IsTrue(sv.Count == 0); Assert.AreEqual(0, sv.Count); Assert.IsNull(sv.Get(mf1)); sv.Add(mf1, true); Assert.IsFalse(sv.Count == 0); Assert.AreEqual(1, sv.Count); Assert.AreEqual(true, sv.Get(mf1)); sv.Add(mf1, false); Assert.IsFalse(sv.Count == 0); Assert.AreEqual(1, sv.Count); Assert.AreEqual(false, sv.Get(mf1)); sv.Add(mf1, null); Assert.IsTrue(sv.Count == 0); Assert.AreEqual(0, sv.Count); Assert.IsNull(sv.Get(mf1)); }
public void Iterator() { StructValue sv = new StructValue(mt1, vf); Assert.IsFalse(sv.GetEnumerator().MoveNext()); sv.Add(mf1, true); IEnumerator <KeyValuePair <Field, Object> > it = sv.GetEnumerator(); Assert.IsTrue(it.MoveNext()); KeyValuePair <Field, Object> me = it.Current; Assert.AreEqual(mf1, me.Key); Assert.AreEqual(true, me.Value); Assert.IsFalse(it.MoveNext()); Dictionary <Field, Object> vals = new Dictionary <Field, object>(); vals.Add(mf1, true); vals.Add(mf3, 2); vals.Add(mf5, "a"); sv.Add(mf3, 2); sv.Add(mf5, "a"); it = sv.GetEnumerator(); while (it.MoveNext()) { me = it.Current; Field key = me.Key; Assert.IsTrue(vals.ContainsKey(key)); Assert.AreEqual(vals[key], me.Value); vals.Remove(key); } Assert.IsTrue(vals.Count == 0); }
public void put15() { StructValue sv = new StructValue(mt1, vf); sv.Add(mf2, new Boolean[][] {}); }
public void put14() { StructValue sv = new StructValue(mt1, vf); sv.Add(mf2, true); }
public void put12() { StructValue sv = new StructValue(mt1, vf); sv.Add(mf2, null); }
public void put11() { StructValue sv = new StructValue(mt1, vf); sv.Add(mf1, "a"); // wrong type }
public void put9() { StructValue sv = new StructValue(mt1, vf); sv.Add(mf1, (float)1.2); // wrong type }
public void put8() { StructValue sv = new StructValue(mt1, vf); sv.Add(mf1, (long)1); // wrong type }
public void put6() { StructValue sv = new StructValue(mt1, vf); sv.Add(mf1, (short)1); // wrong type }
public void put5() { StructValue sv = new StructValue(mt1, vf); sv.Add(mf1, (sbyte)1); // wrong type }
/// <summary> /// Imports a value from an equivalent StructValue. /// </summary> /// <param name="sv">a StructValue representing the exported value.</param> /// <returns>a service defined type.</returns> public virtual Object ImportValue(StructValue sv) { return(iv(sv)); }
public Object ImportCustomValue(StructValue sv) { throw new NotSupportedException("not implemented"); }