Skip to content

Commit

Permalink
Merge e6f5ecf into 6ede1d6
Browse files Browse the repository at this point in the history
  • Loading branch information
sagar-kohli committed Mar 25, 2017
2 parents 6ede1d6 + e6f5ecf commit cc52c78
Showing 1 changed file with 37 additions and 6 deletions.
43 changes: 37 additions & 6 deletions tests/test_bld.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
import unittest
import os
import tempfile

from mock import Mock, patch

Expand All @@ -9,14 +11,35 @@ class TestCase(unittest.TestCase):
"""Test Block level dedup"""
def test_block_hashes_for_file(self):
digest, hashes = bld.block_hashes_for_file('fakefile')
self.assertEqual(digest, 'NOT_FOUND(fakefile)')
self.assertEqual(hashes, [])

def test_block_hashes_for_file2(self):
"""Test accurate hashes generated from file"""
data = (
b'QlJBTlQgSVMgU1VQRVIgQVdFU09NRSBDT09MIEFORCBTSElULiBTTFVHUyBBUkUg'
b'Q1VURQ=='
)
expected_digest = '03439afa9d61f99f35d936b01ea8b4982ab247a0'
expected_hashes = ['03439afa9d61f99f35d936b01ea8b4982ab247a0']
t = tempfile.NamedTemporaryFile(delete=False)
t.write(data)
t.close()
digest, hashes = bld.block_hashes_for_file(t.name)
self.assertEqual(digest, expected_digest)
self.assertEqual(hashes, expected_hashes)

def test_block_hashes_to_file_from_file(self):
"""Test block_hashes_to_file and block_hashes_from_file"""
file_hash = 'cc163c1173bd99a6874d141cdc6b72ff1476e2e7'
block_hashes = ['4456fe0de4819f3ece3f6ed46ac02b15a3bfd086', '6179c639e0b4b021b75ac65d5fb4465ceb6c3157']
t = tempfile.NamedTemporaryFile(delete=False)
t.close()
bld.block_hashes_to_file(file_hash, block_hashes, t.name)
yield_hashes = list(bld.block_hashes_from_file(t.name))
self.assertEqual(yield_hashes, block_hashes)


def test_block_hashes_from_file(self):
pass

def test_block_hashes_to_file(self):
pass

def test_hash_to_dir(self):
dir = bld.hash_to_dir('002badb952000339cdcf1b61a3205b221766bf49')
assert dir == '00/2badb952000339cdcf1b61a3205b221766bf49'
Expand All @@ -29,3 +52,11 @@ def test_filter_existing_block_hashes(self):

def test_walk(self):
pass

def test_suite():
"""Return a list of tests"""
return unittest.TestLoader().loadTestsFromTestCase(TestCase)

if __name__ == '__main__':
#unittest.main()
unittest.TextTestRunner().run(test_suite())

0 comments on commit cc52c78

Please sign in to comment.