Python: return None for missing strings. (#4733)

[BREAKING CHANGE] Python: return None for missing strings.
This commit is contained in:
Tin Tvrtković
2018-05-10 19:34:20 +02:00
committed by Wouter van Oortmerssen
parent 3a2c535592
commit b10123ff63
4 changed files with 4 additions and 4 deletions

View File

@@ -194,7 +194,7 @@ static void GetStringField(const StructDef &struct_def, const FieldDef &field,
code += OffsetPrefix(field);
code += Indent + Indent + Indent + "return " + GenGetter(field.value.type);
code += "o + self._tab.Pos)\n";
code += Indent + Indent + "return bytes()\n\n";
code += Indent + Indent + "return None\n\n";
}
// Get the value of a union from an object.

View File

@@ -49,7 +49,7 @@ class Monster(object):
o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10))
if o != 0:
return self._tab.String(o + self._tab.Pos)
return bytes()
return None
# Monster
def Inventory(self, j):

View File

@@ -23,7 +23,7 @@ class Stat(object):
o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4))
if o != 0:
return self._tab.String(o + self._tab.Pos)
return bytes()
return None
# Stat
def Val(self):

View File

@@ -917,7 +917,7 @@ class TestAllCodePathsOfExampleSchema(unittest.TestCase):
self.assertEqual(100, self.mon.Hp())
def test_default_monster_name(self):
self.assertEqual(b'', self.mon.Name())
self.assertEqual(None, self.mon.Name())
def test_default_monster_inventory_item(self):
self.assertEqual(0, self.mon.Inventory(0))