Пример #1
0
    def test_read_json(self):
        '''It should read in a json with basic info'''

        s = (b'{'
            b'"!":"BytestagFileInfo",'
            b'"hash":"jbip9t8iC9lEz3jndkm5I2fTWV0=",'
            b'"parts":["jbip9t8iC9lEz3jndkm5I2fTWV0="]'
        b'}')

        info = FileInfo.from_bytes(s)

        self.assertEqual(info.file_hash,
            KeyBytes('jbip9t8iC9lEz3jndkm5I2fTWV0='))
        self.assertEqual(info.part_hashes,
            [KeyBytes('jbip9t8iC9lEz3jndkm5I2fTWV0=')])

        result_bytes = info.to_bytes()

        self.assertEqual(s, result_bytes)
Пример #2
0
    def test_read_json_extended(self):
        '''It should read in a json with extended info'''

        s = (b'{'
            b'"!":"BytestagFileInfo",'
            b'"filename":["my_file.txt"],'
            b'"hash":"jbip9t8iC9lEz3jndkm5I2fTWV0=",'
            b'"parts":["jbip9t8iC9lEz3jndkm5I2fTWV0="],'
            b'"size":123'
        b'}')

        info = FileInfo.from_bytes(s)

        self.assertEqual(info.file_hash,
            KeyBytes('jbip9t8iC9lEz3jndkm5I2fTWV0='))
        self.assertEqual(info.part_hashes,
            [KeyBytes('jbip9t8iC9lEz3jndkm5I2fTWV0=')])
        self.assertEqual(info.size, 123)
        self.assertEqual(info.filename, ['my_file.txt'])

        result_bytes = info.to_bytes()

        self.assertEqual(s, result_bytes)
Пример #3
0
 def file_hash_info(self, kvpid):
     return FileInfo.from_bytes(self._get_file_hash_info(kvpid))