Beispiel #1
0
                           if repository.name == 'RepoTwo' else 'master')
            in_branch = scm.git.query_local_repository_branch(git_dir)
            self.assertEqual(want_branch, in_branch)

    def test_foreach_repo(self):
        test_root = os.path.join(self.base_temp_dir, 'foreach_test')
        pos_args = [1, 2, 3]
        kwargs = {'a': 'A', 'b': 'B'}

        scm = SpinnakerSourceCodeManager(self.options, test_root)
        all_repos = [
            scm.make_repository_spec(repo_name, origin=origin)
            for repo_name, origin in self.ORIGIN_URLS.items()
        ]
        expect = {
            repository.name: (repository, pos_args, kwargs)
            for repository in all_repos
        }

        def _foreach_func(repository, *pos_args, **kwargs):
            return (repository, list(pos_args), dict(kwargs))

        got = scm.foreach_source_repository(all_repos, _foreach_func,
                                            *pos_args, **kwargs)
        self.assertEqual(expect, got)


if __name__ == '__main__':
    init_runtime()
    unittest.main(verbosity=2)
    registry = {}
    bomtool_main.add_standard_parser_args(self.parser, defaults)
    buildtool.spinnaker_commands.register_commands(
        registry, self.subparsers, defaults)

    factory = registry['new_release_branch']
    factory.init_argparser(self.parser, defaults)

    options = self.parser.parse_args(['new_release_branch'])

    mock_push_tag = self.patch_method(GitRunner, 'push_tag_to_origin')
    mock_push_branch = self.patch_method(GitRunner, 'push_branch_to_origin')

    command = factory.make_command(options)
    command()

    base_git_dir = os.path.join(options.input_dir, 'new_release_branch')
    self.assertEqual(os.listdir(base_git_dir), [EXTRA_REPO])
    git_dir = os.path.join(base_git_dir, EXTRA_REPO)
    self.assertEqual(
        GitRunner(options).query_local_repository_commit_id(git_dir),
        self.repo_commit_map[EXTRA_REPO][EXTRA_REPO + '-branch'])

    mock_push_branch.assert_called_once_with(git_dir, 'NewSpinnakerVersion')
    self.assertEqual(0, mock_push_tag.call_count)


if __name__ == '__main__':
  init_runtime()
  unittest.main(verbosity=2)