~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/__init__.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2007-03-07 10:45:44 UTC
  • mfrom: (2321.1.2 integration)
  • Revision ID: pqm@pqm.ubuntu.com-20070307104544-59e3e6358e4bdb29
(robertc) Merge dirstate and subtrees. (Robert Collins, Martin Pool, Aaaron Bentley, John A Meinel, James Westby)

Show diffs side-by-side

added added

removed removed

Lines of Context:
33
33
import errno
34
34
import logging
35
35
import os
 
36
from pprint import pformat
36
37
import re
37
38
import shlex
38
39
import stat
608
609
                                  charjunk=lambda x: False)
609
610
        return ''.join(difflines)
610
611
 
 
612
    def assertEqual(self, a, b, message=''):
 
613
        if a == b:
 
614
            return
 
615
        if message:
 
616
            message += '\n'
 
617
        raise AssertionError("%snot equal:\na = %s\nb = %s\n"
 
618
            % (message,
 
619
               pformat(a, indent=4), pformat(b, indent=4)))
 
620
 
 
621
    assertEquals = assertEqual
 
622
 
611
623
    def assertEqualDiff(self, a, b, message=None):
612
624
        """Assert two texts are equal, if not raise an exception.
613
625
        
638
650
    def assertContainsRe(self, haystack, needle_re):
639
651
        """Assert that a contains something matching a regular expression."""
640
652
        if not re.search(needle_re, haystack):
641
 
            raise AssertionError('pattern "%s" not found in "%s"'
 
653
            raise AssertionError('pattern "%r" not found in "%r"'
642
654
                    % (needle_re, haystack))
643
655
 
644
656
    def assertNotContainsRe(self, haystack, needle_re):
749
761
        expected_first_warning = symbol_versioning.deprecation_string(
750
762
            a_callable, deprecation_format)
751
763
        if len(call_warnings) == 0:
752
 
            self.fail("No assertion generated by call to %s" %
 
764
            self.fail("No deprecation warning generated by call to %s" %
753
765
                a_callable)
754
766
        self.assertEqual(expected_first_warning, call_warnings[0])
755
767
        return result
1010
1022
        where it may be useful for debugging.  See also run_captured.
1011
1023
 
1012
1024
        :param stdin: A string to be used as stdin for the command.
 
1025
        :param retcode: The status code the command should return
 
1026
        :param working_dir: The directory to run the command in
1013
1027
        """
1014
1028
        retcode = kwargs.pop('retcode', 0)
1015
1029
        encoding = kwargs.pop('encoding', None)
1660
1674
            self.fail("path %s is not a directory; has mode %#o"
1661
1675
                      % (relpath, mode))
1662
1676
 
 
1677
    def assertTreesEqual(self, left, right):
 
1678
        """Check that left and right have the same content and properties."""
 
1679
        # we use a tree delta to check for equality of the content, and we
 
1680
        # manually check for equality of other things such as the parents list.
 
1681
        self.assertEqual(left.get_parent_ids(), right.get_parent_ids())
 
1682
        differences = left.changes_from(right)
 
1683
        self.assertFalse(differences.has_changed(),
 
1684
            "Trees %r and %r are different: %r" % (left, right, differences))
 
1685
 
1663
1686
    def setUp(self):
1664
1687
        super(TestCaseWithTransport, self).setUp()
1665
1688
        self.__server = None
1786
1809
                   'bzrlib.tests.test_decorators',
1787
1810
                   'bzrlib.tests.test_delta',
1788
1811
                   'bzrlib.tests.test_diff',
 
1812
                   'bzrlib.tests.test_dirstate',
1789
1813
                   'bzrlib.tests.test_doc_generate',
1790
1814
                   'bzrlib.tests.test_errors',
1791
1815
                   'bzrlib.tests.test_escaped_store',
 
1816
                   'bzrlib.tests.test_extract',
1792
1817
                   'bzrlib.tests.test_fetch',
1793
1818
                   'bzrlib.tests.test_ftp_transport',
1794
1819
                   'bzrlib.tests.test_generate_docs',
1841
1866
                   'bzrlib.tests.test_source',
1842
1867
                   'bzrlib.tests.test_status',
1843
1868
                   'bzrlib.tests.test_store',
 
1869
                   'bzrlib.tests.test_subsume',
1844
1870
                   'bzrlib.tests.test_symbol_versioning',
1845
1871
                   'bzrlib.tests.test_tag',
1846
1872
                   'bzrlib.tests.test_testament',
1863
1889
                   'bzrlib.tests.test_weave',
1864
1890
                   'bzrlib.tests.test_whitebox',
1865
1891
                   'bzrlib.tests.test_workingtree',
 
1892
                   'bzrlib.tests.test_workingtree_4',
1866
1893
                   'bzrlib.tests.test_wsgi',
1867
1894
                   'bzrlib.tests.test_xml',
1868
1895
                   ]