diff options
author | Lars-Dominik Braun <lars@6xq.net> | 2018-12-17 09:49:20 +0100 |
---|---|---|
committer | Lars-Dominik Braun <lars@6xq.net> | 2018-12-17 11:24:24 +0100 |
commit | de95c00f55db71d188f4a75723f444ea290bd997 (patch) | |
tree | 95ddb75db7551d651a4107c4acabf9bf0c0c55ec /crocoite/test_tools.py | |
parent | 59c5018212934b8143e66b0e113b2a9f5fb0d15b (diff) | |
download | crocoite-de95c00f55db71d188f4a75723f444ea290bd997.tar.gz crocoite-de95c00f55db71d188f4a75723f444ea290bd997.tar.bz2 crocoite-de95c00f55db71d188f4a75723f444ea290bd997.zip |
Add simple errata tool
Fixes #9.
Diffstat (limited to 'crocoite/test_tools.py')
-rw-r--r-- | crocoite/test_tools.py | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/crocoite/test_tools.py b/crocoite/test_tools.py index 947d020..c320ad9 100644 --- a/crocoite/test_tools.py +++ b/crocoite/test_tools.py @@ -25,8 +25,9 @@ import pytest from warcio.archiveiterator import ArchiveIterator from warcio.warcwriter import WARCWriter from warcio.statusandheaders import StatusAndHeaders +from pkg_resources import parse_version -from .tools import mergeWarc +from .tools import mergeWarc, Errata, FixableErrata from .util import packageUrl @pytest.fixture @@ -195,3 +196,28 @@ def test_resp_revisit_other_url(writer): output.seek(0) recordsEqual (makeGolden (writer, records), ArchiveIterator (output)) +def test_errata_contains(): + """ Test version matching """ + e = Errata('some-uuid', 'description', ['a<1.0']) + assert {'a': parse_version('0.1')} in e + assert {'a': parse_version('1.0')} not in e + assert {'b': parse_version('1.0')} not in e + + e = Errata('some-uuid', 'description', ['a<1.0,>0.1']) + assert {'a': parse_version('0.1')} not in e + assert {'a': parse_version('0.2')} in e + assert {'a': parse_version('1.0')} not in e + + # a AND b + e = Errata('some-uuid', 'description', ['a<1.0', 'b>1.0']) + assert {'a': parse_version('0.1')} not in e + assert {'b': parse_version('1.1')} not in e + assert {'a': parse_version('0.1'), 'b': parse_version('1.1')} in e + +def test_errata_fixable (): + e = Errata('some-uuid', 'description', ['a<1.0', 'b>1.0']) + assert not e.fixable + + e = FixableErrata('some-uuid', 'description', ['a<1.0', 'b>1.0']) + assert e.fixable + |