mirror of
https://github.com/simon987/Simple-Incremental-Search-Tool.git
synced 2025-04-18 17:56:44 +00:00
48 lines
1.2 KiB
Python
48 lines
1.2 KiB
Python
from unittest import TestCase
|
|
|
|
from storage import LocalStorage, Directory, DuplicateDirectoryException
|
|
|
|
|
|
class LocalStorageTest(TestCase):
|
|
|
|
def setUp(self):
|
|
|
|
s = LocalStorage()
|
|
s.init_db("../database.sql")
|
|
|
|
def test_save_and_retrieve_dir(self):
|
|
|
|
storage = LocalStorage()
|
|
|
|
d = Directory("/some/directory", True, ["opt1", "opt2", "opt3"])
|
|
|
|
storage.save_directory(d)
|
|
|
|
self.assertEqual(storage.dirs()["/some/directory"].enabled, True)
|
|
self.assertEqual(storage.dirs()["/some/directory"].options[0], "opt1")
|
|
|
|
def test_save_and_retrieve_dir_persistent(self):
|
|
|
|
s1 = LocalStorage()
|
|
|
|
d = Directory("/some/directory", True, ["opt1", "opt2", "opt3"])
|
|
|
|
s1.save_directory(d)
|
|
|
|
s2 = LocalStorage()
|
|
self.assertEqual(s2.dirs()["/some/directory"].enabled, True)
|
|
self.assertEqual(s2.dirs()["/some/directory"].options[0], "opt1")
|
|
|
|
def test_reject_duplicate_path(self):
|
|
|
|
s = LocalStorage()
|
|
|
|
d1 = Directory("/some/directory", True, ["opt1", "opt2"])
|
|
d2 = Directory("/some/directory", True, ["opt1", "opt2"])
|
|
|
|
s.save_directory(d1)
|
|
|
|
with self.assertRaises(DuplicateDirectoryException) as e:
|
|
s.save_directory(d2)
|
|
|