commit: 2548dd9a941955301df1debd54305c1724021f25
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 1 06:58:10 2025 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sun Jun 1 06:58:10 2025 +0000
URL:
https://gitweb.gentoo.org/proj/pkgcore/pkgcore.git/commit/?id=2548dd9a
format using ruff
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
src/pkgcore/binpkg/repository.py | 3 +--
src/pkgcore/ebuild/atom.py | 6 ++----
src/pkgcore/ebuild/domain.py | 2 +-
src/pkgcore/ebuild/ebd.py | 2 +-
src/pkgcore/ebuild/ebd_ipc.py | 3 +--
src/pkgcore/ebuild/eclass.py | 6 +++---
src/pkgcore/ebuild/errors.py | 2 +-
src/pkgcore/ebuild/triggers.py | 2 +-
src/pkgcore/fs/fs.py | 4 +---
src/pkgcore/plugin.py | 2 +-
src/pkgcore/pytest/plugin.py | 2 +-
src/pkgcore/repository/errors.py | 3 +--
src/pkgcore/resolver/plan.py | 4 ++--
src/pkgcore/restrictions/boolean.py | 4 ++--
src/pkgcore/restrictions/packages.py | 4 ++--
src/pkgcore/restrictions/required_use.py | 7 ++++---
src/pkgcore/scripts/pebuild.py | 3 +--
src/pkgcore/scripts/pmaint.py | 5 ++---
src/pkgcore/scripts/pmerge.py | 2 +-
src/pkgcore/scripts/pquery.py | 2 +-
src/pkgcore/util/commandline.py | 3 +--
tests/config/test_central.py | 27 ++++++++++++------------
tests/config/test_init.py | 4 ++--
tests/ebuild/test_atom.py | 36 ++++++++++++++++----------------
tests/ebuild/test_conditionals.py | 6 +++---
tests/ebuild/test_ebuild_src.py | 12 +++++------
tests/ebuild/test_eclass.py | 7 +------
tests/ebuild/test_formatter.py | 18 +++++++---------
tests/ebuild/test_profiles.py | 13 ++++++------
tests/ebuild/test_repository.py | 4 ++--
tests/fs/test_contents.py | 6 +++---
tests/merge/test_triggers.py | 12 +++++------
tests/pkgsets/test_glsa.py | 12 +++++------
tests/repository/test_filtered.py | 4 +++-
tests/restrictions/test_delegated.py | 6 +++---
tests/restrictions/utils.py | 16 +++++---------
tests/scripts/test_pconfig.py | 4 ++--
tests/scripts/test_pmaint.py | 24 ++++++++++-----------
tests/test_gpg.py | 6 +++---
tests/util/test_parserestrict.py | 24 ++++++++++-----------
40 files changed, 146 insertions(+), 166 deletions(-)
diff --git a/src/pkgcore/binpkg/repository.py b/src/pkgcore/binpkg/repository.py
index 20441408..40879955 100644
--- a/src/pkgcore/binpkg/repository.py
+++ b/src/pkgcore/binpkg/repository.py
@@ -131,8 +131,7 @@ class StackedXpakDict(DictMixin):
data = data_source(self.xpak.get("environment"), mutable=True)
if data is None:
raise KeyError(
- "environment.bz2 not found in xpak segment, "
- "malformed binpkg?"
+ "environment.bz2 not found in xpak segment, malformed
binpkg?"
)
else:
data = data_source(
diff --git a/src/pkgcore/ebuild/atom.py b/src/pkgcore/ebuild/atom.py
index 0dc046fa..8f82f4e9 100644
--- a/src/pkgcore/ebuild/atom.py
+++ b/src/pkgcore/ebuild/atom.py
@@ -341,7 +341,7 @@ class atom(boolean.AndRestriction,
metaclass=klass.generic_equality):
attrs.append(f"subslot={self.subslot!r}")
if self.repo_id is not None:
attrs.append(f"repo_id={self.repo_id!r}")
- return f'<{self.__class__.__name__} {" ".join(attrs)} @#{id(self):x}>'
+ return f"<{self.__class__.__name__} {' '.join(attrs)} @#{id(self):x}>"
def __reduce__(self):
return (atom, (str(self), self.negate_vers))
@@ -622,9 +622,7 @@ class atom(boolean.AndRestriction,
metaclass=klass.generic_equality):
other.op, other.version, other.revision
).match(ranged) and restricts.VersionMatch(
ranged.op, ranged.version, ranged.revision
- ).match(
- other
- )
+ ).match(other)
if other.op == "~":
# Other definitely matches its own version. If ranged also
diff --git a/src/pkgcore/ebuild/domain.py b/src/pkgcore/ebuild/domain.py
index 1554f424..dfead784 100644
--- a/src/pkgcore/ebuild/domain.py
+++ b/src/pkgcore/ebuild/domain.py
@@ -815,7 +815,7 @@ class domain(config_domain):
args.append(getattr(self, x))
except AttributeError as e:
raise Failure(
- f"failed configuring repo {repo!r}: " f"configurable
missing: {e}"
+ f"failed configuring repo {repo!r}: configurable missing:
{e}"
) from e
repo = repo.configure(*args)
return repo
diff --git a/src/pkgcore/ebuild/ebd.py b/src/pkgcore/ebuild/ebd.py
index 1a47ab77..34158970 100644
--- a/src/pkgcore/ebuild/ebd.py
+++ b/src/pkgcore/ebuild/ebd.py
@@ -400,7 +400,7 @@ class ebd:
)
if not ebd.expect("next"):
chuck_UnhandledCommand(
- ebd, "bashrc transfer, didn't receive 'next' response. "
"failure?"
+ ebd, "bashrc transfer, didn't receive 'next' response.
failure?"
)
ebd.write("end_request")
diff --git a/src/pkgcore/ebuild/ebd_ipc.py b/src/pkgcore/ebuild/ebd_ipc.py
index d836cc79..3da97d99 100644
--- a/src/pkgcore/ebuild/ebd_ipc.py
+++ b/src/pkgcore/ebuild/ebd_ipc.py
@@ -1105,8 +1105,7 @@ class Unpack(IpcCommand):
)
else:
raise IpcCommandError(
- "relative paths must be prefixed with "
- f"'./' in EAPI {self.eapi}"
+ f"relative paths must be prefixed with './' in EAPI
{self.eapi}"
)
path = pjoin(srcdir, archive)
diff --git a/src/pkgcore/ebuild/eclass.py b/src/pkgcore/ebuild/eclass.py
index 23e970f7..439836e4 100644
--- a/src/pkgcore/ebuild/eclass.py
+++ b/src/pkgcore/ebuild/eclass.py
@@ -72,7 +72,7 @@ class ParseEclassDoc:
self.tags = tags
# regex matching all known tags for the eclass doc block
self._block_tags_re = re.compile(
- rf'^(?P<tag>{"|".join(self.tags)})(?P<value>.*)'
+ rf"^(?P<tag>{'|'.join(self.tags)})(?P<value>.*)"
)
# regex matching @CODE tags
self._code_tag = re.compile(r"^\s*@CODE\s*$")
@@ -365,7 +365,7 @@ class EclassFuncVarBlock(ParseEclassDoc):
_eclass_blocks_re = re.compile(
- rf'^(?P<prefix>\s*#)
(?P<tag>{"|".join(ParseEclassDoc.blocks)})(?P<value>.*)'
+ rf"^(?P<prefix>\s*#)
(?P<tag>{'|'.join(ParseEclassDoc.blocks)})(?P<value>.*)"
)
@@ -624,7 +624,7 @@ class EclassDoc(AttrDict):
header = [func.name]
if func.usage:
header.append(func.usage)
- rst.append(f'**{" ".join(header)}**')
+ rst.append(f"**{' '.join(header)}**")
if func.description:
rst.append(
" " + func.description.lstrip("\n").replace("\n", "\n
")
diff --git a/src/pkgcore/ebuild/errors.py b/src/pkgcore/ebuild/errors.py
index d7923c70..56cb23be 100644
--- a/src/pkgcore/ebuild/errors.py
+++ b/src/pkgcore/ebuild/errors.py
@@ -108,7 +108,7 @@ class RequiredUseError(SanityCheckError):
f"""
Failed to match: {node}
from: {self.pkg.required_use}
- for USE: {' '.join(sorted(self.pkg.use))}
+ for USE: {" ".join(sorted(self.pkg.use))}
"""
)
)
diff --git a/src/pkgcore/ebuild/triggers.py b/src/pkgcore/ebuild/triggers.py
index 14ef725a..8b572820 100644
--- a/src/pkgcore/ebuild/triggers.py
+++ b/src/pkgcore/ebuild/triggers.py
@@ -593,7 +593,7 @@ class SFPerms(triggers.base):
if x.mode & 0o4000:
if x.mode & 0o044:
engine.observer.warn(
- "sfperms: dropping group/world read " f"due to SetGID:
{x!r}"
+ f"sfperms: dropping group/world read due to SetGID:
{x!r}"
)
resets.append(x.change_attributes(mode=x.mode & ~0o44))
if x.mode & 0o2000:
diff --git a/src/pkgcore/fs/fs.py b/src/pkgcore/fs/fs.py
index ba9fedd7..82c25b67 100644
--- a/src/pkgcore/fs/fs.py
+++ b/src/pkgcore/fs/fs.py
@@ -41,9 +41,7 @@ def gen_doc_additions(init, slots):
:param location: location (real or intended) for this entry
:param strict: is this fully representative of the entry, or only partially
:raise KeyError: if strict is enabled, and not all args are passed in
-""".split(
- "\n"
- )
+""".split("\n")
else:
d = init.__doc__.split("\n")
init.__doc__ = "\n".join(k.lstrip() for k in d) + "\n".join(
diff --git a/src/pkgcore/plugin.py b/src/pkgcore/plugin.py
index a41097c7..e565af6a 100644
--- a/src/pkgcore/plugin.py
+++ b/src/pkgcore/plugin.py
@@ -173,7 +173,7 @@ def _write_cache_file(path, data, uid=-1, gid=-1):
# Use error, not exception for this one: the traceback
# is not necessary and too alarming.
logger.error(
- "Cannot write cache for %s: %s. " "Try running pplugincache.",
path, e
+ "Cannot write cache for %s: %s. Try running pplugincache.",
path, e
)
finally:
if cachefile is not None:
diff --git a/src/pkgcore/pytest/plugin.py b/src/pkgcore/pytest/plugin.py
index d7231dd3..15b3cd75 100644
--- a/src/pkgcore/pytest/plugin.py
+++ b/src/pkgcore/pytest/plugin.py
@@ -197,7 +197,7 @@ class EbuildRepo:
f.write(
textwrap.dedent(
f"""\
- masters = {' '.join(masters)}
+ masters = {" ".join(masters)}
cache-formats =
thin-manifests = true
"""
diff --git a/src/pkgcore/repository/errors.py b/src/pkgcore/repository/errors.py
index eb336239..a00b73ce 100644
--- a/src/pkgcore/repository/errors.py
+++ b/src/pkgcore/repository/errors.py
@@ -36,6 +36,5 @@ class UnsupportedRepo(RepoError, PkgcoreUserException):
def __str__(self):
return (
- f"{self.repo.repo_id!r} repo: "
- f"unsupported repo EAPI {str(self.repo.eapi)!r}"
+ f"{self.repo.repo_id!r} repo: unsupported repo EAPI
{str(self.repo.eapi)!r}"
)
diff --git a/src/pkgcore/resolver/plan.py b/src/pkgcore/resolver/plan.py
index 90edb81f..1e78f988 100644
--- a/src/pkgcore/resolver/plan.py
+++ b/src/pkgcore/resolver/plan.py
@@ -672,7 +672,7 @@ class merge_plan:
# and was intractable because it has a hard dep on an
# unsolvable atom.
ret = (
- (False, "pruning of insoluble deps " "left no
choices"),
+ (False, "pruning of insoluble deps left no
choices"),
{},
)
else:
@@ -811,7 +811,7 @@ class merge_plan:
# XXX kill it; purpose seems... questionable.
if cur_frame.drop_cycles:
self._dprint(
- "%s level cycle: %s: " "dropping cycle for %s from
%s",
+ "%s level cycle: %s: dropping cycle for %s from
%s",
(mode, cur_frame.atom, or_node,
cur_frame.current_pkg),
"cycle",
)
diff --git a/src/pkgcore/restrictions/boolean.py
b/src/pkgcore/restrictions/boolean.py
index 53de6e9c..26ec4d90 100644
--- a/src/pkgcore/restrictions/boolean.py
+++ b/src/pkgcore/restrictions/boolean.py
@@ -410,7 +410,7 @@ class AndRestriction(base):
if self.negate:
raise NotImplementedError(
- "negation for solutions on " "AndRestriction isn't implemented
yet"
+ "negation for solutions on AndRestriction isn't implemented
yet"
)
for x in self.restrictions:
method = getattr(x, "iter_cnf_solutions", None)
@@ -429,7 +429,7 @@ class AndRestriction(base):
if self.negate:
raise NotImplementedError(
- "negation for solutions on " "AndRestriction isn't implemented
yet"
+ "negation for solutions on AndRestriction isn't implemented
yet"
)
andreqs = []
for x in self.restrictions:
diff --git a/src/pkgcore/restrictions/packages.py
b/src/pkgcore/restrictions/packages.py
index 0375f746..3b6a48cf 100644
--- a/src/pkgcore/restrictions/packages.py
+++ b/src/pkgcore/restrictions/packages.py
@@ -75,7 +75,7 @@ class PackageRestriction(restriction.base,
metaclass=generic_equality):
if isinstance(exc, AttributeError):
if not self.ignore_missing:
logger.exception(
- "failed getting attribute %s from %s, " "exception %s",
+ "failed getting attribute %s from %s, exception %s",
".".join(attr_split),
str(pkg),
str(exc),
@@ -92,7 +92,7 @@ class PackageRestriction(restriction.base,
metaclass=generic_equality):
# if it doesn't match, exception is thrown.
return False
logger.exception(
- "caught unexpected exception accessing %s from %s, " "exception
%s",
+ "caught unexpected exception accessing %s from %s, exception %s",
".".join(attr_split),
str(pkg),
str(exc),
diff --git a/src/pkgcore/restrictions/required_use.py
b/src/pkgcore/restrictions/required_use.py
index ec41c2b2..a2dee31c 100644
--- a/src/pkgcore/restrictions/required_use.py
+++ b/src/pkgcore/restrictions/required_use.py
@@ -108,9 +108,10 @@ def __to_multiple_constraint(
assert isinstance(x := restrict.restriction, values.ContainmentMatch)
for rule in restrict.payload:
for func, variables in __to_multiple_constraint(rule):
- yield __condition(x.negate, frozenset(x.vals), func),
frozenset(
- x.vals
- ).union(variables)
+ yield (
+ __condition(x.negate, frozenset(x.vals), func),
+ frozenset(x.vals).union(variables),
+ )
elif isinstance(restrict, boolean.AndRestriction):
assert not restrict.negate
for rule in restrict.restrictions:
diff --git a/src/pkgcore/scripts/pebuild.py b/src/pkgcore/scripts/pebuild.py
index 0a3ce64b..6ef8c169 100644
--- a/src/pkgcore/scripts/pebuild.py
+++ b/src/pkgcore/scripts/pebuild.py
@@ -23,8 +23,7 @@ phase_opts.add_argument(
"--no-auto",
action="store_true",
default=False,
- help="run just the specified phases; "
- "it's up to the invoker to get the order right",
+ help="run just the specified phases; it's up to the invoker to get the
order right",
)
diff --git a/src/pkgcore/scripts/pmaint.py b/src/pkgcore/scripts/pmaint.py
index c148454a..e4c3fc84 100644
--- a/src/pkgcore/scripts/pmaint.py
+++ b/src/pkgcore/scripts/pmaint.py
@@ -148,7 +148,7 @@ commandline.make_query(
copy,
nargs="+",
dest="query",
- help="packages matching any of these restrictions will be selected " "for
copying",
+ help="packages matching any of these restrictions will be selected for
copying",
)
copy_opts = copy.add_argument_group("subcommand options")
copy_opts.add_argument(
@@ -201,8 +201,7 @@ def copy_main(options, out, err):
)
except OSError as oe:
err.write(
- f"failed accessing fs obj {fsobj!r}; {oe}\n"
- "aborting this copy"
+ f"failed accessing fs obj {fsobj!r}; {oe}\naborting
this copy"
)
failures = True
new_contents = None
diff --git a/src/pkgcore/scripts/pmerge.py b/src/pkgcore/scripts/pmerge.py
index 7949f5b0..11755549 100644
--- a/src/pkgcore/scripts/pmerge.py
+++ b/src/pkgcore/scripts/pmerge.py
@@ -792,7 +792,7 @@ def main(options, out, err):
if not options.oneshot:
if world_set is None:
argparser.error(
- "disable world updating via --oneshot, " "or fix your
configuration"
+ "disable world updating via --oneshot, or fix your
configuration"
)
try:
unmerge(
diff --git a/src/pkgcore/scripts/pquery.py b/src/pkgcore/scripts/pquery.py
index ff04a95c..0d647c17 100644
--- a/src/pkgcore/scripts/pquery.py
+++ b/src/pkgcore/scripts/pquery.py
@@ -1150,7 +1150,7 @@ output.add_argument(
Print the given attribute's value. This option can be specified
multiple times.
- Valid attributes: {', '.join(f'``{x}``' for x in printable_attrs)}
+ Valid attributes: {", ".join(f"``{x}``" for x in printable_attrs)}
""",
)
output.add_argument(
diff --git a/src/pkgcore/util/commandline.py b/src/pkgcore/util/commandline.py
index b6878d26..700b2539 100644
--- a/src/pkgcore/util/commandline.py
+++ b/src/pkgcore/util/commandline.py
@@ -417,8 +417,7 @@ class BooleanQuery(arghparse.DelayedValue):
if converter is not None and not callable(converter):
raise ValueError(
- "converter either needs to be None, or a callable;"
- f" got {converter!r}"
+ f"converter either needs to be None, or a callable; got
{converter!r}"
)
self.converter = converter
diff --git a/tests/config/test_central.py b/tests/config/test_central.py
index c7572f56..300a5dd6 100644
--- a/tests/config/test_central.py
+++ b/tests/config/test_central.py
@@ -46,9 +46,9 @@ def check_error(message, func, *args, **kwargs):
try:
func(*args, **kwargs)
except klass as exc:
- assert message == _str_exc(
- exc
- ), f"\nGot:\n{_str_exc(exc)!r}\nExpected:\n{message!r}\n"
+ assert message == _str_exc(exc), (
+ f"\nGot:\n{_str_exc(exc)!r}\nExpected:\n{message!r}\n"
+ )
else:
pytest.fail("no exception raised")
@@ -83,7 +83,7 @@ def test_contains():
def test_no_class():
manager = central.ConfigManager([{"foo":
basics.HardCodedConfigSection({})}])
check_error(
- "Collapsing section named 'foo':\n" "no class specified",
+ "Collapsing section named 'foo':\nno class specified",
manager.collapse_named_section,
"foo",
)
@@ -113,7 +113,7 @@ def test_unknown_type():
[{"spork": basics.HardCodedConfigSection({"class": drawer, "foon":
None})}]
)
check_error(
- "Collapsing section named 'spork':\n" "Type of 'foon' unknown",
+ "Collapsing section named 'spork':\nType of 'foon' unknown",
manager.collapse_named_section,
"spork",
)
@@ -134,8 +134,7 @@ def test_missing_inherit_target():
[RemoteSource()],
)
check_error(
- "Collapsing section named 'myrepo':\n"
- "Inherit target 'baserepo' cannot be found",
+ "Collapsing section named 'myrepo':\nInherit target 'baserepo' cannot
be found",
get_config_obj,
manager,
"repo",
@@ -162,7 +161,7 @@ def test_inherit_unknown_type():
]
)
check_error(
- "Collapsing section named 'actual repo':\n" "Type of 'cache' unknown",
+ "Collapsing section named 'actual repo':\nType of 'cache' unknown",
get_config_obj,
manager,
"repo",
@@ -356,9 +355,9 @@ def test_reload():
manager.reload()
newspork = manager.collapse_named_section("spork")
assert collapsedspork is not newspork
- assert (
- "modded" == newspork.instantiate()
- ), "it did not throw away the cached instance"
+ assert "modded" == newspork.instantiate(), (
+ "it did not throw away the cached instance"
+ )
assert types is not manager.types
@@ -559,7 +558,7 @@ def test_recursive_inherit():
]
)
check_error(
- "Collapsing section named 'spork':\n" "Inherit 'spork' is recursive",
+ "Collapsing section named 'spork':\nInherit 'spork' is recursive",
get_config_obj,
manager,
"drawer",
@@ -918,7 +917,7 @@ def test_inherit_only():
[RemoteSource()],
)
check_error(
- "Collapsing section named 'source':\n" "cannot collapse inherit-only
section",
+ "Collapsing section named 'source':\ncannot collapse inherit-only
section",
manager.collapse_named_section,
"source",
)
@@ -938,7 +937,7 @@ def test_self_inherit():
[RemoteSource()],
)
check_error(
- "Collapsing section named 'self':\n" "Self-inherit 'self' cannot be
found",
+ "Collapsing section named 'self':\nSelf-inherit 'self' cannot be
found",
get_config_obj,
manager,
"drawer",
diff --git a/tests/config/test_init.py b/tests/config/test_init.py
index c3cfbac8..99231d07 100644
--- a/tests/config/test_init.py
+++ b/tests/config/test_init.py
@@ -15,13 +15,13 @@ class TestConfigLoading:
@pytest.fixture
def user_config(self, tmp_path):
user_config = tmp_path / "user.conf"
- user_config.write_text("[foo]\n" "class =
tests.config.test_init.passthrough\n")
+ user_config.write_text("[foo]\nclass =
tests.config.test_init.passthrough\n")
return str(user_config)
@pytest.fixture
def system_config(self, tmp_path):
system_config = tmp_path / "system.conf"
- system_config.write_text("[foo]\n" "class = also invalid\n")
+ system_config.write_text("[foo]\nclass = also invalid\n")
return str(system_config)
def test_load_config(self, user_config):
diff --git a/tests/ebuild/test_atom.py b/tests/ebuild/test_atom.py
index 3fa193ae..cc953899 100644
--- a/tests/ebuild/test_atom.py
+++ b/tests/ebuild/test_atom.py
@@ -540,12 +540,12 @@ class TestAtom(TestRestriction):
def test_intersects(self, this, that, result):
this_atom = self.kls(this)
that_atom = self.kls(that)
- assert result == this_atom.intersects(
- that_atom
- ), f"{this} intersecting {that} should be {result}"
- assert result == that_atom.intersects(
- this_atom
- ), f"{that} intersecting {this} should be {result}"
+ assert result == this_atom.intersects(that_atom), (
+ f"{this} intersecting {that} should be {result}"
+ )
+ assert result == that_atom.intersects(this_atom), (
+ f"{that} intersecting {this} should be {result}"
+ )
def test_comparison(self):
assert_equal_bidirectional(self.kls("cat/pkg"), self.kls("cat/pkg"))
@@ -583,18 +583,18 @@ class TestAtom(TestRestriction):
assert_not_equal_bidirectional(self.kls("cat/pkg:1"),
self.kls("cat/pkg"))
assert_equal_bidirectional(self.kls("cat/pkg:2"),
self.kls("cat/pkg:2"))
for lesser, greater in (("0.1", "1"), ("1", "1-r1"), ("1.1", "1.2")):
- assert self.kls(f"=d/b-{lesser}") < self.kls(
- f"=d/b-{greater}"
- ), f"d/b-{lesser} < d/b-{greater}"
- assert not (
- self.kls(f"=d/b-{lesser}") > self.kls(f"=d/b-{greater}")
- ), f"!: d/b-{lesser} < d/b-{greater}"
- assert self.kls(f"=d/b-{greater}") > self.kls(
- f"=d/b-{lesser}"
- ), f"d/b-{greater} > d/b-{lesser}"
- assert not (
- self.kls(f"=d/b-{greater}") < self.kls(f"=d/b-{lesser}")
- ), f"!: d/b-{greater} > d/b-{lesser}"
+ assert self.kls(f"=d/b-{lesser}") < self.kls(f"=d/b-{greater}"), (
+ f"d/b-{lesser} < d/b-{greater}"
+ )
+ assert not (self.kls(f"=d/b-{lesser}") >
self.kls(f"=d/b-{greater}")), (
+ f"!: d/b-{lesser} < d/b-{greater}"
+ )
+ assert self.kls(f"=d/b-{greater}") > self.kls(f"=d/b-{lesser}"), (
+ f"d/b-{greater} > d/b-{lesser}"
+ )
+ assert not (self.kls(f"=d/b-{greater}") <
self.kls(f"=d/b-{lesser}")), (
+ f"!: d/b-{greater} > d/b-{lesser}"
+ )
assert self.kls("!!=d/b-1", eapi="2") > self.kls("!=d/b-1")
assert self.kls("!=d/b-1") < self.kls("!!=d/b-1")
diff --git a/tests/ebuild/test_conditionals.py
b/tests/ebuild/test_conditionals.py
index cce9efdd..fe7eb331 100644
--- a/tests/ebuild/test_conditionals.py
+++ b/tests/ebuild/test_conditionals.py
@@ -360,8 +360,8 @@ class TestDepSetEvaluate(base):
kls = str
orig = self.gen_depset(src, element_kls=kls, **kwds)
collapsed = orig.evaluate_depset(use, tristate_filter=tristate)
- assert (
- str(collapsed) == result
- ), f"expected {result!r} got {collapsed!r}\nraw depset:
{src!r}\nuse: {use!r}, tristate: {tristate!r}"
+ assert str(collapsed) == result, (
+ f"expected {result!r} got {collapsed!r}\nraw depset:
{src!r}\nuse: {use!r}, tristate: {tristate!r}"
+ )
if not ("?" in src or kwds.get("transitive_use_atoms")):
assert orig is collapsed
diff --git a/tests/ebuild/test_ebuild_src.py b/tests/ebuild/test_ebuild_src.py
index f34c9c94..70c1070e 100644
--- a/tests/ebuild/test_ebuild_src.py
+++ b/tests/ebuild/test_ebuild_src.py
@@ -381,7 +381,7 @@ class TestBase:
f = self.get_pkg(
{
- "SRC_URI": "http://foo.com/monkey.tgz " "http://dar/boon.tgz",
+ "SRC_URI": "http://foo.com/monkey.tgz http://dar/boon.tgz",
"EAPI": "2",
},
repo=parent,
@@ -407,7 +407,7 @@ class TestBase:
# verify it collapses multiple basenames down to the same.
f = self.get_pkg(
- {"SRC_URI": "http://foo.com/monkey.tgz "
"http://foo.com2/monkey.tgz"},
+ {"SRC_URI": "http://foo.com/monkey.tgz
http://foo.com2/monkey.tgz"},
repo=parent,
).fetchables
assert list(f[0].uri) == [
@@ -478,7 +478,7 @@ class TestBase:
)
f = self.get_pkg(
{
- "SRC_URI": "http://foo.com/monkey.tgz "
"mirror://mirror1/boon.tgz",
+ "SRC_URI": "http://foo.com/monkey.tgz
mirror://mirror1/boon.tgz",
"RESTRICT": "primaryuri",
},
repo=parent,
@@ -509,9 +509,9 @@ class TestBase:
# Check all EAPIs for REQUIRED_USE parsing, EAPIs that don't
support it
# should return depsets that evaluate to False.
pkg = self.get_pkg({"EAPI": eapi_str, "REQUIRED_USE": "test? ( foo
)"})
- assert (
- bool(pkg.required_use) == eapi.options.has_required_use
- ), f"failure parsing REQUIRED_USE for EAPI '{eapi}'"
+ assert bool(pkg.required_use) == eapi.options.has_required_use, (
+ f"failure parsing REQUIRED_USE for EAPI '{eapi}'"
+ )
# Render various REQUIRED_USE deps with set USE flag states and
# check for satisfiability.
diff --git a/tests/ebuild/test_eclass.py b/tests/ebuild/test_eclass.py
index 1d71d81e..13a6223c 100644
--- a/tests/ebuild/test_eclass.py
+++ b/tests/ebuild/test_eclass.py
@@ -132,12 +132,7 @@ class TestEclassDoc:
"Somehow."
)
assert doc.example == (
- "\n\n"
- "::\n\n"
- " inherit foo\n\n"
- " src_prepare() {\n"
- " foo_public_func\n"
- " }"
+ "\n\n::\n\n inherit foo\n\n src_prepare() {\n
foo_public_func\n }"
)
assert doc.supported_eapis == frozenset(map(str, range(8)))
diff --git a/tests/ebuild/test_formatter.py b/tests/ebuild/test_formatter.py
index 170fb8ca..c84de67a 100644
--- a/tests/ebuild/test_formatter.py
+++ b/tests/ebuild/test_formatter.py
@@ -50,13 +50,13 @@ class BaseFormatterTest:
try:
ret = self.formatterClass.format(internal_self, *args,
**kwds)
except Exception as exc:
- assert (
- autoline == self.fakeout.autoline
- ), f"exception thrown {exc}, autoline was {autoline}, now
is {self.fakeout.autoline}"
+ assert autoline == self.fakeout.autoline, (
+ f"exception thrown {exc}, autoline was {autoline}, now
is {self.fakeout.autoline}"
+ )
raise
- assert (
- autoline == self.fakeout.autoline
- ), f"autoline was {autoline}, now is {self.fakeout.autoline}"
+ assert autoline == self.fakeout.autoline, (
+ f"autoline was {autoline}, now is {self.fakeout.autoline}"
+ )
return ret
return state_verifying_class
@@ -164,7 +164,7 @@ class TestPkgcoreFormatter(BaseFormatterTest):
FakeMutatedPkg("dev-util/diffball-1.1"),
)
)
- self.assertOut("replace dev-util/diffball-1.1, "
"dev-util/diffball-1.2")
+ self.assertOut("replace dev-util/diffball-1.1, dev-util/diffball-1.2")
def test_reinstall_repo(self):
self.formatter.format(
@@ -178,9 +178,7 @@ class TestPkgcoreFormatter(BaseFormatterTest):
FakeMutatedPkg("dev-util/diffball-1.1"),
)
)
- self.assertOut(
- "replace dev-util/diffball-1.1, " "dev-util/diffball-1.2::gentoo"
- )
+ self.assertOut("replace dev-util/diffball-1.1,
dev-util/diffball-1.2::gentoo")
class CountingFormatterTest(BaseFormatterTest):
diff --git a/tests/ebuild/test_profiles.py b/tests/ebuild/test_profiles.py
index 47fcf8b5..f1b54863 100644
--- a/tests/ebuild/test_profiles.py
+++ b/tests/ebuild/test_profiles.py
@@ -77,13 +77,14 @@ class profile_mixin:
)
assert isinstance(got, tuple), f"key {key!r}, non tuple: {got!r}"
assert not isinstance(got, bare_kls), (
- f"key {key!r}, bare {bare_kls.__name__}, " f"rather than
tuple: {got!r}"
+ f"key {key!r}, bare {bare_kls.__name__}, rather than tuple:
{got!r}"
)
- assert all(
- isinstance(x, bare_kls) for x in got
- ), f"non {bare_kls.__name__} instance: key {key!r}, got {got!r};
types {list(map(type, got))}"
- got2, desired2 = tuple(map(reformat_f, got)), tuple(
- map(reformat_f, desired)
+ assert all(isinstance(x, bare_kls) for x in got), (
+ f"non {bare_kls.__name__} instance: key {key!r}, got {got!r};
types {list(map(type, got))}"
+ )
+ got2, desired2 = (
+ tuple(map(reformat_f, got)),
+ tuple(map(reformat_f, desired)),
)
assert got2 == desired2
diff --git a/tests/ebuild/test_repository.py b/tests/ebuild/test_repository.py
index 10c0b93b..1bb4c853 100644
--- a/tests/ebuild/test_repository.py
+++ b/tests/ebuild/test_repository.py
@@ -304,14 +304,14 @@ class TestSlavedTree(TestUnconfiguredTree):
for license in master_licenses:
(master_repo / "licenses" / license).touch()
(master_repo / "profiles" / "license_groups").write_text(
- f'FREE {" ".join(master_licenses)}\nOSI-APPROVED @FREE\n'
+ f"FREE {' '.join(master_licenses)}\nOSI-APPROVED @FREE\n"
)
(slave_repo / "licenses").mkdir()
for license in slave_licenses:
(slave_repo / "licenses" / license).touch()
(slave_repo / "profiles" / "license_groups").write_text(
- f'MISC-FREE @FREE {" ".join(slave_licenses)}\nFSF-APPROVED
MIT\nOSI-APPROVED @FSF-APPROVED\n'
+ f"MISC-FREE @FREE {' '.join(slave_licenses)}\nFSF-APPROVED
MIT\nOSI-APPROVED @FSF-APPROVED\n"
)
repo = self.mk_tree(slave_repo)
diff --git a/tests/fs/test_contents.py b/tests/fs/test_contents.py
index 5896d797..dbee4945 100644
--- a/tests/fs/test_contents.py
+++ b/tests/fs/test_contents.py
@@ -236,9 +236,9 @@ class TestContentsSet:
cset2 = contents.contentsSet(data2)
f = getattr(cset1, name)
got = f(cset2)
- assert (
- got == required
- ), f"{name}: expected {required}, got
{got}\ncset1={cset1!r}\ncset2={cset2!r}"
+ assert got == required, (
+ f"{name}: expected {required}, got
{got}\ncset1={cset1!r}\ncset2={cset2!r}"
+ )
@pytest.mark.parametrize(
("required", "data1", "data2"),
diff --git a/tests/merge/test_triggers.py b/tests/merge/test_triggers.py
index 08d0402d..140ca320 100644
--- a/tests/merge/test_triggers.py
+++ b/tests/merge/test_triggers.py
@@ -111,12 +111,12 @@ class TestBase:
" for required_csets=None"
)
- assert get_csets([1, 2], {1: 1, 2: 2}) == [
- [1, 2]
- ], "basic mapping through failed"
- assert get_csets([], {}) == [
- []
- ], "for no required csets, must have no args passed"
+ assert get_csets([1, 2], {1: 1, 2: 2}) == [[1, 2]], (
+ "basic mapping through failed"
+ )
+ assert get_csets([], {}) == [[]], (
+ "for no required csets, must have no args passed"
+ )
def test_module_constants():
diff --git a/tests/pkgsets/test_glsa.py b/tests/pkgsets/test_glsa.py
index 4ad975c7..442e0883 100644
--- a/tests/pkgsets/test_glsa.py
+++ b/tests/pkgsets/test_glsa.py
@@ -49,15 +49,15 @@ class TestGlsaDirSet:
restrict = restrict[0]
for ver in ver_matches:
pkg = cpv.VersionedCPV(f"dev-util/diffball-{ver}")
- assert restrict.match(
- pkg
- ), f"pkg {pkg} must match for {vuln_range!r}: {restrict}"
+ assert restrict.match(pkg), (
+ f"pkg {pkg} must match for {vuln_range!r}: {restrict}"
+ )
for ver in ver_nonmatches:
pkg = cpv.VersionedCPV(f"dev-util/diffball-{ver}")
- assert not restrict.match(
- pkg
- ), "pkg {pkg} must not match for {vuln_range!r}: {restrict}"
+ assert not restrict.match(pkg), (
+ "pkg {pkg} must not match for {vuln_range!r}: {restrict}"
+ )
def test_iter(self, tmp_path):
self.mk_glsa(tmp_path, pkgs_set)
diff --git a/tests/repository/test_filtered.py
b/tests/repository/test_filtered.py
index 7a04c21b..4585072e 100644
--- a/tests/repository/test_filtered.py
+++ b/tests/repository/test_filtered.py
@@ -70,7 +70,9 @@ class TestVisibility:
"dev-lib",
"dev-util",
]
- ), "category filtering must not filter dev-lib even if there are no
packages left post filtering"
+ ), (
+ "category filtering must not filter dev-lib even if there are no
packages left post filtering"
+ )
def test_packages_api(self):
_, vrepo = self.setup_repos(atom("dev-util/diffball"))
diff --git a/tests/restrictions/test_delegated.py
b/tests/restrictions/test_delegated.py
index 10eff707..3ff764d8 100644
--- a/tests/restrictions/test_delegated.py
+++ b/tests/restrictions/test_delegated.py
@@ -22,9 +22,9 @@ class Test_delegate(TestRestriction):
for negated in (False, True):
def assertIt(got, expected):
- assert (
- got == expected
- ), f"got={got!r}, expected={expected!r}, negate={negated!r}"
+ assert got == expected, (
+ f"got={got!r}, expected={expected!r}, negate={negated!r}"
+ )
y = True
l[:] = []
diff --git a/tests/restrictions/utils.py b/tests/restrictions/utils.py
index 7d6f40aa..b29380d0 100644
--- a/tests/restrictions/utils.py
+++ b/tests/restrictions/utils.py
@@ -5,19 +5,13 @@ class TestRestriction:
else:
msg = "; msg=" + msg
if negated:
- assert not getattr(obj, mode)(
- *args
- ), "%r must not match %r, mode=%s, negated=%r%s" % (
- obj,
- args,
- mode,
- negated,
- msg,
+ assert not getattr(obj, mode)(*args), (
+ f"{obj!r} must not match {args!r}, mode={mode},
negated={negated!r}{msg}"
)
else:
- assert getattr(obj, mode)(
- *args
- ), "%r must match %r, mode=%s, not negated%s" % (obj, args, mode,
msg)
+ assert getattr(obj, mode)(*args), (
+ f"{obj!r} must match {args!r}, mode={mode}, not negated{msg}"
+ )
def assertMatch(self, obj, target, mode="match", negated=False, msg=None):
return self._assertMatch(obj, (target,), mode=mode, negated=negated,
msg=msg)
diff --git a/tests/scripts/test_pconfig.py b/tests/scripts/test_pconfig.py
index 68543361..56999968 100644
--- a/tests/scripts/test_pconfig.py
+++ b/tests/scripts/test_pconfig.py
@@ -265,11 +265,11 @@ class TestUncollapsable(ArgParseMixin):
[
"section foon:",
" Collapsing section named 'foon'",
- " cannot collapse inherit-only section" "",
+ " cannot collapse inherit-only section",
"",
"section spork:",
" Collapsing section named 'spork'",
- " type tests.scripts.test_pconfig.spork needs settings for
'reff'" "",
+ " type tests.scripts.test_pconfig.spork needs settings for
'reff'",
"",
],
spork=basics.HardCodedConfigSection({"class": spork}),
diff --git a/tests/scripts/test_pmaint.py b/tests/scripts/test_pmaint.py
index b4dc48ce..2578779b 100644
--- a/tests/scripts/test_pmaint.py
+++ b/tests/scripts/test_pmaint.py
@@ -202,9 +202,9 @@ class TestCopy(ArgParseMixin):
"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"
+ 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(
@@ -218,9 +218,9 @@ class TestCopy(ArgParseMixin):
assert [[x.cpvstr for x in pkg] for pkg 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"
+ 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(
@@ -236,9 +236,9 @@ class TestCopy(ArgParseMixin):
"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"
+ 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",
@@ -255,9 +255,9 @@ class TestCopy(ArgParseMixin):
assert [pkg.cpvstr for pkg in 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"
+ assert config.target_repo.uninstalled == config.target_repo.replaced, (
+ "uninstalled should be the same as replaced; empty"
+ )
class TestRegen(ArgParseMixin):
diff --git a/tests/test_gpg.py b/tests/test_gpg.py
index f59d9441..c870cb50 100644
--- a/tests/test_gpg.py
+++ b/tests/test_gpg.py
@@ -18,9 +18,9 @@ class TestSkipSignatures:
d2 = header + d
parsed = list(gpg.skip_signatures(d2))
required = [d[0], d[1], d[-1]]
- assert (
- parsed == required
- ), f"{parsed!r} != {required!r} for header {header!r}"
+ assert parsed == required, (
+ f"{parsed!r} != {required!r} for header {header!r}"
+ )
def test_signed_signed(self):
d = [
diff --git a/tests/util/test_parserestrict.py b/tests/util/test_parserestrict.py
index 328c921e..4299441c 100644
--- a/tests/util/test_parserestrict.py
+++ b/tests/util/test_parserestrict.py
@@ -34,18 +34,18 @@ class TestExtendedRestrictionGeneration:
for token in ("*", ""):
i = parserestrict.convert_glob(token)
- assert (
- i == None
- ), f"verifying None is returned on pointless restrictions, failed
token: {token}"
+ assert i == None, (
+ f"verifying None is returned on pointless restrictions, failed
token: {token}"
+ )
with pytest.raises(parserestrict.ParseError):
parserestrict.convert_glob("**")
def verify_restrict(self, restrict, attr, token):
assert isinstance(restrict, packages.PackageRestriction), token
- assert (
- restrict.attr == attr
- ), f"verifying package attr {restrict.attr}; required({attr}), token
{token}"
+ assert restrict.attr == attr, (
+ f"verifying package attr {restrict.attr}; required({attr}), token
{token}"
+ )
if "*" in token:
self.verify_text_glob(restrict.restriction, token)
@@ -67,9 +67,9 @@ class TestExtendedRestrictionGeneration:
self.verify_restrict(i, attr, raw_token)
def test_combined(self):
- assert isinstance(
- parserestrict.parse_match("dev-util/diffball"), atom
- ), "dev-util/diffball"
+ assert isinstance(parserestrict.parse_match("dev-util/diffball"),
atom), (
+ "dev-util/diffball"
+ )
for token in ("dev-*/util", "dev-*/util*", "dev-a/util*"):
i = parserestrict.parse_match(token)
assert isinstance(i, boolean.AndRestriction), token
@@ -144,9 +144,9 @@ class TestExtendedRestrictionGeneration:
self.verify_restrict(i[3], attr, token.split(":")[0].split("/")[n])
def test_atom_globbed(self):
- assert isinstance(
- parserestrict.parse_match("=sys-devel/gcc-4*"), atom
- ), "=sys-devel/gcc-4*"
+ assert isinstance(parserestrict.parse_match("=sys-devel/gcc-4*"),
atom), (
+ "=sys-devel/gcc-4*"
+ )
def test_use_atom(self):
o = parserestrict.parse_match("net-misc/openssh[-X]")