2018-07-06 10:47:56 +02:00
|
|
|
import textwrap
|
|
|
|
|
2019-05-09 19:35:40 +02:00
|
|
|
import pytest
|
|
|
|
|
2016-02-09 00:29:11 +01:00
|
|
|
|
2019-05-09 17:48:43 +02:00
|
|
|
@pytest.fixture
|
|
|
|
def warnings_demo(tmpdir):
|
2019-07-02 07:00:32 +02:00
|
|
|
demo = tmpdir.joinpath('warnings_demo.py')
|
|
|
|
demo.write_text(textwrap.dedent('''
|
2018-07-06 10:47:56 +02:00
|
|
|
from logging import basicConfig
|
|
|
|
from pip._internal.utils import deprecation
|
2016-02-09 00:29:11 +01:00
|
|
|
|
2018-07-06 10:47:56 +02:00
|
|
|
deprecation.install_warning_logger()
|
|
|
|
basicConfig()
|
2016-02-09 00:29:11 +01:00
|
|
|
|
2018-07-06 10:47:56 +02:00
|
|
|
deprecation.deprecated("deprecated!", replacement=None, gone_in=None)
|
|
|
|
'''))
|
2019-05-09 17:48:43 +02:00
|
|
|
return demo
|
2016-02-09 00:29:11 +01:00
|
|
|
|
2019-05-09 17:48:43 +02:00
|
|
|
|
|
|
|
def test_deprecation_warnings_are_correct(script, warnings_demo):
|
|
|
|
result = script.run('python', warnings_demo, expect_stderr=True)
|
2018-07-06 10:47:56 +02:00
|
|
|
expected = 'WARNING:pip._internal.deprecations:DEPRECATION: deprecated!\n'
|
|
|
|
assert result.stderr == expected
|
2016-02-09 00:29:11 +01:00
|
|
|
|
2019-05-09 17:49:06 +02:00
|
|
|
|
|
|
|
def test_deprecation_warnings_can_be_silenced(script, warnings_demo):
|
2016-02-09 00:29:11 +01:00
|
|
|
script.environ['PYTHONWARNINGS'] = 'ignore'
|
2019-05-09 17:48:43 +02:00
|
|
|
result = script.run('python', warnings_demo)
|
2016-02-09 00:29:11 +01:00
|
|
|
assert result.stderr == ''
|