aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorArthur Zamarin <arthurzam@gentoo.org>2022-08-26 12:56:02 +0300
committerArthur Zamarin <arthurzam@gentoo.org>2022-08-26 12:56:02 +0300
commit0de91a6ec76070f8ec69722f45eb454367cc04e8 (patch)
treea0295afa5cf1cddb403062f1e90121272be9260e /tests
parentbash completion: add for pquery (diff)
downloadpkgcore-0de91a6ec76070f8ec69722f45eb454367cc04e8.tar.gz
pkgcore-0de91a6ec76070f8ec69722f45eb454367cc04e8.tar.bz2
pkgcore-0de91a6ec76070f8ec69722f45eb454367cc04e8.zip
scripts/test_*.py: modernize tests to pytest
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
Diffstat (limited to 'tests')
-rw-r--r--tests/scripts/test_pclean.py3
-rw-r--r--tests/scripts/test_pclonecache.py3
-rw-r--r--tests/scripts/test_pconfig.py13
-rw-r--r--tests/scripts/test_pebuild.py13
-rw-r--r--tests/scripts/test_pmaint.py121
-rw-r--r--tests/scripts/test_pplugincache.py5
-rw-r--r--tests/scripts/test_pquery.py33
7 files changed, 82 insertions, 109 deletions
diff --git a/tests/scripts/test_pclean.py b/tests/scripts/test_pclean.py
index 800ce10d..4dfe942a 100644
--- a/tests/scripts/test_pclean.py
+++ b/tests/scripts/test_pclean.py
@@ -1,9 +1,8 @@
from pkgcore.scripts import pclean
from pkgcore.test.scripts.helpers import ArgParseMixin
-from snakeoil.test import TestCase
-class CommandlineTest(TestCase, ArgParseMixin):
+class TestCommandline(ArgParseMixin):
_argparser = pclean.argparser
diff --git a/tests/scripts/test_pclonecache.py b/tests/scripts/test_pclonecache.py
index a0eb126a..fb472223 100644
--- a/tests/scripts/test_pclonecache.py
+++ b/tests/scripts/test_pclonecache.py
@@ -2,7 +2,6 @@ from pkgcore.config import basics
from pkgcore.config.hint import ConfigHint
from pkgcore.scripts import pclonecache
from pkgcore.test.scripts.helpers import ArgParseMixin
-from snakeoil.test import TestCase
class Cache:
@@ -13,7 +12,7 @@ class Cache:
self.readonly = self.frozen = readonly
-class CommandlineTest(TestCase, ArgParseMixin):
+class TestCommandline(ArgParseMixin):
_argparser = pclonecache.argparser
diff --git a/tests/scripts/test_pconfig.py b/tests/scripts/test_pconfig.py
index 3e90cf30..7b3a1586 100644
--- a/tests/scripts/test_pconfig.py
+++ b/tests/scripts/test_pconfig.py
@@ -1,11 +1,8 @@
-import sys
-
import pytest
from pkgcore.config import basics, errors
from pkgcore.config.hint import configurable
from pkgcore.scripts import pconfig
from pkgcore.test.scripts.helpers import ArgParseMixin
-from snakeoil.test import TestCase
@configurable({'reff': 'ref:spork'})
@@ -83,7 +80,7 @@ class DescribeClassTest(ArgParseMixin):
'tests.scripts.test_pconfig.broken_type')
-class ClassesTest(TestCase, ArgParseMixin):
+class TestClasses(ArgParseMixin):
_argparser = pconfig.classes
@@ -125,7 +122,7 @@ class ClassesTest(TestCase, ArgParseMixin):
'class': pseudospork})}))
-class DumpTest(TestCase, ArgParseMixin):
+class TestDump(ArgParseMixin):
_argparser = pconfig.dump
@@ -226,7 +223,7 @@ class DumpTest(TestCase, ArgParseMixin):
)
-class UncollapsableTest(TestCase, ArgParseMixin):
+class TestUncollapsable(ArgParseMixin):
_argparser = pconfig.uncollapsable
@@ -249,7 +246,7 @@ class UncollapsableTest(TestCase, ArgParseMixin):
)
-class ConfigurablesTest(TestCase, ArgParseMixin):
+class TestConfigurables(ArgParseMixin):
_argparser = pconfig.configurables
@@ -277,7 +274,7 @@ class WeirdSection(basics.ConfigSection):
None, None]
-class DumpUncollapsedTest(TestCase, ArgParseMixin):
+class TestDumpUncollapsed(ArgParseMixin):
_argparser = pconfig.dump_uncollapsed
diff --git a/tests/scripts/test_pebuild.py b/tests/scripts/test_pebuild.py
index 15602659..ff84440a 100644
--- a/tests/scripts/test_pebuild.py
+++ b/tests/scripts/test_pebuild.py
@@ -3,7 +3,6 @@ from pkgcore.config.hint import ConfigHint, configurable
from pkgcore.scripts import pebuild
from pkgcore.test.misc import FakePkg, FakeRepo
from pkgcore.test.scripts.helpers import ArgParseMixin
-from snakeoil.test import TestCase
class FakeDomain:
@@ -29,13 +28,13 @@ def fake_repo():
domain_config = basics.HardCodedConfigSection({
- 'class': FakeDomain,
- 'repo': basics.HardCodedConfigSection({'class': fake_repo}),
- 'default': True,
- })
+ 'class': FakeDomain,
+ 'repo': basics.HardCodedConfigSection({'class': fake_repo}),
+ 'default': True,
+})
-class CommandlineTest(TestCase, ArgParseMixin):
+class TestCommandline(ArgParseMixin):
_argparser = pebuild.argparser
@@ -45,4 +44,4 @@ class CommandlineTest(TestCase, ArgParseMixin):
# working initialization
config = self.parse('sys-apps/coreutils', 'bar', 'baz', domain=domain_config)
- self.assertEqual(config.phase, ['bar', 'baz'])
+ assert config.phase == ['bar', 'baz']
diff --git a/tests/scripts/test_pmaint.py b/tests/scripts/test_pmaint.py
index 77d65b3b..43814cae 100644
--- a/tests/scripts/test_pmaint.py
+++ b/tests/scripts/test_pmaint.py
@@ -2,7 +2,7 @@ from functools import partial
from io import BytesIO
from pkgcore.config import basics
-from pkgcore.config.hint import ConfigHint, configurable
+from pkgcore.config.hint import ConfigHint
from pkgcore.ebuild.cpv import CPV
from pkgcore.operations.repo import install, operations, replace, uninstall
from pkgcore.repository import syncable, util
@@ -11,7 +11,6 @@ from pkgcore.sync import base
from pkgcore.test.scripts.helpers import ArgParseMixin
from snakeoil.formatters import PlainTextFormatter
from snakeoil.mappings import AttrAccessible
-from snakeoil.test import TestCase
Options = AttrAccessible
@@ -32,7 +31,7 @@ class fake_operations(operations):
replace, self.repo, oldpkg, newpkg, observer)
-class fake_repo(util.SimpleTree):
+class FakeRepo(util.SimpleTree):
operations_kls = fake_operations
@@ -40,15 +39,14 @@ class fake_repo(util.SimpleTree):
self.installed = []
self.replaced = []
self.uninstalled = []
- util.SimpleTree.__init__(
- self, data, pkg_klass=partial(fake_pkg, self), repo_id=repo_id)
+ super().__init__(data, pkg_klass=partial(fake_pkg, self), repo_id=repo_id)
self.livefs = livefs
self.frozen = frozen
def make_repo_config(repo_data, livefs=False, frozen=False, repo_id=None):
def repo():
- return fake_repo(repo_data, livefs=livefs, frozen=frozen, repo_id=repo_id)
+ return FakeRepo(repo_data, livefs=livefs, frozen=frozen, repo_id=repo_id)
repo.pkgcore_config_type = ConfigHint(typename='repo')
return basics.HardCodedConfigSection({'class':repo})
@@ -61,7 +59,7 @@ class FakeDomain:
typename='domain')
def __init__(self, repos, binpkg, vdb):
- object.__init__(self)
+ super().__init__()
self.repos = repos
self.source_repos_raw = util.RepositoryGroup(repos)
self.installed_repos = util.RepositoryGroup(vdb)
@@ -86,7 +84,7 @@ def make_domain(repo=None, binpkg=None, vdb=None):
'binpkg': [binpkg_config],
'vdb': [vdb_config],
'default': True,
- })
+ })
class FakeSyncer(base.Syncer):
@@ -117,43 +115,36 @@ failure_section = basics.HardCodedConfigSection({'class': SyncableRepo,
'succeed': False})
-class TestSync(TestCase, ArgParseMixin):
+class TestSync(ArgParseMixin):
_argparser = pmaint.sync
def test_parser(self):
values = self.parse(repo=success_section)
- self.assertEqual(['repo'], [x[0] for x in values.repos])
+ assert ['repo'] == [x[0] for x in values.repos]
values = self.parse('repo', repo=success_section)
- self.assertEqual(['repo'], [x[0] for x in values.repos])
+ assert ['repo'] == [x[0] for x in values.repos]
def test_sync(self):
- config = self.assertOut(
- [
- "*** syncing myrepo",
- "*** synced myrepo",
- ],
- myrepo=success_section)
- self.assertTrue(config.repo_config['myrepo']._syncer.synced)
- self.assertOut(
- [
- "*** syncing myrepo",
- "!!! failed syncing myrepo",
- ],
- myrepo=failure_section)
- self.assertOutAndErr(
- [
- "*** syncing goodrepo",
- "*** synced goodrepo",
- "*** syncing badrepo",
- "!!! failed syncing badrepo",
- "",
- "*** sync results:",
- "*** synced: goodrepo",
- "!!! failed: badrepo",
- ], [],
- 'goodrepo', 'badrepo',
- goodrepo=success_section, badrepo=failure_section)
+ config = self.assertOut([
+ "*** syncing myrepo",
+ "*** synced myrepo",
+ ], myrepo=success_section)
+ assert config.repo_config['myrepo']._syncer.synced
+ self.assertOut([
+ "*** syncing myrepo",
+ "!!! failed syncing myrepo",
+ ], myrepo=failure_section)
+ self.assertOutAndErr([
+ "*** syncing goodrepo",
+ "*** synced goodrepo",
+ "*** syncing badrepo",
+ "!!! failed syncing badrepo",
+ "",
+ "*** sync results:",
+ "*** synced: goodrepo",
+ "!!! failed: badrepo",
+ ], [], 'goodrepo', 'badrepo', goodrepo=success_section, badrepo=failure_section)
class fake_pkg(CPV):
@@ -176,7 +167,7 @@ def derive_op(name, op, *a, **kw):
return new_op(*a, **kw)
-class TestCopy(TestCase, ArgParseMixin):
+class TestCopy(ArgParseMixin):
_argparser = pmaint.copy
@@ -191,39 +182,33 @@ class TestCopy(TestCase, ArgParseMixin):
'fake_binpkg', '--source-repo', 'fake_vdb',
'*',
domain=make_domain(vdb={'sys-apps':{'portage':['2.1', '2.3']}}),
- )
- self.assertEqual(ret, 0, "expected non zero exit code")
- self.assertEqual(list(map(str, config.target_repo.installed)),
- ['sys-apps/portage-2.1', 'sys-apps/portage-2.3'])
- self.assertEqual(config.target_repo.uninstalled,
- config.target_repo.replaced,
- msg="uninstalled should be the same as replaced; empty")
+ )
+ assert ret == 0, "expected non zero exit code"
+ assert list(map(str, config.target_repo.installed)) == ['sys-apps/portage-2.1', 'sys-apps/portage-2.3']
+ assert config.target_repo.uninstalled == config.target_repo.replaced, \
+ "uninstalled should be the same as replaced; empty"
d = {'sys-apps':{'portage':['2.1', '2.2']}}
ret, config, out = self.execute_main(
'fake_binpkg', '--source-repo', 'fake_vdb',
'=sys-apps/portage-2.1',
domain=make_domain(binpkg=d, vdb=d),
- )
- self.assertEqual(ret, 0, "expected non zero exit code")
- self.assertEqual([list(map(str, x)) for x in config.target_repo.replaced],
- [['sys-apps/portage-2.1', 'sys-apps/portage-2.1']])
- self.assertEqual(config.target_repo.uninstalled,
- config.target_repo.installed,
- msg="installed should be the same as uninstalled; empty")
+ )
+ assert ret == 0, "expected non zero exit code"
+ assert [list(map(str, x)) for x in config.target_repo.replaced] == [['sys-apps/portage-2.1', 'sys-apps/portage-2.1']]
+ assert config.target_repo.uninstalled == config.target_repo.installed, \
+ "installed should be the same as uninstalled; empty"
def test_ignore_existing(self):
ret, config, out = self.execute_main(
'fake_binpkg', '--source-repo', 'fake_vdb',
'*', '--ignore-existing',
domain=make_domain(vdb={'sys-apps':{'portage':['2.1', '2.3']}}),
- )
- self.assertEqual(ret, 0, "expected non zero exit code")
- self.assertEqual(list(map(str, config.target_repo.installed)),
- ['sys-apps/portage-2.1', 'sys-apps/portage-2.3'])
- self.assertEqual(config.target_repo.uninstalled,
- config.target_repo.replaced,
- msg="uninstalled should be the same as replaced; empty")
+ )
+ assert ret == 0, "expected non zero exit code"
+ assert list(map(str, config.target_repo.installed)) == ['sys-apps/portage-2.1', 'sys-apps/portage-2.3']
+ assert config.target_repo.uninstalled == config.target_repo.replaced, \
+ "uninstalled should be the same as replaced; empty"
ret, config, out = self.execute_main(
'fake_binpkg', '--source-repo', 'fake_vdb',
@@ -231,16 +216,14 @@ class TestCopy(TestCase, ArgParseMixin):
domain=make_domain(
binpkg={'sys-apps':{'portage':['2.1']}},
vdb={'sys-apps':{'portage':['2.1', '2.3']}}),
- )
- self.assertEqual(ret, 0, "expected non zero exit code")
- self.assertEqual(list(map(str, config.target_repo.installed)),
- ['sys-apps/portage-2.3'])
- self.assertEqual(config.target_repo.uninstalled,
- config.target_repo.replaced,
- msg="uninstalled should be the same as replaced; empty")
+ )
+ assert ret == 0, "expected non zero exit code"
+ assert list(map(str, config.target_repo.installed)) == ['sys-apps/portage-2.3']
+ assert config.target_repo.uninstalled == config.target_repo.replaced, \
+ "uninstalled should be the same as replaced; empty"
-class TestRegen(TestCase, ArgParseMixin):
+class TestRegen(ArgParseMixin):
_argparser = pmaint.regen
@@ -248,5 +231,5 @@ class TestRegen(TestCase, ArgParseMixin):
options = self.parse(
'fake', '--threads', '2', domain=make_domain())
- self.assertTrue(isinstance(options.repos[0], util.SimpleTree))
- self.assertEqual(options.threads, 2)
+ assert isinstance(options.repos[0], util.SimpleTree)
+ assert options.threads == 2
diff --git a/tests/scripts/test_pplugincache.py b/tests/scripts/test_pplugincache.py
index cd37e8d9..15f8b2c9 100644
--- a/tests/scripts/test_pplugincache.py
+++ b/tests/scripts/test_pplugincache.py
@@ -1,14 +1,13 @@
from pkgcore import plugins
from pkgcore.scripts import pplugincache
from pkgcore.test.scripts.helpers import ArgParseMixin
-from snakeoil.test import TestCase
-class CommandlineTest(TestCase, ArgParseMixin):
+class TestCommandline(ArgParseMixin):
_argparser = pplugincache.argparser
has_config = False
def test_parser(self):
- self.assertEqual([plugins], self.parse().packages)
+ assert self.parse().packages == [plugins]
diff --git a/tests/scripts/test_pquery.py b/tests/scripts/test_pquery.py
index 90e51ddb..84b185ef 100644
--- a/tests/scripts/test_pquery.py
+++ b/tests/scripts/test_pquery.py
@@ -4,7 +4,6 @@ from pkgcore.ebuild import atom
from pkgcore.repository import util
from pkgcore.scripts import pquery
from pkgcore.test.scripts.helpers import ArgParseMixin
-from snakeoil.test import TestCase
class FakeDomain:
@@ -30,14 +29,14 @@ def fake_vdb():
domain_config = basics.HardCodedConfigSection({
- 'class': FakeDomain,
- 'repos': [basics.HardCodedConfigSection({'class': fake_repo})],
- 'vdb': [basics.HardCodedConfigSection({'class': fake_vdb})],
- 'default': True,
- })
+ 'class': FakeDomain,
+ 'repos': [basics.HardCodedConfigSection({'class': fake_repo})],
+ 'vdb': [basics.HardCodedConfigSection({'class': fake_vdb})],
+ 'default': True,
+})
-class CommandlineTest(TestCase, ArgParseMixin):
+class TestCommandline(ArgParseMixin):
_argparser = pquery.argparser
@@ -54,21 +53,19 @@ class CommandlineTest(TestCase, ArgParseMixin):
'--all')
def test_no_description(self):
- self.assertOut(
- [' * spork/foon-2',
- ' repo: MISSING',
- ' description: MISSING',
- ' homepage: MISSING',
- ' license: MISSING',
- '',
- ],
- '-v', '--max', '--all',
- test_domain=domain_config)
+ self.assertOut([
+ ' * spork/foon-2',
+ ' repo: MISSING',
+ ' description: MISSING',
+ ' homepage: MISSING',
+ ' license: MISSING',
+ '',
+ ], '-v', '--max', '--all', test_domain=domain_config)
def test_atom(self):
config = self.parse(
'--print-revdep', 'a/spork', '--all', domain=domain_config)
- self.assertEqual([atom.atom('a/spork')], config.print_revdep)
+ assert config.print_revdep == [atom.atom('a/spork')]
def test_no_contents(self):
self.assertOut([], '--contents', '--all', test_domain=domain_config)