## Check unsuccessful searches.
me.assertRaises(KeyError, lambda: kf["notexist"])
- me.assertEqual(kf.bytag("notexist"), None)
- me.assertEqual(kf.bytag(12345), None)
- me.assertEqual(kf.bytype("notexist"), None)
+ me.assertRaises(C.KeyError, kf.bytag, "notexist")
+ me.assertRaises(C.KeyError, kf.bytag, 12345)
+ me.assertEqual(kf.bytag("notexist", fail = False), None)
+ me.assertRaises(C.KeyError, kf.bytype, "notexist")
me.assertRaises(TypeError, kf.bytype, 12345)
+ me.assertEqual(kf.bytype("notexist", fail = False), None)
me.assertRaises(C.KeyError, kf.byid, 0x12345678)
+ me.assertEqual(kf.byid(0x12345678, fail = False), None)
me.assertRaises(C.KeyError, kf.mergeline, "nowhere", 2, "")
def test_struct(me):
rng = T.detrand("kd-struct")
kd = C.KeyDataStructured({ "a": C.KeyDataString("a"),
- "b": C.KeyDataString("b"),
- "c": C.KeyDataString("c"),
- "d": C.KeyDataString("d") })
+ "b": C.KeyDataString("b") },
+ c = C.KeyDataString("c"),
+ d = C.KeyDataString("d"))
for i in ["a", "b", "c", "d"]: me.assertEqual(kd[i].str, i)
me.assertEqual(len(kd), 4)
me.check_encode(kd)
me.assertRaises(TypeError, C.KeyDataStructured, { "a": "a" })
+ me.assertRaises(ValueError, C.KeyDataStructured,
+ { "a": C.KeyDataString("a") },
+ a = C.KeyDataString("b"))
###--------------------------------------------------------------------------
### Mappings.