def _GetCSVRow(self, value): row = [] for type_info in value.__class__.type_infos: if isinstance(type_info, rdf_structs.ProtoEmbedded): row.extend(self._GetCSVRow(value.Get(type_info.name))) elif isinstance(type_info, rdf_structs.ProtoBinary): row.append(text.Asciify(value.Get(type_info.name))) else: row.append(str(value.Get(type_info.name))) return row
def testNonAscii(self): self.assertEqual(text.Asciify(b"\xff\xfe\xff"), "\\xff\\xfe\\xff") self.assertEqual(text.Asciify(b"f\x00\x00bar"), "f\\x00\\x00bar")
def testAscii(self): self.assertEqual(text.Asciify(b"foobar"), "foobar") self.assertEqual(text.Asciify(b"+!?#"), "+!?#")