Skip to content

Commit cbf37ea

Browse files
committed
add test for the changed get_repos_for_project() behavior
1 parent fed851d commit cbf37ea

File tree

1 file changed

+30
-3
lines changed

1 file changed

+30
-3
lines changed

tools/src/test/python/test_mirror.py

Lines changed: 30 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
#
2121

2222
#
23-
# Copyright (c) 2019, 2021, Oracle and/or its affiliates. All rights reserved.
23+
# Copyright (c) 2019, 2022, Oracle and/or its affiliates. All rights reserved.
2424
# Portions Copyright (c) 2020, Krystof Tulinger <[email protected]>
2525
#
2626

@@ -456,6 +456,33 @@ def test_mirror_project(config):
456456
test_mirror_project(global_config_2)
457457

458458

459+
def test_get_repos_for_project_first_repo(monkeypatch):
460+
"""
461+
Test that get_repos_for_project() returns the list where the first item is the
462+
repository matching the project.
463+
"""
464+
project_name = 'foo'
465+
test_repo = "/" + project_name
466+
467+
def mock_get_repos(*args, **kwargs):
468+
return [test_repo + "/x", test_repo, test_repo + "/y"]
469+
470+
def mock_get_repo_type(*args, **kwargs):
471+
return "Git"
472+
473+
with tempfile.TemporaryDirectory() as source_root:
474+
with monkeypatch.context() as m:
475+
m.setattr("opengrok_tools.utils.mirror.get_repos",
476+
mock_get_repos)
477+
m.setattr("opengrok_tools.utils.mirror.get_repo_type",
478+
mock_get_repo_type)
479+
480+
repos = get_repos_for_project(project_name, None, source_root)
481+
assert len(repos) == 3
482+
assert isinstance(repos[0], GitRepository)
483+
assert repos[0].path == os.path.join(source_root, project_name)
484+
485+
459486
def test_get_repos_for_project(monkeypatch):
460487
"""
461488
Test argument passing between get_repos_for_project() and get_repository()
@@ -468,10 +495,10 @@ def test_get_repos_for_project(monkeypatch):
468495
timeout = 314159
469496
test_repo = "/" + project_name
470497

471-
def mock_get_repos(*args, headers=None, timeout=None):
498+
def mock_get_repos(*args, **kwargs):
472499
return [test_repo]
473500

474-
def mock_get_repo_type(*args, headers=None, timeout=None):
501+
def mock_get_repo_type(*args, **kwargs):
475502
return "Git"
476503

477504
with tempfile.TemporaryDirectory() as source_root:

0 commit comments

Comments
 (0)