unrhodecode/rhodecode/tests/integrations/conftest.py
2025-01-13 17:47:37 +01:00

58 lines
2 KiB
Python

# Copyright (C) 2010-2024 RhodeCode GmbH
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License, version 3
# (only), as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# This program is dual-licensed. If you wish to learn more about the
# RhodeCode Enterprise Edition, including its added features, Support services,
# and proprietary license terms, please see https://rhodecode.com/licenses/
import pytest
from rhodecode import events
from rhodecode.lib.utils2 import AttributeDict
from rhodecode.tests.conftest import HTTPBIN_DOMAIN
@pytest.fixture()
def repo_push_event(backend, user_regular):
commits = [
{"message": "ancestor commit fixes #15"},
{"message": "quick fixes"},
{"message": "change that fixes #41, #2"},
{"message": "this is because 5b23c3532 broke stuff"},
{"message": "last commit"},
]
r = backend.create_repo(commits)
commit_ids = list(backend.commit_ids.values())
repo_name = backend.repo_name
alias = backend.alias
scm_extras = AttributeDict(
{
"ip": "127.0.0.1",
"username": user_regular.username,
"user_id": user_regular.user_id,
"action": "",
"repository": repo_name,
"scm": alias,
"config": "",
"repo_store": "",
"server_url": HTTPBIN_DOMAIN,
"make_lock": None,
"locked_by": [None],
"commit_ids": commit_ids,
}
)
return events.RepoPushEvent(repo_name=repo_name, pushed_commit_ids=commit_ids, extras=scm_extras)