~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_lazy_regex.py

  • Committer: Patch Queue Manager
  • Date: 2011-11-23 14:11:03 UTC
  • mfrom: (6282.1.1 pickle-lazy-regex)
  • Revision ID: pqm@pqm.ubuntu.com-20111123141103-afx95vxa2t07ijy6
(jelmer) Support pickling lazy_regex patterns. (Jelmer Vernooij)

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 
17
17
"""Test that lazy regexes are not compiled right away"""
18
18
 
 
19
import pickle
19
20
import re
20
21
 
21
22
from bzrlib import errors
115
116
        pattern = lazy_regex.lazy_compile('[,;]*')
116
117
        self.assertEqual(['x', 'y', 'z'], pattern.split('x,y;z'))
117
118
 
 
119
    def test_pickle(self):
 
120
        # When pickling, just compile the regex.
 
121
        # Sphinx, which we use for documentation, pickles
 
122
        # some compiled regexes.
 
123
        lazy_pattern = lazy_regex.lazy_compile('[,;]*')
 
124
        pickled = pickle.dumps(lazy_pattern)
 
125
        unpickled_lazy_pattern = pickle.loads(pickled)
 
126
        self.assertEqual(['x', 'y', 'z'],
 
127
            unpickled_lazy_pattern.split('x,y;z'))
 
128
 
118
129
 
119
130
class TestInstallLazyCompile(tests.TestCase):
120
131
    """Tests for lazy compiled regexps.