public void TestBagRange() { Variant v = new Variant(Variant.EnumType.Bag); v.Add("key1", new Variant("value1")); v.Add("key2", new Variant(1.0)); v.Add("key1", new Variant("value2")); Variant r1 = v.Range("missing"); Assert.AreEqual(Variant.EnumType.List, r1.Type); Assert.AreEqual(0, r1.Count); Variant r2 = v.Range("key1"); Assert.AreEqual(Variant.EnumType.List, r2.Type); Assert.AreEqual(2, r2.Count); Assert.AreEqual("value1", r2[0].As<string>()); Assert.AreEqual("value2", r2[1].As<string>()); Variant r3 = v.Range("key2"); Assert.AreEqual(Variant.EnumType.List, r2.Type); Assert.AreEqual(1, r3.Count); Assert.AreEqual(1.0, r3[0].As<double>()); }