def test_keyword_not_git_repo(git_describe, fake_file): git_describe.exc = Exception('error') dist = fake_obj({ 'metadata': { 'name': 'spam' } }) with pytest.raises(Exception) as e: validate_version_command_keyword(dist, 'version_command', ('git describe', 'pep440-git', '-')) assert e.value.args[0].startswith('Could not find version')
def test_keyword(git_describe, fake_file): git_describe.result = b'1.2-0-abcd123\n' dist = fake_obj({ 'metadata': { 'name': 'spam' } }) validate_version_command_keyword(dist, 'version_command', ('git describe', 'pep440-git', '-')) assert dist.metadata.version == '1.2' assert dist.metadata.version_full == '1.2-0-abcd123'
def test_keyword_closed_tag(git_describe, fake_file): git_describe.result = b'1.2.dev5-3-abcd123\n' dist = fake_obj({ 'metadata': { 'name': 'spam' } }) with pytest.raises(Exception) as e: validate_version_command_keyword(dist, 'version_command', ('git describe', 'pep440-git', '-')) assert e.value.args[0] == ('Could not transform version \'1.2.dev5-3-abcd123\'' if sys.version_info[0] == 3 else 'Could not transform version u\'1.2.dev5-3-abcd123\'')
def test_keyword_cached(git_describe, fake_file): git_describe.exc = Exception('error') fake_file.content['spam.egg-info/version.txt'] = '1.2' fake_file.content['spam.egg-info/version_full.txt'] = '1.2-0-abcd123' dist = fake_obj({ 'metadata': { 'name': 'spam' } }) validate_version_command_keyword(dist, 'version_command', ('git describe', 'pep440-git', '-')) assert dist.metadata.version == '1.2' assert dist.metadata.version_full == '1.2-0-abcd123'