aboutsummaryrefslogtreecommitdiff
path: root/unittests/internaltests.py
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2021-12-01 22:31:24 -0800
committerEli Schwartz <eschwartz93@gmail.com>2021-12-06 20:06:14 -0500
commit930cbdb86d5db3e5222d385fb785359000288d94 (patch)
treedfa18f8bbcfc60c5a3939b87c6f10d1e75016965 /unittests/internaltests.py
parentb8ba493044abb047a8eff4d3fb7f5d668ce413bc (diff)
downloadmeson-930cbdb86d5db3e5222d385fb785359000288d94.zip
meson-930cbdb86d5db3e5222d385fb785359000288d94.tar.gz
meson-930cbdb86d5db3e5222d385fb785359000288d94.tar.bz2
Add deprecated_message and since_message to KwargInfo
For passing an extra message to Feature* This allows providing a more detailed message.
Diffstat (limited to 'unittests/internaltests.py')
-rw-r--r--unittests/internaltests.py12
1 files changed, 6 insertions, 6 deletions
diff --git a/unittests/internaltests.py b/unittests/internaltests.py
index eca9cff..a332d81 100644
--- a/unittests/internaltests.py
+++ b/unittests/internaltests.py
@@ -1319,7 +1319,8 @@ class InternalTests(unittest.TestCase):
def test_typed_kwarg_since(self) -> None:
@typed_kwargs(
'testfunc',
- KwargInfo('input', str, since='1.0', deprecated='2.0')
+ KwargInfo('input', str, since='1.0', since_message='Its awesome, use it',
+ deprecated='2.0', deprecated_message='Its terrible, dont use it')
)
def _(obj, node, args: T.Tuple, kwargs: T.Dict[str, str]) -> None:
self.assertIsInstance(kwargs['input'], str)
@@ -1330,8 +1331,8 @@ class InternalTests(unittest.TestCase):
mock.patch('mesonbuild.mesonlib.project_meson_versions', {'': '0.1'}):
# With Meson 0.1 it should trigger the "introduced" warning but not the "deprecated" warning
_(None, mock.Mock(subproject=''), [], {'input': 'foo'})
- self.assertRegex(out.getvalue(), r'WARNING:.*introduced.*input arg in testfunc')
- self.assertNotRegex(out.getvalue(), r'WARNING:.*deprecated.*input arg in testfunc')
+ self.assertRegex(out.getvalue(), r'WARNING:.*introduced.*input arg in testfunc. Its awesome, use it')
+ self.assertNotRegex(out.getvalue(), r'WARNING:.*deprecated.*input arg in testfunc. Its terrible, dont use it')
with self.subTest('no warnings should be triggered'), \
mock.patch('sys.stdout', io.StringIO()) as out, \
@@ -1339,15 +1340,14 @@ class InternalTests(unittest.TestCase):
# With Meson 1.5 it shouldn't trigger any warning
_(None, mock.Mock(subproject=''), [], {'input': 'foo'})
self.assertNotRegex(out.getvalue(), r'WARNING:.*')
- self.assertNotRegex(out.getvalue(), r'WARNING:.*')
with self.subTest('use after deprecated'), \
mock.patch('sys.stdout', io.StringIO()) as out, \
mock.patch('mesonbuild.mesonlib.project_meson_versions', {'': '2.0'}):
# With Meson 2.0 it should trigger the "deprecated" warning but not the "introduced" warning
_(None, mock.Mock(subproject=''), [], {'input': 'foo'})
- self.assertRegex(out.getvalue(), r'WARNING:.*deprecated.*input arg in testfunc')
- self.assertNotRegex(out.getvalue(), r'WARNING:.*introduced.*input arg in testfunc')
+ self.assertRegex(out.getvalue(), r'WARNING:.*deprecated.*input arg in testfunc. Its terrible, dont use it')
+ self.assertNotRegex(out.getvalue(), r'WARNING:.*introduced.*input arg in testfunc. Its awesome, use it')
def test_typed_kwarg_validator(self) -> None:
@typed_kwargs(