Another huge batch of registry v2 changes
Add patch support and resumeable sha Implement all actual registry methods Add a simple database generation option
This commit is contained in:
parent
5ba3521e67
commit
e1b3e9e6ae
29 changed files with 1095 additions and 430 deletions
|
@ -1,20 +1,23 @@
|
|||
import unittest
|
||||
|
||||
from digest.digest_tools import parse_digest, content_path, InvalidDigestException
|
||||
from digest.digest_tools import Digest, content_path, InvalidDigestException
|
||||
|
||||
class TestParseDigest(unittest.TestCase):
|
||||
def test_parse_good(self):
|
||||
examples = [
|
||||
('tarsum.v123123+sha1:123deadbeef', (True, 'v123123', 'sha1', '123deadbeef')),
|
||||
('tarsum.v1+sha256:123123', (True, 'v1', 'sha256', '123123')),
|
||||
('tarsum.v0+md5:abc', (True, 'v0', 'md5', 'abc')),
|
||||
('sha1:123deadbeef', (False, None, 'sha1', '123deadbeef')),
|
||||
('sha256:123123', (False, None, 'sha256', '123123')),
|
||||
('md5:abc', (False, None, 'md5', 'abc')),
|
||||
('tarsum.v123123+sha1:123deadbeef', ('sha1', '123deadbeef', True, 'v123123')),
|
||||
('tarsum.v1+sha256:123123', ('sha256', '123123', True, 'v1')),
|
||||
('tarsum.v0+md5:abc', ('md5', 'abc', True, 'v0')),
|
||||
('sha1:123deadbeef', ('sha1', '123deadbeef', False, None)),
|
||||
('sha256:123123', ('sha256', '123123', False, None)),
|
||||
('md5:abc', ('md5', 'abc', False, None)),
|
||||
]
|
||||
|
||||
for digest, output in examples:
|
||||
self.assertEquals(parse_digest(digest), output)
|
||||
for digest, output_args in examples:
|
||||
self.assertEquals(Digest.parse_digest(digest), Digest(*output_args))
|
||||
|
||||
# Test the string method
|
||||
self.assertEquals(str(Digest.parse_digest(digest)), digest)
|
||||
|
||||
def test_parse_fail(self):
|
||||
examples = [
|
||||
|
@ -29,7 +32,7 @@ class TestParseDigest(unittest.TestCase):
|
|||
|
||||
for bad_digest in examples:
|
||||
with self.assertRaises(InvalidDigestException):
|
||||
parse_digest(bad_digest)
|
||||
Digest.parse_digest(bad_digest)
|
||||
|
||||
|
||||
class TestDigestPath(unittest.TestCase):
|
||||
|
|
Reference in a new issue