예제 #1
0
    def test_should_set_bumped_tag_if_on_master(self, is_dirty_mock,
                                                base_get_version_mock,
                                                set_next_version_tag_mock,
                                                is_head_at_tag_mock,
                                                is_master_mock):
        # given
        is_master_mock.return_value = True
        is_head_at_tag_mock.return_value = False
        is_dirty_mock.return_value = False
        base_get_version_mock.return_value = '0.1.0'

        # when
        result = get_version()

        # then
        set_next_version_tag_mock.assert_called_once_with()
        self.assertEqual(result, '0.1.0')

        # then
        with self.assertRaises(ValueError) as e:
            # when
            is_dirty_mock.return_value = True
            get_version()
예제 #2
0
    def test_should_produce_default_configuration_for_project_setup(self):
        # given
        project_dir = Path(__file__).parent / 'example_project'

        # expected
        self.assertEqual(
            auto_configuration('example_project', project_dir), {
                'project_name':
                'example_project',
                'docker_repository':
                'test_repository',
                'root_package':
                project_dir / 'example_project',
                'project_dir':
                project_dir,
                'build_dir':
                project_dir / 'build',
                'test_package':
                project_dir / 'test',
                'dags_dir':
                project_dir / '.dags',
                'dist_dir':
                project_dir / 'dist',
                'image_dir':
                project_dir / 'image',
                'eggs_dir':
                project_dir / 'example_project.egg-info',
                'deployment_config_file':
                project_dir / 'deployment_config.py',
                'version':
                get_version(),
                'resources_dir':
                project_dir / 'resources',
                'project_requirements_file':
                project_dir / 'resources' / 'requirements.txt'
            })
예제 #3
0
def _cli_project_version(args):
    print(get_version())