Example #1
0
    def test_op(self):
        # This basically just tests string methods
        self.formatter.format(
            FakeOp(FakeEbuildSrc('dev-util/diffball-1.2'),
                   FakeMutatedPkg('dev-util/diffball-1.1')))
        self.assertOut("replace dev-util/diffball-1.1, "
                       "dev-util/diffball-1.2")

        self.formatter.format(FakeOp(FakeEbuildSrc('dev-util/diffball-1.0')))
        self.assertOut("add     dev-util/diffball-1.0")

        self.formatter.format(
            FakeOp(
                FakeEbuildSrc('dev-util/diffball-1.0',
                              repo=FakeRepo(
                                  repo_id='gentoo',
                                  location='/var/gentoo/repos/gentoo'))))
        self.assertOut("add     dev-util/diffball-1.0::gentoo")

        self.formatter.format(
            FakeOp(
                FakeEbuildSrc('dev-util/diffball-1.2',
                              repo=FakeRepo(
                                  repo_id='gentoo',
                                  location='/var/gentoo/repos/gentoo')),
                FakeMutatedPkg('dev-util/diffball-1.1')))
        self.assertOut("replace dev-util/diffball-1.1, "
                       "dev-util/diffball-1.2::gentoo")
Example #2
0
 def setUp(self):
     pkg = FakeMutatedPkg('app-arch/bzip2-1.0.1-r1', slot='0')
     masked_atom = atom('>=app-arch/bzip2-2.0')
     self.repo1 = FakeRepo(repo_id='gentoo', location='/var/gentoo/repos/gentoo', masks=(masked_atom,))
     self.repo2 = FakeRepo(repo_id='repo2', location='/var/gentoo/repos/repo2')
     self.livefs = FakeRepo(repo_id='vdb', pkgs=[pkg])
     BaseFormatterTest.setUp(self)
Example #3
0
 def setUp(self):
     pkg = FakeMutatedPkg('app-arch/bzip2-1.0.1-r1', slot='0')
     masked_atom = atom('>=app-arch/bzip2-2.0')
     self.domain_settings = {"ACCEPT_KEYWORDS": ("amd64", )}
     self.repo1 = FakeRepo(repo_id='gentoo',
                           location='/var/gentoo/repos/gentoo',
                           masks=(masked_atom, ),
                           domain_settings=self.domain_settings)
     self.repo2 = FakeRepo(repo_id='repo2',
                           location='/var/gentoo/repos/repo2',
                           domain_settings=self.domain_settings)
     self.vdb = FakeRepo(repo_id='vdb', pkgs=[pkg])
     BaseFormatterTest.setUp(self)
Example #4
0
 def test_install_repo(self):
     self.formatter.format(
         FakeOp(
             FakeEbuildSrc('dev-util/diffball-1.0',
                           repo=FakeRepo(
                               repo_id='gentoo',
                               location='/var/gentoo/repos/gentoo'))))
     self.assertOut("add     dev-util/diffball-1.0::gentoo")
Example #5
0
 def test_reinstall_repo(self):
     self.formatter.format(
         FakeOp(FakeEbuildSrc('dev-util/diffball-1.2',
                repo=FakeRepo(repo_id='gentoo', location='/var/gentoo/repos/gentoo')),
             FakeMutatedPkg('dev-util/diffball-1.1')))
     self.assertOut(
         "replace dev-util/diffball-1.1, "
         "dev-util/diffball-1.2::gentoo")
Example #6
0
 def test_collision_slotted(self):
     pkgs = [
         FakePkg('foo/bar-1.0.1', slot='0'),
         FakePkg('foo/bar-2.0.2', slot='2'),
         FakePkg('foon/bar-3.4.5', slot='0'),
     ]
     installed_pkgs = [
         FakePkg('foo/bar-1.0.0', slot='0'),
         FakePkg('foo/bar-2.0.1', slot='2'),
     ]
     installed_repos = FakeRepo(pkgs=installed_pkgs)
     repo = FakeRepo(pkgs=pkgs)
     a = pmerge.parse_target(parse_match("bar:0"), repo, installed_repos)
     assert len(a) == 1
     assert a[0].key == 'foo/bar'
     assert a[0].match(atom('foo/bar:0'))
     assert not a[0].match(atom('foo/bar:2'))
Example #7
0
 def mk_check(self, licenses=(), **kwargs):
     self.repo = FakeRepo(repo_id='test', licenses=licenses)
     options = self.get_options(**kwargs)
     profiles = [misc.FakeProfile()]
     iuse_handler = addons.UseAddon(options,
                                    profiles,
                                    silence_warnings=True)
     check = self.check_kls(options, iuse_handler, {})
     return check
Example #8
0
def fake_repo():
    pkgs = [
        FakePkg('app-arch/bzip2-1.0.1-r1', slot='0'),
        FakePkg('app-arch/bzip2-1.0.5-r2', slot='0'),
        FakePkg('sys-apps/coreutils-8.25', slot='0'),
        FakePkg('x11-libs/gtk+-2.24', slot='2'),
        FakePkg('x11-libs/gtk+-3.22', slot='3'),
    ]
    repo = FakeRepo(repo_id='gentoo', pkgs=pkgs)
    return repo
