diff options
author | hut <hut@lavabit.com> | 2010-01-01 19:25:47 +0100 |
---|---|---|
committer | hut <hut@lavabit.com> | 2010-01-01 19:25:47 +0100 |
commit | 0a1bc7598776c360b469a64316a1c69c0a914b5f (patch) | |
tree | d4c2da5c32d5216a2d6d478f0ed5ea41f85d8bec /test/tc_bookmarks.py | |
parent | d955e3f04a2b0509e8053a15a1f916bfb5677af2 (diff) | |
download | ranger-0a1bc7598776c360b469a64316a1c69c0a914b5f.tar.gz |
bookmarks: added testcase, documentation, setting
Diffstat (limited to 'test/tc_bookmarks.py')
-rw-r--r-- | test/tc_bookmarks.py | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/test/tc_bookmarks.py b/test/tc_bookmarks.py new file mode 100644 index 00000000..a0f6bf30 --- /dev/null +++ b/test/tc_bookmarks.py @@ -0,0 +1,73 @@ +if __name__ == '__main__': from __init__ import init; init() + +from os.path import realpath, join, dirname +import unittest +import os +import time + +from ranger.container.bookmarks import Bookmarks + +TESTDIR = realpath(join(dirname(__file__), 'testdir')) +BMFILE = join(TESTDIR, 'bookmarks') + +class TestDisplayable(unittest.TestCase): + def setUp(self): + try: + os.remove(BMFILE) + except: + pass + + def tearDown(self): + try: + os.remove(BMFILE) + except: + pass + + def test_adding_bookmarks(self): + bm = Bookmarks(BMFILE, str, autosave=False) + bm.load() + bm['a'] = 'fooo' + self.assertEqual(bm['a'], 'fooo') + + def test_sharing_bookmarks_between_instances(self): + bm = Bookmarks(BMFILE, str, autosave=True) + bm2 = Bookmarks(BMFILE, str, autosave=True) + + bm.load() + bm2.load() + bm['a'] = 'fooo' + self.assertRaises(KeyError, bm2.__getitem__, 'a') + + bm.save() + bm2.load() + self.assertEqual(bm['a'], bm2['a']) + + bm2['a'] = 'bar' + + bm.save() + bm2.save() + bm.load() + bm2.load() + + self.assertEqual(bm['a'], bm2['a']) + + def test_messing_around(self): + bm = Bookmarks(BMFILE, str, autosave=False) + bm2 = Bookmarks(BMFILE, str, autosave=False) + + bm.load() + bm['a'] = 'car' + + bm2.load() + self.assertRaises(KeyError, bm2.__getitem__, 'a') + + bm2.save() + bm.update() + bm.save() + bm.load() + bm2.load() + + self.assertEqual(bm['a'], bm2['a']) + +if __name__ == '__main__': + unittest.main() |