summaryrefslogtreecommitdiffstats
path: root/tests/test_deprecated.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_deprecated.py')
-rw-r--r--tests/test_deprecated.py45
1 files changed, 45 insertions, 0 deletions
diff --git a/tests/test_deprecated.py b/tests/test_deprecated.py
new file mode 100644
index 0000000..fd4de82
--- /dev/null
+++ b/tests/test_deprecated.py
@@ -0,0 +1,45 @@
+import warnings
+
+import pytest
+
+from tests.output_aristaproto.deprecated import (
+ Message,
+ Test,
+)
+
+
+@pytest.fixture
+def message():
+ with warnings.catch_warnings():
+ warnings.filterwarnings("ignore", category=DeprecationWarning)
+ return Message(value="hello")
+
+
+def test_deprecated_message():
+ with pytest.warns(DeprecationWarning) as record:
+ Message(value="hello")
+
+ assert len(record) == 1
+ assert str(record[0].message) == f"{Message.__name__} is deprecated"
+
+
+def test_message_with_deprecated_field(message):
+ with pytest.warns(DeprecationWarning) as record:
+ Test(message=message, value=10)
+
+ assert len(record) == 1
+ assert str(record[0].message) == f"{Test.__name__}.message is deprecated"
+
+
+def test_message_with_deprecated_field_not_set(message):
+ with pytest.warns(None) as record:
+ Test(value=10)
+
+ assert not record
+
+
+def test_message_with_deprecated_field_not_set_default(message):
+ with pytest.warns(None) as record:
+ _ = Test(value=10).message
+
+ assert not record