Exemple #1
0
def test_get_packit_config_from_repo(content):
    flexmock(GitProject).should_receive("get_file_content").and_return(content)
    git_project = GitProject(repo="", service=GitService(), namespace="")
    config = get_packit_config_from_repo(sourcegit_project=git_project, ref="")
    assert isinstance(config, PackageConfig)
    assert Path(config.specfile_path).name == "packit.spec"
    assert config.synced_files == SyncFilesConfig(files_to_sync=[
        SyncFilesItem(src="packit.spec", dest="packit.spec"),
        SyncFilesItem(src=".packit.yaml", dest=".packit2.yaml"),
    ])
Exemple #2
0
def test_package_config_not_equal(not_equal_package_config):
    j = get_job_config_full()
    j.metadata["b"] = "c"
    assert (not PackageConfig(
        specfile_path="fedora/package.spec",
        synced_files=SyncFilesConfig(files_to_sync=[
            SyncFilesItem(src="c", dest="c"),
            SyncFilesItem(src="d", dest="d"),
        ]),
        jobs=[j],
    ) == not_equal_package_config)
Exemple #3
0
def test_package_config_equal(job_config_simple):
    assert PackageConfig(
        specfile_path="fedora/package.spec",
        synced_files=SyncFilesConfig(files_to_sync=[
            SyncFilesItem(src="packit.yaml", dest="packit.yaml")
        ]),
        jobs=[job_config_simple],
    ) == PackageConfig(
        specfile_path="fedora/package.spec",
        synced_files=SyncFilesConfig(files_to_sync=[
            SyncFilesItem(src="packit.yaml", dest="packit.yaml")
        ]),
        jobs=[job_config_simple],
    )
Exemple #4
0
def test_dist_git_package_url():
    di = {
        "dist_git_base_url": "https://packit.dev/",
        "downstream_package_name": "packit",
        "dist_git_namespace": "awesome",
        "synced_files": ["fedora/foobar.spec"],
        "specfile_path": "fedora/package.spec",
        "create_pr": False,
    }
    new_pc = PackageConfig.get_from_dict(di)
    pc = PackageConfig(
        dist_git_base_url="https://packit.dev/",
        downstream_package_name="packit",
        dist_git_namespace="awesome",
        synced_files=SyncFilesConfig(files_to_sync=[
            SyncFilesItem(src="fedora/foobar.spec", dest="fedora/foobar.spec")
        ]),
        specfile_path="fedora/package.spec",
        create_pr=False,
        jobs=get_default_job_config(),
    )
    assert new_pc.specfile_path.endswith("fedora/package.spec")
    assert pc.specfile_path.endswith("fedora/package.spec")
    assert pc == new_pc
    assert pc.dist_git_package_url == "https://packit.dev/awesome/packit.git"
    assert new_pc.dist_git_package_url == "https://packit.dev/awesome/packit.git"
    assert not pc.create_pr
Exemple #5
0
        synced_files=SyncFilesConfig(files_to_sync=[
            SyncFilesItem(src="packit.yaml", dest="packit.yaml")
        ]),
        jobs=[job_config_simple],
        downstream_package_name="package",
        create_pr=True,
    )


@pytest.mark.parametrize(
    "not_equal_package_config",
    [
        PackageConfig(
            specfile_path="fedora/other-package.spec",
            synced_files=SyncFilesConfig(files_to_sync=[
                SyncFilesItem(src="a", dest="a"),
                SyncFilesItem(src="b", dest="b"),
            ]),
            jobs=[get_job_config_simple()],
        ),
        PackageConfig(
            specfile_path="fedora/package.spec",
            synced_files=SyncFilesConfig(
                files_to_sync=[SyncFilesItem(src="c", dest="c")]),
            jobs=[get_job_config_simple()],
        ),
        PackageConfig(
            specfile_path="fedora/package.spec",
            synced_files=SyncFilesConfig(files_to_sync=[
                SyncFilesItem(src="a", dest="a"),
                SyncFilesItem(src="b", dest="b"),
Exemple #6
0
from pathlib import Path

import pytest

from packit.config import PackageConfig, SyncFilesItem, SyncFilesConfig
from packit.sync import RawSyncFilesItem
from tests.spellbook import TESTS_DIR
from packit.utils import cwd


@pytest.mark.parametrize(
    "packit_files,expected",
    [
        (
            SyncFilesConfig(files_to_sync=[
                SyncFilesItem(src="conftest.py", dest="conftest.py")
            ]),
            [
                RawSyncFilesItem(Path("conftest.py"), Path("conftest.py"),
                                 False)
            ],
        ),
        (
            SyncFilesConfig(files_to_sync=[
                SyncFilesItem(src="__init__.py", dest="__init__.py"),
                SyncFilesItem(src="conftest.py", dest="conftest.py"),
                SyncFilesItem(src="spellbook.py", dest="spellbook.py"),
            ]),
            [
                RawSyncFilesItem(Path("__init__.py"), Path("__init__.py"),
                                 False),
Exemple #7
0
from pathlib import Path

import pytest

from packit.config import PackageConfig, SyncFilesItem, SyncFilesConfig
from packit.sync import RawSyncFilesItem
from packit.utils.commands import cwd
from tests.spellbook import DATA_DIR


@pytest.mark.parametrize(
    "packit_files,expected",
    [
        (
            SyncFilesConfig(
                files_to_sync=[SyncFilesItem(src="a.md", dest="a.md")]),
            [RawSyncFilesItem(Path("a.md"), Path("a.md"), False)],
        ),
        (
            SyncFilesConfig(files_to_sync=[
                SyncFilesItem(src="a.md", dest="a.md"),
                SyncFilesItem(src="b.md", dest="b.md"),
                SyncFilesItem(src="c.txt", dest="c.txt"),
            ]),
            [
                RawSyncFilesItem(Path("a.md"), Path("a.md"), False),
                RawSyncFilesItem(Path("b.md"), Path("b.md"), False),
                RawSyncFilesItem(Path("c.txt"), Path("c.txt"), False),
            ],
        ),
        (