/b-gtk/fix-viz

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/b-gtk/fix-viz

« back to all changes in this revision

Viewing changes to tests/test_commit.py

  • Committer: Curtis Hovey
  • Date: 2012-02-03 18:59:38 UTC
  • mto: This revision was merged to the branch mainline in revision 773.
  • Revision ID: sinzui.is@verizon.net-20120203185938-ra0jl3b1rn69gmmz
Verify the menu and its items are created.

Show diffs side-by-side

added added

removed removed

Lines of Context:
29
29
    from bzrlib.tests.features import UnicodeFilenameFeature
30
30
except ImportError: # bzr < 2.5
31
31
    from bzrlib.tests import UnicodeFilenameFeature
32
 
try:
33
 
    from bzrlib import bencode
34
 
except ImportError:
35
 
    from bzrlib.util import bencode
 
32
from bzrlib import bencode
36
33
 
37
34
from bzrlib.plugins.gtk import (
38
35
    commit,
39
36
    commitmsgs,
40
37
    )
 
38
from bzrlib.plugins.gtk.commitmsgs import SavedCommitMessagesManager
 
39
from bzrlib.plugins.gtk.tests import MockMethod
41
40
 
42
41
 
43
42
# TODO: All we need is basic ancestry code to test this, we shouldn't need a
147
146
 
148
147
class TestCommitDialogSimple(tests.TestCaseWithTransport):
149
148
 
 
149
    def test_init(self):
 
150
        MockMethod.bind(self, CommitDialogNoWidgets, 'setup_params')
 
151
        MockMethod.bind(self, CommitDialogNoWidgets, 'construct')
 
152
        MockMethod.bind(self, CommitDialogNoWidgets, 'fill_in_data')
 
153
 
 
154
        tree = self.make_branch_and_tree('tree')
 
155
        rev_id = tree.commit('first')
 
156
        dlg = CommitDialogNoWidgets(tree)
 
157
        self.assertIs(tree, dlg._wt)
 
158
        self.assertIs(None, dlg._selected)
 
159
        self.assertTrue(dlg._enable_per_file_commits)
 
160
        self.assertTrue(dlg._commit_all_changes)
 
161
        self.assertIs(None, dlg.committed_revision_id)
 
162
        self.assertIs(None, dlg._last_selected_file)
 
163
        self.assertIsInstance(
 
164
            dlg._saved_commit_messages_manager, SavedCommitMessagesManager)
 
165
        self.assertTrue(CommitDialogNoWidgets.setup_params.called)
 
166
        self.assertTrue(CommitDialogNoWidgets.construct.called)
 
167
        self.assertTrue(CommitDialogNoWidgets.fill_in_data.called)
 
168
 
150
169
    def test_setup_parameters_no_pending(self):
151
170
        tree = self.make_branch_and_tree('tree')
152
171
        rev_id = tree.commit('first')
195
214
        self.assertEqual([], delta.removed)
196
215
        self.assertEqual([(u'a', 'a-id', 'file')], delta.added)
197
216
 
 
217
    def test_on_treeview_files_cursor_changed_no_selection(self):
 
218
        MockMethod.bind(self, CommitDialogNoWidgets, '_update_per_file_info')
 
219
        tree = self.make_branch_and_tree('tree')
 
220
        rev_id = tree.commit('first')
 
221
        dlg = CommitDialogNoWidgets(tree)
 
222
        treeview = Gtk.TreeView()
 
223
        dlg._on_treeview_files_cursor_changed(treeview)
 
224
        self.assertFalse(CommitDialogNoWidgets._update_per_file_info.called)
 
225
 
 
226
    def test_on_treeview_files_cursor_changed_with_destroyed_treeview(self):
 
227
        MockMethod.bind(self, CommitDialogNoWidgets, '_update_per_file_info')
 
228
        tree = self.make_branch_and_tree('tree')
 
229
        rev_id = tree.commit('first')
 
230
        dlg = CommitDialogNoWidgets(tree)
 
231
        treeview = Gtk.TreeView()
 
232
        treeview.destroy()
 
233
        dlg._on_treeview_files_cursor_changed(treeview)
 
234
        self.assertFalse(CommitDialogNoWidgets._update_per_file_info.called)
 
235
 
198
236
 
199
237
class TestCommitDialog(tests.TestCaseWithTransport):
200
238
 
299
337
 
300
338
        dlg = commit.CommitDialog(tree)
301
339
        values = [(r[0], r[1], r[2], r[3], r[4]) for r in dlg._files_store]
