/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/tests/test_symbol_versioning.py

  • Committer: Jelmer Vernooij
  • Date: 2020-05-06 02:13:25 UTC
  • mfrom: (7490.7.21 work)
  • mto: This revision was merged to the branch mainline in revision 7501.
  • Revision ID: jelmer@jelmer.uk-20200506021325-awbmmqu1zyorz7sj
Merge 3.1 branch.

Show diffs side-by-side

added added

removed removed

Lines of Context:
34
34
 
35
35
 
36
36
a_deprecated_list = symbol_versioning.deprecated_list(deprecated_in((0, 9, 0)),
37
 
    'a_deprecated_list', ['one'], extra="Don't use me")
 
37
                                                      'a_deprecated_list', ['one'], extra="Don't use me")
38
38
 
39
39
 
40
40
a_deprecated_dict = symbol_versioning.DeprecatedDict(
53
53
    def setUp(self):
54
54
        super(TestDeprecationWarnings, self).setUp()
55
55
        self._warnings = []
56
 
    
 
56
 
57
57
    @deprecated_method(deprecated_in((0, 7, 0)))
58
58
    def deprecated_method(self):
59
59
        """Deprecated method docstring.
69
69
        return 1
70
70
 
71
71
    def test_deprecated_static(self):
72
 
        # XXX: The results are not quite right because the class name is not
73
 
        # shown - however it is enough to give people a good indication of
74
 
        # where the problem is.
75
72
        expected_warning = (
76
 
            "breezy.tests.test_symbol_versioning."
 
73
            "breezy.tests.test_symbol_versioning.TestDeprecationWarnings."
77
74
            "deprecated_static "
78
75
            "was deprecated in version 0.7.0.", DeprecationWarning, 2)
79
76
        expected_docstring = (
132
129
            self.assertEqual(['one', 'foo'], a_deprecated_list)
133
130
 
134
131
            a_deprecated_list.extend(['bar', 'baz'])
135
 
            self.assertEqual([expected_warning]*2, self._warnings)
 
132
            self.assertEqual([expected_warning] * 2, self._warnings)
136
133
            self.assertEqual(['one', 'foo', 'bar', 'baz'], a_deprecated_list)
137
134
 
138
135
            a_deprecated_list.insert(1, 'xxx')
139
 
            self.assertEqual([expected_warning]*3, self._warnings)
140
 
            self.assertEqual(['one', 'xxx', 'foo', 'bar', 'baz'], a_deprecated_list)
 
136
            self.assertEqual([expected_warning] * 3, self._warnings)
 
137
            self.assertEqual(
 
138
                ['one', 'xxx', 'foo', 'bar', 'baz'], a_deprecated_list)
141
139
 
142
140
            a_deprecated_list.remove('foo')
143
 
            self.assertEqual([expected_warning]*4, self._warnings)
 
141
            self.assertEqual([expected_warning] * 4, self._warnings)
144
142
            self.assertEqual(['one', 'xxx', 'bar', 'baz'], a_deprecated_list)
145
143
 
146
144
            val = a_deprecated_list.pop()
147
 
            self.assertEqual([expected_warning]*5, self._warnings)
 
145
            self.assertEqual([expected_warning] * 5, self._warnings)
148
146
            self.assertEqual('baz', val)
149
147
            self.assertEqual(['one', 'xxx', 'bar'], a_deprecated_list)
150
148
 
151
149
            val = a_deprecated_list.pop(1)
152
 
            self.assertEqual([expected_warning]*6, self._warnings)
 
150
            self.assertEqual([expected_warning] * 6, self._warnings)
153
151
            self.assertEqual('xxx', val)
154
152
            self.assertEqual(['one', 'bar'], a_deprecated_list)
155
153
        finally:
174
172
        finally:
175
173
            symbol_versioning.set_warning_method(old_warning_method)
176
174
 
177
 
 
178
175
    def check_deprecated_callable(self, expected_warning, expected_docstring,
179
176
                                  expected_name, expected_module,
180
177
                                  deprecated_callable):
189
186
            deprecated_callable()
190
187
            self.assertEqual([expected_warning, expected_warning],
191
188
                             self._warnings)
192
 
            self.assertEqualDiff(expected_docstring, deprecated_callable.__doc__)
 
189
            self.assertEqualDiff(expected_docstring,
 
190
                                 deprecated_callable.__doc__)
193
191
            self.assertEqualDiff(expected_name, deprecated_callable.__name__)
194
 
            self.assertEqualDiff(expected_module, deprecated_callable.__module__)
 
192
            self.assertEqualDiff(
 
193
                expected_module, deprecated_callable.__module__)
195
194
            self.assertTrue(deprecated_callable.is_deprecated)
196
195
        finally:
197
196
            symbol_versioning.set_warning_method(old_warning_method)
202
201
        self.assertEqual(True, symbol_versioning.deprecated_passed(False))
203
202
        self.assertEqual(False,
204
203
                         symbol_versioning.deprecated_passed(
205
 
                            symbol_versioning.DEPRECATED_PARAMETER))
 
204
                             symbol_versioning.DEPRECATED_PARAMETER))
206
205
 
207
206
    def test_deprecation_string(self):
208
207
        """We can get a deprecation string for a method or function."""
209
 
        self.assertEqual('breezy.tests.test_symbol_versioning.'
210
 
            'TestDeprecationWarnings.test_deprecation_string was deprecated in '
211
 
            'version 0.11.0.',
212
 
            symbol_versioning.deprecation_string(
 
208
        err_message = symbol_versioning.deprecation_string(
213
209
            self.test_deprecation_string,
214
 
            deprecated_in((0, 11, 0))))
 
210
            deprecated_in((0, 11, 0)))
 
211
        self.assertEqual(err_message,
 
212
                         'breezy.tests.test_symbol_versioning.TestDeprecationWarnings.'
 
213
                         'test_deprecation_string was deprecated in '
 
214
                         'version 0.11.0.')
 
215
 
215
216
        self.assertEqual('breezy.symbol_versioning.deprecated_function was '
216
 
            'deprecated in version 0.11.0.',
217
 
            symbol_versioning.deprecation_string(
218
 
                symbol_versioning.deprecated_function,
219
 
                deprecated_in((0, 11, 0))))
 
217
                         'deprecated in version 0.11.0.',
 
218
                         symbol_versioning.deprecation_string(
 
219
                             symbol_versioning.deprecated_function,
 
220
                             deprecated_in((0, 11, 0))))
220
221
 
221
222
 
222
223
class TestSuppressAndActivate(TestCase):
224
225
    def setUp(self):
225
226
        super(TestSuppressAndActivate, self).setUp()
226
227
        existing_filters = list(warnings.filters)
 
228
 
227
229
        def restore():
228
230
            warnings.filters[:] = existing_filters
229
231
        self.addCleanup(restore)