summaryrefslogtreecommitdiff
path: root/test/test_tabs.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_tabs.py')
-rw-r--r--test/test_tabs.py50
1 files changed, 40 insertions, 10 deletions
diff --git a/test/test_tabs.py b/test/test_tabs.py
index 0a6930d4..d2503df2 100644
--- a/test/test_tabs.py
+++ b/test/test_tabs.py
@@ -12,16 +12,24 @@ class DummyTab(Tab):
count = 0
def __init__(self):
- self.name = 'dummy%s' % self.count
+ self._name = 'dummy%s' % self.count
DummyTab.count += 1
+ @property
+ def name(self):
+ return self._name
+
+ @name.setter
+ def name(self, value):
+ self._name = value
+
@staticmethod
def reset():
DummyTab.count = 0
def test_append():
DummyTab.reset()
- tabs = Tabs(h)
+ tabs = Tabs(h, None)
dummy = DummyTab()
tabs.append(dummy)
assert tabs[0] is dummy
@@ -38,7 +46,7 @@ def test_append():
def test_delete():
DummyTab.reset()
- tabs = Tabs(h)
+ tabs = Tabs(h, None)
dummy = DummyTab()
dummy2 = DummyTab()
tabs.append(dummy)
@@ -53,7 +61,7 @@ def test_delete():
def test_delete_restore_previous():
DummyTab.reset()
- tabs = Tabs(h)
+ tabs = Tabs(h, None)
dummy = DummyTab()
dummy2 = DummyTab()
dummy3 = DummyTab()
@@ -74,7 +82,7 @@ def test_delete_restore_previous():
def test_delete_other_tab():
DummyTab.reset()
- tabs = Tabs(h)
+ tabs = Tabs(h, None)
dummy = DummyTab()
dummy2 = DummyTab()
dummy3 = DummyTab()
@@ -94,7 +102,7 @@ def test_delete_other_tab():
def test_insert_and_gaps():
DummyTab.reset()
- tabs = Tabs(h)
+ tabs = Tabs(h, None)
dummy = DummyTab()
dummy2 = DummyTab()
dummy3 = DummyTab()
@@ -117,7 +125,7 @@ def test_insert_and_gaps():
def test_replace_tabs():
DummyTab.reset()
- tabs = Tabs(h)
+ tabs = Tabs(h, None)
dummy = DummyTab()
dummy2 = DummyTab()
dummy3 = DummyTab()
@@ -132,7 +140,7 @@ def test_replace_tabs():
def test_prev_next():
DummyTab.reset()
- tabs = Tabs(h)
+ tabs = Tabs(h, None)
dummy = DummyTab()
dummy2 = DummyTab()
dummy3 = DummyTab()
@@ -158,7 +166,7 @@ def test_prev_next():
def test_set_current():
DummyTab.reset()
- tabs = Tabs(h)
+ tabs = Tabs(h, None)
dummy = DummyTab()
dummy2 = DummyTab()
dummy3 = DummyTab()
@@ -174,7 +182,7 @@ def test_set_current():
def test_slice():
DummyTab.reset()
- tabs = Tabs(h)
+ tabs = Tabs(h, None)
dummy = DummyTab()
dummy2 = DummyTab()
dummy3 = DummyTab()
@@ -183,3 +191,25 @@ def test_slice():
tabs.append(dummy3)
assert tabs[1:2][0] is dummy2
+
+def test_find_by_unique_prefix():
+ DummyTab.reset()
+ tabs = Tabs(h, None)
+ t1 = DummyTab()
+ t2 = DummyTab()
+ t3 = DummyTab()
+ tabs.append(t1)
+ tabs.append(t2)
+ tabs.append(t3)
+
+ t1.name = "foo"
+ t2.name = "bar"
+ t3.name = "fnord"
+
+ assert tabs.find_by_unique_prefix("f") == (True, None)
+ assert tabs.find_by_unique_prefix("b") == (True, t2)
+ assert tabs.find_by_unique_prefix("fo") == (True, t1)
+ assert tabs.find_by_unique_prefix("fn") == (True, t3)
+ assert tabs.find_by_unique_prefix("fx") == (False, None)
+ assert tabs.find_by_unique_prefix("x") == (False, None)
+ assert tabs.find_by_unique_prefix("") == (True, None)