/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_shelf_ui.py

  • Committer: Richard Wilbur
  • Date: 2016-02-04 19:07:28 UTC
  • mto: This revision was merged to the branch mainline in revision 6618.
  • Revision ID: richard.wilbur@gmail.com-20160204190728-p0zvfii6zase0fw7
Update COPYING.txt from the original http://www.gnu.org/licenses/gpl-2.0.txt  (Only differences were in whitespace.)  Thanks to Petr Stodulka for pointing out the discrepancy.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2008-2011, 2016 Canonical Ltd
 
1
# Copyright (C) 2008, 2009, 2010 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
15
15
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
16
 
17
17
 
 
18
from cStringIO import StringIO
18
19
import os
19
20
import sys
20
21
from textwrap import dedent
21
22
 
22
 
from .. import (
 
23
from bzrlib import (
23
24
    errors,
24
25
    shelf_ui,
25
26
    revision,
26
 
    shelf,
27
27
    tests,
28
 
    )
29
 
from ..sixish import (
30
 
    BytesIO,
31
 
    )
32
 
from . import script
33
 
from . import (
 
28
)
 
29
from bzrlib.tests import script
 
30
from bzrlib.tests import (
34
31
    features,
35
32
    )
36
33
 
45
42
                                  auto, auto_apply, file_list, message,
46
43
                                  destroy, reporter=reporter)
47
44
        self.expected = []
48
 
        self.diff_writer = BytesIO()
 
45
        self.diff_writer = StringIO()
49
46
 
50
47
    def expect(self, message, response):
51
48
        self.expected.append((message, response))
62
59
        return response
63
60
 
64
61
 
65
 
LINES_AJ = b'a\nb\nc\nd\ne\nf\ng\nh\ni\nj\n'
66
 
 
67
 
 
68
 
LINES_ZY = b'z\nb\nc\nd\ne\nf\ng\nh\ni\ny\n'
69
 
 
70
 
 
71
 
LINES_AY = b'a\nb\nc\nd\ne\nf\ng\nh\ni\ny\n'
 
62
LINES_AJ = 'a\nb\nc\nd\ne\nf\ng\nh\ni\nj\n'
 
63
 
 
64
 
 
65
LINES_ZY = 'z\nb\nc\nd\ne\nf\ng\nh\ni\ny\n'
 
66
 
 
67
 
 
68
LINES_AY = 'a\nb\nc\nd\ne\nf\ng\nh\ni\ny\n'
72
69
 
73
70
 
74
71
class ShelfTestCase(tests.TestCaseWithTransport):
76
73
    def create_shelvable_tree(self):
77
74
        tree = self.make_branch_and_tree('tree')
78
75
        self.build_tree_contents([('tree/foo', LINES_AJ)])
79
 
        tree.add('foo', b'foo-id')
 
76
        tree.add('foo', 'foo-id')
80
77
        tree.commit('added foo')
81
78
        self.build_tree_contents([('tree/foo', LINES_ZY)])
82
79
        return tree
153
150
 
154
151
    def test_shelve_binary_change(self):
155
152
        tree = self.create_shelvable_tree()
156
 
        self.build_tree_contents([('tree/foo', b'\x00')])
 
153
        self.build_tree_contents([('tree/foo', '\x00')])
157
154
        tree.lock_tree_write()
158
155
        self.addCleanup(tree.unlock)
159
156
        shelver = ExpectShelver(tree, tree.basis_tree())
219
216
        self.requireFeature(features.SymlinkFeature)
220
217
        tree = self.create_shelvable_tree()
221
218
        os.symlink('bar', 'tree/baz')
222
 
        tree.add('baz', b'baz-id')
 
219
        tree.add('baz', 'baz-id')
223
220
        tree.commit("Add symlink")
224
221
        os.unlink('tree/baz')
225
222
        os.symlink('vax', 'tree/baz')
305
302
        tree1_root_id = tree1.get_root_id()
306
303
        tree2 = self.make_branch_and_tree('tree2')
