diff --git a/nbgitpuller/pull.py b/nbgitpuller/pull.py index cc18ac97..63b9798f 100644 --- a/nbgitpuller/pull.py +++ b/nbgitpuller/pull.py @@ -304,13 +304,14 @@ def main(): parser = argparse.ArgumentParser(description='Synchronizes a github repository with a local repository.') parser.add_argument('git_url', help='Url of the repo to sync') parser.add_argument('branch_name', default=None, help='Branch of repo to sync', nargs='?') - parser.add_argument('repo_dir', default='.', help='Path to clone repo under', nargs='?') + parser.add_argument('--target-dir', default='.', help='Path to clone repo under') + args = parser.parse_args() for line in GitPuller( args.git_url, - args.repo_dir, - branch=args.branch_name if args.branch_name else None + args.target_dir, + branch=args.branch_name ).pull(): print(line) diff --git a/tests/test_gitpuller.py b/tests/test_gitpuller.py index 0055b0da..ef1393c1 100644 --- a/tests/test_gitpuller.py +++ b/tests/test_gitpuller.py @@ -99,7 +99,11 @@ def test_initialize(): def command_line_test_helper(remote_path, branch, pusher_path): work_dir = "/".join(os.path.dirname(os.path.abspath(__file__)).split("/")[:-1]) + "/nbgitpuller" try: - cmd = ['python3', 'pull.py', remote_path, branch, pusher_path] + cmd = ['python3', 'pull.py', remote_path] + if branch is not None: + cmd += [branch] + if pusher_path is not None: + cmd += ['--target-dir', pusher_path] sp.check_output( cmd, cwd=work_dir @@ -119,8 +123,9 @@ def test_command_line_existing_branch(): assert subprocess_result -def test_command_line_default_branch(): - branch = "" +def test_command_line_no_branch_passed(): + # so it should use the default branch + branch = None with Remote() as remote, Pusher(remote) as pusher: pusher.push_file('README.md', '1') remotepath = "file://%s" % os.path.abspath(remote.path)