def to_bytes(self) -> bytes: "Generate the archive and return it as a bytes blob" # avoid regenerating if len(self.objects) == 1: self.archive(self.input) d = { '$archiver': 'NSKeyedArchiver', '$version': NSKeyedArchiveVersion, '$objects': self.objects, '$top': { 'root': uid(1) } } return bplist.generate(d)
def test_generate_unknown(self): with self.assertRaisesRegex(RuntimeError, "does not support"): bplist.generate(bplist)
def generate_and_parse(self, obj): self.assertEqual(obj, bplist.parse(bplist.generate(obj)))
def compare(self, object): self.assertEqual(object, plistlib.loads(bplist.generate(object)))
def test_generates_equivalent_accessibility_info(self): dict = plistlib.loads(self.fixture('AccessibilityDefinitions')) self.assertDictEqual(dict, bplist.parse(bplist.generate(dict)))
def c_serialize(data): bplist.generate(data)