def test_download_ok_verify_failed(self, mock_urlopen):
mock_extract_tarball = self.mock_patch_object(
self.glance.utils, 'extract_tarball')
mock_md5 = mock.Mock()
mock_md5.hexdigest.return_value = 'unexpect_cksum'
mock_md5_new = self.mock_patch_object(
self.glance.md5, 'new', mock_md5)
mock_info = mock.Mock()
mock_info.getheader.return_value = 'expect_cksum'
mock_urlopen.return_value.info.return_value = mock_info
fake_request = urllib2.Request('http://fakeurl.com')
self.assertRaises(self.glance.RetryableError,
self.glance._download_tarball_and_verify,
fake_request, 'fake_staging_path'
)
mock_urlopen.assert_called_with(fake_request)
mock_extract_tarball.assert_called_once()
mock_md5_new.assert_called_once()
mock_md5_new.return_value.hexdigest.assert_called_once()
评论列表
文章目录