From efdb83707561766e041d20d0674277e221f119c4 Mon Sep 17 00:00:00 2001 From: Cosimo Lupo Date: Thu, 25 Jun 2015 19:22:01 +0100 Subject: [PATCH 1/2] [_f_p_g_m] add doctests for __bool__ method --- Lib/fontTools/ttLib/tables/_f_p_g_m.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Lib/fontTools/ttLib/tables/_f_p_g_m.py b/Lib/fontTools/ttLib/tables/_f_p_g_m.py index d116ff24e..6fc8efcec 100644 --- a/Lib/fontTools/ttLib/tables/_f_p_g_m.py +++ b/Lib/fontTools/ttLib/tables/_f_p_g_m.py @@ -23,6 +23,29 @@ class table__f_p_g_m(DefaultTable.DefaultTable): self.program = program def __bool__(self): + """ + >>> fpgm = table__f_p_g_m() + >>> bool(fpgm) + False + >>> p = ttProgram.Program() + >>> fpgm.program = p + >>> bool(fpgm) + False + >>> bc = bytearray([0]) + >>> p.fromBytecode(bc) + >>> bool(fpgm) + True + >>> p.bytecode.pop() + 0 + >>> bool(fpgm) + False + """ return hasattr(self, 'program') and bool(self.program) __nonzero__ = __bool__ + + +if __name__ == "__main__": + import sys + import doctest + sys.exit(doctest.testmod().failed) From 3a856eeef8b5eeabd251c9a4890182b13a5e3087 Mon Sep 17 00:00:00 2001 From: Cosimo Lupo Date: Thu, 25 Jun 2015 19:22:42 +0100 Subject: [PATCH 2/2] [ttProgram] add doctests for __bool__ method --- Lib/fontTools/ttLib/tables/ttProgram.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Lib/fontTools/ttLib/tables/ttProgram.py b/Lib/fontTools/ttLib/tables/ttProgram.py index f1f62e565..12f42724b 100644 --- a/Lib/fontTools/ttLib/tables/ttProgram.py +++ b/Lib/fontTools/ttLib/tables/ttProgram.py @@ -449,6 +449,29 @@ class Program(object): self.assembly = assembly def __bool__(self): + """ + >>> p = Program() + >>> bool(p) + False + >>> bc = array.array("B", [0]) + >>> p.fromBytecode(bc) + >>> bool(p) + True + >>> p.bytecode.pop() + 0 + >>> bool(p) + False + + >>> p = Program() + >>> asm = ['SVTCA[0]'] + >>> p.fromAssembly(asm) + >>> bool(p) + True + >>> p.assembly.pop() + 'SVTCA[0]' + >>> bool(p) + False + """ return ((hasattr(self, 'assembly') and len(self.assembly) > 0) or (hasattr(self, 'bytecode') and len(self.bytecode) > 0))