302
 
        self.assertEqual([(None, None, True, 'All Files', ''),
 
340
        self.assertEqual([("", "", True, 'All Files', ''),
303
341
                          ('a-id', 'a', True, 'a', 'added'),
304
342
                          ('b-id', 'b', True, 'b/', 'added'),
305
343
                          ('c-id', 'b/c', True, 'b/c', 'added'),
316
354
 
317
355
        dlg = commit.CommitDialog(tree)
318
356
        values = [(r[0], r[1], r[2], r[3], r[4]) for r in dlg._files_store]
319
 
        self.assertEqual([(None, None, True, 'All Files', ''),
 
357
        self.assertEqual([("", "", True, 'All Files', ''),
320
358
                          ('b-id', 'd', True, 'b/ => d/', 'renamed'),
321
359
                          ('a-id', 'd/a', True, 'a => d/a', 'renamed'),
322
360
                         ], values)
331
369
 
332
370
        dlg = commit.CommitDialog(tree)
333
371
        values = [(r[0], r[1], r[2], r[3], r[4]) for r in dlg._files_store]
334
 
        self.assertEqual([(None, None, True, 'All Files', ''),
 
372
        self.assertEqual([("", "", True, 'All Files', ''),
335
373
                          ('a-id', 'a', True, 'a', 'modified'),
336
374
                         ], values)
337
375
 
351
389
 
352
390
        dlg = commit.CommitDialog(tree)
353
391
        values = [(r[0], r[1], r[2], r[3], r[4]) for r in dlg._files_store]
354
 
        self.assertEqual([(None, None, True, 'All Files', ''),
 
392
        self.assertEqual([("", "", True, 'All Files', ''),
355
393
                          ('b-id', 'd', True, 'b/ => d/', 'renamed'),
356
394
                          ('a-id', 'd/a', True, 'a => d/a', 'renamed and modified'),
357
395
                          ('c-id', 'd/c', True, 'd/c', 'modified'),
374
412
 
375
413
        dlg = commit.CommitDialog(tree)
376
414
        values = [(r[0], r[1], r[2], r[3], r[4]) for r in dlg._files_store]
377
 
        self.assertEqual([(None, None, True, 'All Files', ''),
 
415
        self.assertEqual([("", "", True, 'All Files', ''),
378
416
                          ('a-id', 'a', True, 'a => a/', 'kind changed'),
379
417
                          # ('b-id', 'c', True, 'b => c/', 'renamed and modified'),
380
418
                         ], values)
390
428
 
391
429
        dlg = commit.CommitDialog(tree)
392
430
        values = [(r[0], r[1], r[2], r[3], r[4]) for r in dlg._files_store]
393
 
        self.assertEqual([(None, None, True, 'All Files', ''),
 
431
        self.assertEqual([("", "", True, 'All Files', ''),
394
432
                          ('a-id', 'a', True, 'a', 'removed'),
395
433
                          ('b-id', 'b', True, 'b/', 'removed'),
396
434
                         ], values)
405
443
 
406
444
        dlg = commit.CommitDialog(tree, selected='a')
407
445
        values = [(r[0], r[1], r[2], r[3], r[4]) for r in dlg._files_store]
408
 
        self.assertEqual([(None, None, False, 'All Files', ''),
 
446
        self.assertEqual([("", "", False, 'All Files', ''),
409
447
                          ('a-id', 'a', True, 'a', 'added'),
410
448
                          ('b-id', 'b', False, 'b/', 'added'),
411
449
                         ], values)
589
627
        tree.add(['a', 'b'], ['a-id', 'b-id'])
590
628
 
591
629
        dlg = commit.CommitDialog(tree)
592
 
        self.assertEqual([(None, None, True),
 
630
        self.assertEqual([("", "", True),
593
631
                          ('a-id', 'a', True),
594
632
                          ('b-id', 'b', True),
595
633
                         ], [(r[0], r[1], r[2]) for r in dlg._files_store])
604
642
 
605
643
        # Toggle a single entry should set just that entry to False
606
644
        dlg._toggle_commit(None, 1, dlg._files_store)
607
 
        self.assertEqual([(None, None, True),
 
645
        self.assertEqual([("", "", True),
608
646
                          ('a-id', 'a', False),
609
647
                          ('b-id', 'b', True),
610
648
                         ], [(r[0], r[1], r[2]) for r in dlg._files_store])
611
649
 
612
650
        # Toggling the main entry should set all entries
613
651
        dlg._toggle_commit(None, 0, dlg._files_store)
614
 
        self.assertEqual([(None, None, False),
 
652
        self.assertEqual([("", "", False),
615
653
                          ('a-id', 'a', False),
616
654
                          ('b-id', 'b', False),
617
655
                         ], [(r[0], r[1], r[2]) for r in dlg._files_store])
618
656
 
619
657
        dlg._toggle_commit(None, 2, dlg._files_store)
620
 
        self.assertEqual([(None, None, False),
 
658
        self.assertEqual([("", "", False),
621
659
                          ('a-id', 'a', False),
622
660
                          ('b-id', 'b', True),
623
661
                         ], [(r[0], r[1], r[2]) for r in dlg._files_store])
624
662
 
625
663
        dlg._toggle_commit(None, 0, dlg._files_store)
626
 
        self.assertEqual([(None, None, True),
 
664
        self.assertEqual([("", "", True),
627
665
                          ('a-id', 'a', True),
628
666
                          ('b-id', 'b', True),
629
667
                         ], [(r[0], r[1], r[2]) for r in dlg._files_store])