307
304
        rev2 = tree2.commit('add root')
308
 
        self.assertNotEqual(tree1_root_id, tree2.get_root_id())
 
305
        self.assertNotEquals(tree1_root_id, tree2.get_root_id())
309
306
        tree1.merge_from_branch(tree2.branch,
310
307
                                from_revision=revision.NULL_REVISION)
311
308
        tree1.commit('merging in tree2')
312
 
        self.assertEqual(tree1_root_id, tree1.get_root_id())
 
309
        self.assertEquals(tree1_root_id, tree1.get_root_id())
313
310
        # This is essentially assertNotRaises(InconsistentDelta)
314
311
        # With testtools 0.9.9, it can be rewritten as:
315
312
        # with ExpectedException(AssertionError,
378
375
 
379
376
    def test_shelve_binary_change(self):
380
377
        tree = self.create_shelvable_tree()
381
 
        self.build_tree_contents([('tree/foo', b'\x00')])
 
378
        self.build_tree_contents([('tree/foo', '\x00')])
382
379
        tree.lock_tree_write()
383
380
        self.addCleanup(tree.unlock)
384
381
        shelver = ExpectShelver(tree, tree.basis_tree(),
448
445
        self.requireFeature(features.SymlinkFeature)
449
446
        tree = self.create_shelvable_tree()
450
447
        os.symlink('bar', 'tree/baz')
451
 
        tree.add('baz', b'baz-id')
 
448
        tree.add('baz', 'baz-id')
452
449
        tree.commit("Add symlink")
453
450
        os.unlink('tree/baz')
454
451
        os.symlink('vax', 'tree/baz')
471
468
        tree.lock_write()
472
469
        try:
473
470
            self.build_tree_contents([('tree/foo', LINES_AJ)])
474
 
            tree.add('foo', b'foo-id')
 
471
            tree.add('foo', 'foo-id')
475
472
            tree.commit('added foo')
476
473
            self.build_tree_contents([('tree/foo', LINES_ZY)])
477
474
            shelver = shelf_ui.Shelver(tree, tree.basis_tree(),
515
512
 
516
513
    def test_unshelve_args_preview(self):
517
514
        tree = self.create_tree_with_shelf()
518
 
        write_diff_to = BytesIO()
 
515
        write_diff_to = StringIO()
519
516
        unshelver = shelf_ui.Unshelver.from_args(
520
517
            directory='tree', action='preview', write_diff_to=write_diff_to)
521
518
        try:
569
566
            shelf_file.write('garbage')
570
567
        finally:
571
568
            shelf_file.close()
572
 
        self.assertRaises(shelf.InvalidShelfId,
 
569
        self.assertRaises(errors.InvalidShelfId,
573
570
            shelf_ui.Unshelver.from_args, directory='tree',
574
571
            action='delete-only', shelf_id='foo')
575
572
 
581
578
        self.create_tree_with_shelf()
582
579
        self.run_script("""
583
580
$ cd tree
584
 
$ brz unshelve --keep
 
581
$ bzr unshelve --keep
585
582
2>Using changes with id "1".
586
583
2> M  foo
587
584
2>All changes applied successfully.
591
588
        self.create_tree_with_shelf()
592
589
        self.run_script("""
593
590
$ cd tree
594
 
$ brz unshelve --delete-only
 
591
$ bzr unshelve --delete-only
595
592
2>Deleted changes with id "1".
596
593
""")
597
594
 
599
596
        self.create_tree_with_shelf()
600
597
        self.run_script("""
601
598
$ cd tree
602
 
$ brz unshelve --apply
 
599
$ bzr unshelve --apply
603
600
2>Using changes with id "1".
604
601
2> M  foo
605
602
2>All changes applied successfully.
610
607
        self.create_tree_with_shelf()
611
608
        self.run_script("""
612
609
$ cd tree
613
 
$ brz unshelve --dry-run
 
610
$ bzr unshelve --dry-run
614
611
2>Using changes with id "1".
615
612
2> M  foo
616
613
""")