def get_dev_version(self, increment_part): """ Util method which call set_version_from_git_tag with particular level of version increment part """ self.project.set_property( 'semver_git_tag_increment_part', increment_part) set_version_from_git_tag(self.project, self.logger)
def test_should_warning_if_semver_tag_not_found(self, mock_git_info): # pylint: disable=invalid-name, unused-argument """ Plugin should warning if SemVer tag wasn't found and return""" set_version_from_git_tag(self.project, self.logger) self.logger.warn.assert_called_once_with( "No SemVer git tag found. " "Consider removing plugin pybuilder_semver_git_tag.") self.logger.info.assert_not_called()
def test_should_raise_if_git_repo_not_exists(self): # pylint: disable=invalid-name """ Plugin should raise exception if cannot find git root directory""" with self.assertRaises(BuildFailedException) as context: set_version_from_git_tag(self.project, self.logger) err_msg = str(context.exception) self.assertTrue( "Directory `basedir` isn't git repository root." in err_msg)
def test_dev_version_if_dirty(self, mock_git_info): # pylint: disable=invalid-name, unused-argument """ Plugin should generate dev version if repo is dirty""" # Test `patch` part self.get_dev_version('patch') self.assertEqual(self.project.version, '1.2.4.dev') # Test `minor` part self.get_dev_version('minor') self.assertEqual(self.project.version, '1.3.0.dev') # Test `major` part self.get_dev_version('major') self.assertEqual(self.project.version, '2.0.0.dev') # Test incorrect part self.project.set_property('semver_git_tag_increment_part', 'incorrect') with self.assertRaises(BuildFailedException) as context: set_version_from_git_tag(self.project, self.logger) err_msg = str(context.exception) self.assertTrue( ("Incorrect value for `semver_git_tag_increment_part` property. " "Has to be in (`major`, `minor`, `patch`), " "but `incorrect` passed.") in err_msg)
def test_release_version_found(self, mock_git_info): # pylint: disable=invalid-name, unused-argument """ Plugin should find release version""" set_version_from_git_tag(self.project, self.logger) self.assertEqual(self.logger.info.call_count, 2) self.assertEqual(self.project.version, '1.2.3')