app: Add `git cola archive` sub-command
[git-cola.git] / test / test_cola_settings.py
blobcfe088815189259ff3a0473394d80a978b00a596
1 import unittest
2 import os
4 from cola import settings
5 import helper
7 class SettingsTestCase(unittest.TestCase):
8 """Tests the cola.settings module"""
9 def setUp(self):
10 settings.Settings._file = self._file = helper.tmp_path('settings')
11 settings.Settings.load_dot_cola = lambda x, y: None
13 def tearDown(self):
14 if os.path.exists(self._file):
15 os.remove(self._file)
17 def model(self):
18 return settings.Settings()
20 def test_gui_save_restore(self):
21 """Test saving and restoring gui state"""
22 model = self.model()
23 model.gui_state['test-gui'] = {'foo':'bar'}
24 model.save()
26 model = self.model()
27 state = model.gui_state.get('test-gui', {})
28 self.assertTrue('foo' in state)
29 self.assertEqual(state['foo'], 'bar')
31 def test_bookmarks_save_restore(self):
32 """Test the bookmark save/restore feature"""
33 model = self.model()
34 model.add_bookmark('test-bookmark')
35 model.save()
37 model = self.model()
38 bookmarks = model.bookmarks
39 self.assertEqual(len(model.bookmarks), 1)
40 self.assertTrue('test-bookmark' in bookmarks)
42 model.remove_bookmark('test-bookmark')
43 bookmarks = model.bookmarks
44 self.assertEqual(len(bookmarks), 0)
45 self.assertFalse('test-bookmark' in bookmarks)
48 if __name__ == '__main__':
49 unittest.main()