~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_store.py

  • Committer: Martin Pool
  • Date: 2006-03-21 12:26:54 UTC
  • mto: This revision was merged to the branch mainline in revision 1621.
  • Revision ID: mbp@sourcefrog.net-20060321122654-514047ed65795a17
New developer commands 'weave-list' and 'weave-join'.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2005 Canonical Ltd
2
 
#
 
1
# Copyright (C) 2005 by Canonical Development Ltd
 
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
5
5
# the Free Software Foundation; either version 2 of the License, or
6
6
# (at your option) any later version.
7
 
#
 
7
 
8
8
# This program is distributed in the hope that it will be useful,
9
9
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10
10
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11
11
# GNU General Public License for more details.
12
 
#
 
12
 
13
13
# You should have received a copy of the GNU General Public License
14
14
# along with this program; if not, write to the Free Software
15
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
38
38
        f = store.get(fileid)
39
39
        self.assertEqual(f.read(), value)
40
40
 
41
 
    def test_add_str_deprecated(self):
42
 
        os.mkdir('a')
43
 
        store = self.get_store('a')
44
 
        self.callDeprecated(['Passing a string to Store.add'
45
 
                             ' was deprecated in version 0.11.'],
46
 
                            store.add, 'foo', '1')
47
 
        self.assertEqual('foo', store.get('1').read())
48
 
 
49
41
    def fill_store(self, store):
50
42
        store.add(StringIO('hello'), 'a')
51
43
        store.add(StringIO('other'), 'b')
56
48
        """Test copying"""
57
49
        os.mkdir('a')
58
50
        store_a = self.get_store('a')
59
 
        store_a.add(StringIO('foo'), '1')
 
51
        store_a.add('foo', '1')
60
52
        os.mkdir('b')
61
53
        store_b = self.get_store('b')
62
54
        store_b.copy_all_ids(store_a)
89
81
class TestCompressedTextStore(TestCaseInTempDir, TestStores):
90
82
 
91
83
    def get_store(self, path=u'.'):
92
 
        t = transport.get_transport(path)
 
84
        t = LocalTransport(path)
93
85
        return TextStore(t, compressed=True)
94
86
 
95
87
    def test_total_size(self):
110
102
class TestMemoryStore(TestCase):
111
103
    
112
104
    def get_store(self):
113
 
        return TextStore(MemoryTransport())
 
105
        return store.ImmutableMemoryStore()
114
106
    
 
107
    def test_imports(self):
 
108
        from bzrlib.store import ImmutableMemoryStore
 
109
 
115
110
    def test_add_and_retrieve(self):
116
111
        store = self.get_store()
117
112
        store.add(StringIO('hello'), 'aa')
146
141
class TestTextStore(TestCaseInTempDir, TestStores):
147
142
 
148
143
    def get_store(self, path=u'.'):
149
 
        t = transport.get_transport(path)
 
144
        t = LocalTransport(path)
150
145
        return TextStore(t, compressed=False)
151
146
 
152
147
    def test_total_size(self):
164
159
class TestMixedTextStore(TestCaseInTempDir, TestStores):
165
160
 
166
161
    def get_store(self, path=u'.', compressed=True):
167
 
        t = transport.get_transport(path)
 
162
        t = LocalTransport(path)
168
163
        return TextStore(t, compressed=compressed)
169
164
 
170
165
    def test_get_mixed(self):
404
399
        my_store = store.TransportStore(MemoryTransport())
405
400
        self.assertEqual('%25', my_store._relpath('%'))
406
401
 
407
 
    def test_escaped_uppercase(self):
408
 
        """Uppercase letters are escaped for safety on Windows"""
409
 
        my_store = store.TransportStore(MemoryTransport(), escaped=True)
410
 
        # a particularly perverse file-id! :-)
411
 
        self.assertEquals(my_store._escape_file_id('C:<>'), '%43%3a%3c%3e')
412
 
 
413
402
 
414
403
class TestVersionFileStore(TestCaseWithTransport):
415
404