1
0
Fork 0
firefox/python/mozversioncontrol/test/test_get_mozilla_remote_args.py
Daniel Baumann 5e9a113729
Adding upstream version 140.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-25 09:37:52 +02:00

67 lines
1.7 KiB
Python

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
from unittest import mock
import mozunit
import pytest
from mozversioncontrol import get_repository_object
STEPS = {
"hg": [],
"git": [
"git remote add blah https://example.com/blah",
"""
git remote add unified hg::https://hg.mozilla.org/mozilla-unified
git remote add central hg::https://hg.mozilla.org/central
git remote add try hg::https://hg.mozilla.org/try
git remote add firefox https://github.com/mozilla-firefox/firefox
""",
],
"jj": [],
}
@pytest.mark.parametrize(
"is_cinnabar,expected_remotes",
(
(
True,
[
"--remotes=central",
"--remotes=unified",
],
),
(False, ["--remotes=firefox"]),
),
)
def test_get_mozilla_remote_args(is_cinnabar, expected_remotes, repo):
# Test is only relevant for Git.
if not repo.vcs == "git":
return
repo.execute_next_step()
vcs = get_repository_object(repo.dir)
vcs.is_cinnabar_repo = mock.MagicMock(name="is_cinnabar_repo")
vcs.is_cinnabar_repo.return_value = is_cinnabar
remotes = vcs.get_mozilla_remote_args()
assert remotes == [
"--remotes"
], "Default `--remotes` passed without finding official remote."
repo.execute_next_step()
remotes = sorted(vcs.get_mozilla_remote_args())
assert (
remotes == expected_remotes
), "Multiple non-try remote arguments should be found."
if __name__ == "__main__":
mozunit.main()