/breezy/unstable

To get this branch, use:
bzr branch https://code.breezy-vcs.org/breezy/unstable

« back to all changes in this revision

Viewing changes to breezy/tests/test_api.py

  • Committer: Jelmer Vernooij
  • Date: 2017-05-24 01:39:33 UTC
  • mfrom: (3815.3776.6)
  • Revision ID: jelmer@jelmer.uk-20170524013933-ir4y4tqtrsiz2ka2
New upstream snapshot.

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
relevant test modules.
22
22
"""
23
23
 
24
 
import bzrlib
25
 
import bzrlib.api
26
 
from bzrlib.errors import IncompatibleAPI
27
 
from bzrlib.tests import TestCase
 
24
import breezy
 
25
import breezy.api
 
26
from ..errors import IncompatibleAPI
 
27
from . import TestCase
28
28
 
29
29
class APITests(TestCase):
30
30
 
31
31
    def test_library_version(self):
32
32
        """Library API version is exposed"""
33
 
        self.assertTrue(isinstance(bzrlib.__version__, str))
34
 
        self.assertTrue(isinstance(bzrlib.version_string, str))
35
 
        self.assertTrue(isinstance(bzrlib.version_info, tuple))
36
 
        self.assertEqual(len(bzrlib.version_info), 5)
 
33
        self.assertTrue(isinstance(breezy.__version__, str))
 
34
        self.assertTrue(isinstance(breezy.version_string, str))
 
35
        self.assertTrue(isinstance(breezy.version_info, tuple))
 
36
        self.assertEqual(len(breezy.version_info), 5)
37
37
 
38
38
 
39
39
class TrivialObject(object):
46
46
        an_object = TrivialObject()
47
47
        an_object.api_minimum_version = (0, 1, 2)
48
48
        self.assertEqual((0, 1, 2),
49
 
            bzrlib.api.get_minimum_api_version(an_object))
 
49
            breezy.api.get_minimum_api_version(an_object))
50
50
 
51
51
    def test_get_minimum_api_version_fallsback_to_bzr_minimum_version(self):
52
52
        an_object = TrivialObject()
53
 
        self.assertEqual(bzrlib.api_minimum_version,
54
 
            bzrlib.api.get_minimum_api_version(an_object))
 
53
        self.assertEqual(breezy.api_minimum_version,
 
54
            breezy.api.get_minimum_api_version(an_object))
55
55
 
56
56
    def test_get_current_api_version_reads_api_current_version(self):
57
57
        an_object = TrivialObject()
58
58
        an_object.api_current_version = (3, 2, 1)
59
59
        an_object.version_info = (1, 2, 3, "final", 0)
60
60
        self.assertEqual((3, 2, 1),
61
 
            bzrlib.api.get_current_api_version(an_object))
 
61
            breezy.api.get_current_api_version(an_object))
62
62
 
63
63
    def test_get_current_api_version_fallsback_to_version_info(self):
64
64
        an_object = TrivialObject()
65
65
        an_object.version_info = (1, 2, 3, "final", 0)
66
66
        self.assertEqual((1, 2, 3),
67
 
            bzrlib.api.get_current_api_version(an_object))
 
67
            breezy.api.get_current_api_version(an_object))
68
68
 
69
 
    def test_get_current_api_version_fallsback_to_bzrlib_version_info(self):
 
69
    def test_get_current_api_version_fallsback_to_breezy_version_info(self):
70
70
        an_object = TrivialObject()
71
 
        self.assertEqual(bzrlib.version_info[0:3],
72
 
            bzrlib.api.get_current_api_version(an_object))
 
71
        self.assertEqual(breezy.version_info[0:3],
 
72
            breezy.api.get_current_api_version(an_object))
73
73
 
74
74
    def test_require_any_api_wanted_one(self):
75
75
        an_object = TrivialObject()
76
76
        an_object.api_minimum_version = (1, 2, 3)
77
77
        an_object.api_current_version = (4, 5, 6)
78
 
        bzrlib.api.require_any_api(an_object, [(1, 2, 3)])
 
78
        breezy.api.require_any_api(an_object, [(1, 2, 3)])
79
79
 
80
80
    def test_require_any_api_wanted_first_compatible(self):
81
81
        an_object = TrivialObject()
82
82
        an_object.api_minimum_version = (1, 2, 3)
83
83
        an_object.api_current_version = (4, 5, 6)
84
 
        bzrlib.api.require_any_api(an_object, [(1, 2, 3), (5, 6, 7)])
 
84
        breezy.api.require_any_api(an_object, [(1, 2, 3), (5, 6, 7)])
85
85
 
86
86
    def test_require_any_api_wanted_second_compatible(self):
87
87
        an_object = TrivialObject()
88
88
        an_object.api_minimum_version = (1, 2, 3)
89
89
        an_object.api_current_version = (4, 5, 6)
90
 
        bzrlib.api.require_any_api(an_object, [(5, 6, 7), (1, 2, 3)])
 
90
        breezy.api.require_any_api(an_object, [(5, 6, 7), (1, 2, 3)])
91
91
 
92
92
    def test_require_any_api_wanted_none_compatible(self):
93
93
        an_object = TrivialObject()
94
94
        an_object.api_minimum_version = (1, 2, 3)
95
95
        an_object.api_current_version = (4, 5, 6)
96
 
        self.assertRaises(IncompatibleAPI, bzrlib.api.require_any_api,
 
96
        self.assertRaises(IncompatibleAPI, breezy.api.require_any_api,
97
97
            an_object, [(1, 2, 2), (5, 6, 7)])
98
98
 
99
99
    def test_require_api_wanted_is_minimum_is_ok(self):
100
100
        an_object = TrivialObject()
101
101
        an_object.api_minimum_version = (1, 2, 3)
102
102
        an_object.api_current_version = (4, 5, 6)
103
 
        bzrlib.api.require_api(an_object, (1, 2, 3))
 
103
        breezy.api.require_api(an_object, (1, 2, 3))
104
104
 
105
105
    def test_require_api_wanted_is_current_is_ok(self):
106
106
        an_object = TrivialObject()
107
107
        an_object.api_minimum_version = (1, 2, 3)
108
108
        an_object.api_current_version = (4, 5, 6)
109
 
        bzrlib.api.require_api(an_object, (4, 5, 6))
 
109
        breezy.api.require_api(an_object, (4, 5, 6))
110
110
 
111
111
    def test_require_api_wanted_is_above_minimum_is_ok(self):
112
112
        an_object = TrivialObject()
113
113
        an_object.api_minimum_version = (1, 2, 3)
114
114
        an_object.api_current_version = (4, 5, 6)
115
 
        bzrlib.api.require_api(an_object, (1, 2, 4))
 
115
        breezy.api.require_api(an_object, (1, 2, 4))
116
116
 
117
117
    def test_require_api_wanted_is_below_current_is_ok(self):
118
118
        an_object = TrivialObject()
119
119
        an_object.api_minimum_version = (1, 2, 3)
120
120
        an_object.api_current_version = (4, 5, 6)
121
 
        bzrlib.api.require_api(an_object, (4, 5, 5))
 
121
        breezy.api.require_api(an_object, (4, 5, 5))
122
122
 
123
123
    def test_require_api_wanted_is_below_minimum_raises(self):
124
124
        an_object = TrivialObject()
125
125
        an_object.api_minimum_version = (1, 2, 3)
126
126
        an_object.api_current_version = (4, 5, 6)
127
127
        err = self.assertRaises(IncompatibleAPI,
128
 
            bzrlib.api.require_api, an_object, (1, 2, 2))
 
128
            breezy.api.require_api, an_object, (1, 2, 2))
129
129
        self.assertEqual(err.api, an_object)
130
130
        self.assertEqual(err.wanted, (1, 2, 2))
131
131
        self.assertEqual(err.minimum, (1, 2, 3))
136
136
        an_object.api_minimum_version = (1, 2, 3)
137
137
        an_object.api_current_version = (4, 5, 6)
138
138
        err = self.assertRaises(IncompatibleAPI,
139
 
            bzrlib.api.require_api, an_object, (4, 5, 7))
 
139
            breezy.api.require_api, an_object, (4, 5, 7))
140
140
        self.assertEqual(err.api, an_object)
141
141
        self.assertEqual(err.wanted, (4, 5, 7))
142
142
        self.assertEqual(err.minimum, (1, 2, 3))