Example #9
0
 def test_repo_id(self):
     astr = "dev-util/bsdiff"
     c = FakePkg("%s-1" % astr, repo=FakeRepo(repo_id="gentoo-x86A_"), slot="0")
     self.assertMatch(self.kls("%s" % astr), c)
     self.assertMatch(self.kls("%s::gentoo-x86A_" % astr), c)
     self.assertMatch(self.kls("%s:0::gentoo-x86A_" % astr), c)
     self.assertNotMatch(self.kls("%s::gentoo2" % astr), c)
     self.assertRaises(errors.MalformedAtom, self.kls, "dev-util/foon:1:")
     self.assertRaises(errors.MalformedAtom, self.kls, "dev-util/foon::")
     self.assertRaises(errors.MalformedAtom, self.kls, "dev-util/foon::-gentoo-x86")
     self.assertRaises(errors.MalformedAtom, self.kls, "dev-util/foon:::")
     for x in xrange(0, 3):
         self.assertRaises(errors.MalformedAtom, self.kls,
             "dev-util/foon::gentoo-x86", eapi=x)
Example #10
0
 def test_repo_id(self):
     astr = "dev-util/bsdiff"
     c = FakePkg(f"{astr}-1", repo=FakeRepo(repo_id="gentoo-x86A_"), slot="0")
     self.assertMatch(self.kls(f"{astr}"), c)
     self.assertMatch(self.kls(f"{astr}::gentoo-x86A_"), c)
     self.assertMatch(self.kls(f"{astr}:0::gentoo-x86A_"), c)
     self.assertNotMatch(self.kls(f"{astr}::gentoo2"), c)
     self.assertRaises(errors.MalformedAtom, self.kls, "dev-util/foon:1:")
     self.assertRaises(errors.MalformedAtom, self.kls, "dev-util/foon::")
     self.assertRaises(errors.MalformedAtom, self.kls, "dev-util/foon::-gentoo-x86")
     self.assertRaises(errors.MalformedAtom, self.kls, "dev-util/foon:::")
     for x in range(0, 3):
         self.assertRaises(errors.MalformedAtom, self.kls,
             "dev-util/foon::gentoo-x86", eapi=str(x))
Example #11
0
    def mk_pkg(self, files={}, pkg=None):
        if pkg is None:
            # generate random cat/PN
            category = uuid.uuid4().hex
            PN = uuid.uuid4().hex
        else:
            category, PN = pkg.split(os.path.sep)

        pkg = f"{category}/{PN}-0.7.1"
        repo = FakeRepo(repo_id='repo', location=self.dir)
        self.filesdir = pjoin(repo.location, category, PN, 'files')
        os.makedirs(self.filesdir)

        # create specified files in FILESDIR
        for fn, contents in files.items():
            fileutils.write_file(pjoin(self.filesdir, fn), 'w', contents)

        return misc.FakeFilesDirPkg(pkg, repo=repo)
Example #12
0
 def setUp(self):
     TestPortageVerboseFormatter.setUp(self)
     self.repo3 = FakeRepo(location='/var/gentoo/repos/repo3')
Example #13
0
 def _create_repo(self, tmpdir):
     self.repo = FakeRepo(repo_id='repo', location=str(tmpdir))
Example #14
0
 def setUp(self):
     BaseFormatterTest.setUp(self)
     self.repo = FakeRepo(repo_id='gentoo',
                          location='/var/gentoo/repos/gentoo')
Example #15
0
 def test_combined(self):
     p = FakePkg('dev-util/diffball-0.7', repo=FakeRepo(repo_id='gentoo'))
     self.assertMatch(self.kls('=dev-util/diffball-0.7::gentoo'), p)
     self.assertMatch(self.kls('dev-util/diffball::gentoo'), p)
     self.assertNotMatch(self.kls('=dev-util/diffball-0.7:1::gentoo'),
         FakePkg('dev-util/diffball-0.7', slot='2'))
Example #16
0
 def setUp(self):
     BaseFormatterTest.setUp(self)
     self.repo = FakeRepo(repo_id='gentoo', location='/usr/portage')
Example #17
0
 def mk_check(self, pkgs):
     self.repo = FakeRepo(pkgs=pkgs, repo_id='test')
     check = self.check_kls(misc.Options(target_repo=self.repo))
     return check
Example #18
0
 def setUp(self):
     TestPortageVerboseFormatter.setUp(self)
     self.repo3 = FakeRepo(location='/usr/local/portage')
Example #19
0
 def mk_check(self):
     self.repo = FakeRepo(repo_id='repo', location=self.dir)
     options = misc.Options(target_repo=self.repo, cache={'git': False})
     git_addon = git.GitAddon(options)
     return repo.RepoDirCheck(options, git_addon=git_addon)