forked from LBRYCommunity/lbry-sdk
test that corrupted sd blobs gets delete if fails to decode
This commit is contained in:
parent
4e7d88311f
commit
edb5083a5e
1 changed files with 4 additions and 1 deletions
|
@ -109,14 +109,17 @@ class TestRecoverOldStreamDescriptors(AsyncioTestCase):
|
|||
self.assertEqual(sd_hash, descriptor.calculate_old_sort_sd_hash())
|
||||
self.assertNotEqual(sd_hash, descriptor.calculate_sd_hash())
|
||||
|
||||
async def test_decode_corrupt_blob_raises_proper_exception(self):
|
||||
async def test_decode_corrupt_blob_raises_proper_exception_and_deletes_corrupt_file(self):
|
||||
loop = asyncio.get_event_loop()
|
||||
tmp_dir = tempfile.mkdtemp()
|
||||
self.addCleanup(lambda: shutil.rmtree(tmp_dir))
|
||||
sd_hash = '9313d1807551186126acc3662e74d9de29cede78d4f133349ace846273ef116b9bb86be86c54509eb84840e4b032f6b2'
|
||||
with open(os.path.join(tmp_dir, sd_hash), 'wb') as handle:
|
||||
handle.write(b'doesnt work')
|
||||
blob = BlobFile(loop, tmp_dir, sd_hash)
|
||||
self.assertTrue(blob.file_exists)
|
||||
with self.assertRaises(InvalidStreamDescriptorError):
|
||||
await StreamDescriptor.from_stream_descriptor_blob(
|
||||
loop, tmp_dir, BlobFile(loop, tmp_dir, sd_hash)
|
||||
)
|
||||
self.assertFalse(blob.file_exists)
|
||||
|
|
Loading…
Reference in a new issue