Fix problem with uninitialized unions in _from_dict
This commit is contained in:
@@ -21,13 +21,18 @@ struct Person {
|
||||
|
||||
employment :union {
|
||||
unemployed @4 :Void;
|
||||
employer @5 :Text;
|
||||
employer @5 :Employer;
|
||||
school @6 :Text;
|
||||
selfEmployed @7 :Void;
|
||||
# We assume that a person is only one of these.
|
||||
}
|
||||
}
|
||||
|
||||
struct Employer {
|
||||
name @0 :Text;
|
||||
boss @1 :Person;
|
||||
}
|
||||
|
||||
struct AddressBook {
|
||||
people @0 :List(Person);
|
||||
}
|
||||
|
||||
@@ -164,3 +164,9 @@ def test_set_dict(all_types):
|
||||
msg.structList[0] = {'int32Field': 102}
|
||||
|
||||
assert msg.structList[0].int32Field == 102
|
||||
|
||||
|
||||
def test_set_dict_union(addressbook):
|
||||
person = addressbook.Person.new_message(**{'employment': {'employer': {'name': 'foo'}}})
|
||||
|
||||
assert person.employment.employer.name == 'foo'
|
||||
|
||||
Reference in New Issue
Block a user