def test_union_extra_tag():
n = CultureAgnosticName(fullname=u'foobar')
serialized = n.__nirum_serialize__()
serialized.update(wrong='v')
with raises(ValueError):
MixedName.__nirum_deserialize__(serialized)
While deserialize union with extra items, it raises unexpected KeyError. See above example.