~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_version.py

  • Committer: Vincent Ladeuil
  • Date: 2017-01-17 13:48:10 UTC
  • mfrom: (6615.3.6 merges)
  • mto: This revision was merged to the branch mainline in revision 6620.
  • Revision ID: v.ladeuil+lp@free.fr-20170117134810-j9p3lidfy6pfyfsc
Merge 2.7, resolving conflicts

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2006, 2009, 2010 Canonical Ltd
 
1
# Copyright (C) 2006, 2009, 2010, 2011 Canonical Ltd
2
2
#
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
17
17
"""Tests for versioning of bzrlib."""
18
18
 
19
19
from cStringIO import StringIO
20
 
import os
 
20
import platform
21
21
import re
22
22
 
23
 
from bzrlib import version, workingtree
24
 
from bzrlib.tests import TestCase, TestSkipped
25
 
 
26
 
class TestBzrlibVersioning(TestCase):
 
23
from bzrlib import (
 
24
    tests,
 
25
    version,
 
26
    workingtree,
 
27
    )
 
28
from bzrlib.tests.scenarios import load_tests_apply_scenarios
 
29
 
 
30
 
 
31
load_tests = load_tests_apply_scenarios
 
32
 
 
33
 
 
34
class TestBzrlibVersioning(tests.TestCase):
27
35
 
28
36
    def test_get_bzr_source_tree(self):
29
37
        """Get tree for bzr source, if any."""
34
42
        # just assert that it must either return None or the tree.
35
43
        src_tree = version._get_bzr_source_tree()
36
44
        if src_tree is None:
37
 
            raise TestSkipped("bzr tests aren't run from a bzr working tree")
 
45
            raise tests.TestSkipped(
 
46
                "bzr tests aren't run from a bzr working tree")
38
47
        else:
39
48
            # ensure that what we got was in fact a working tree instance.
40
49
            self.assertIsInstance(src_tree, workingtree.WorkingTree)
47
56
        out = sio.getvalue()
48
57
        m = re.search(r"Python interpreter: (.*) [0-9]", out)
49
58
        self.assertIsNot(m, None)
50
 
        self.failUnlessExists(m.group(1))
 
59
        self.assertPathExists(m.group(1))
 
60
 
 
61
class TestPlatformUse(tests.TestCase):
 
62
 
 
63
    scenarios = [('ascii', dict(_platform='test-platform')),
 
64
                 ('unicode', dict(_platform='Schr\xc3\xb6dinger'))]
 
65
 
 
66
    def setUp(self):
 
67
        super(TestPlatformUse, self).setUp()
 
68
        self.permit_source_tree_branch_repo()
 
69
 
 
70
    def test_platform(self):
 
71
        out = self.make_utf8_encoded_stringio()
 
72
        self.overrideAttr(platform, 'platform', lambda **kwargs: self._platform)
 
73
        version.show_version(show_config=False, show_copyright=False,
 
74
                             to_file=out)
 
75
        self.assertContainsRe(out.getvalue(),
 
76
                              r'(?m)^  Platform: %s' % self._platform)