def test_missing_package(self): with open(os.path.abspath(__file__), 'rb') as _file: md5_sum = utils.safe_checksum_file(_file) request = self.factory.post(self.url, {'md5_sum': md5_sum}) response = views.deposit_package(request) self.assertEqual(response.status_code, 400)
def test_mismatching_package_checksum(self): with open(os.path.abspath(__file__), 'rb') as _file: md5_sum = utils.safe_checksum_file( _file)[::-1] # só para zoar a soma request = self.factory.post(self.url, { 'md5_sum': md5_sum, 'package': _file }) response = views.deposit_package(request) self.assertEqual(response.status_code, 400)
def test_bright_path(self): """Testa o caminho feliz. """ with open(os.path.abspath(__file__), 'rb') as _file: md5_sum = utils.safe_checksum_file(_file) request = self.factory.post(self.url, { 'md5_sum': md5_sum, 'package': _file, 'depositor': 'gn1' }) response = views.deposit_package(request) self.assertEqual(response.status_code, 200)
def test_byte_offset_is_preserved(self): former_offset = self.sample_file.tell() _ = utils.safe_checksum_file(self.sample_file) self.assertEquals(former_offset, self.sample_file.tell())
def test_default_sum_fmt_is_hex_md5(self): import hashlib algo = hashlib.md5() algo.update(self.octets) self.assertEquals(algo.hexdigest(), utils.safe_checksum_file(self.sample_file))
def md5_sum(self): return utils.safe_checksum_file(self.file)