Skip to content

Commit 6908d55

Browse files
committed
add a test for detailed solver problem reports
Signed-off-by: Oliver Kurth <oliver.kurth@broadcom.com>
1 parent a2e442b commit 6908d55

1 file changed

Lines changed: 29 additions & 0 deletions

File tree

pytests/tests/test_install.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,3 +172,32 @@ def xxx_test_install_memcheck(utils):
172172

173173
utils.run_memcheck(['tdnf', 'install', '-y', '--nogpgcheck', pkgname])
174174
assert utils.check_package(pkgname)
175+
176+
177+
# install a package with non-existing requirement, expect brief output without verbose
178+
def test_install_no_providers_non_verbose(utils):
179+
pkgname = utils.config['dummy_requires_pkgname']
180+
ret = utils.run(['tdnf', 'install', '-y', '--nogpgcheck', pkgname])
181+
# ERROR_TDNF_SOLV_FAILED - "Solv general runtime error"
182+
assert ret['retval'] == 1301
183+
stderr = '\n'.join(ret['stderr'])
184+
assert "nothing provides" in stderr
185+
# Should recommend the verbose flag
186+
assert "Please retry with --verbose to see detailed solver rules" in stderr
187+
# Should NOT contain the detailed block format
188+
assert "Problem 1:" not in stderr
189+
190+
191+
# install a package with non-existing requirement, expect detailed output with verbose
192+
def test_install_no_providers_verbose(utils):
193+
pkgname = utils.config['dummy_requires_pkgname']
194+
ret = utils.run(['tdnf', 'install', '-y', '--nogpgcheck', '--verbose', pkgname])
195+
# ERROR_TDNF_SOLV_FAILED - "Solv general runtime error"
196+
assert ret['retval'] == 1301
197+
stderr = '\n'.join(ret['stderr'])
198+
# Should contain the detailed block format
199+
assert "Problem 1:" in stderr
200+
assert " - " in stderr
201+
assert "nothing provides" in stderr
202+
# Should NOT recommend the verbose flag
203+
assert "Please retry with --verbose to see detailed solver rules" not in stderr

0 commit comments

Comments
 (0)