summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIryna Cherniavska <i.chernyavska@gmail.com>2014-12-27 13:49:35 -0800
committerIryna Cherniavska <i.chernyavska@gmail.com>2014-12-27 13:49:35 -0800
commit5b4644ba34cf5a979cbeb6124c7773eb670f358d (patch)
treec9e218fb805578b78f5de4237cd41812388e46c3
parent1c99af49cd6a7ad962bf0b760d50a2f154a9bdb6 (diff)
added naive completion tests
-rw-r--r--tests/test_naive_completion.py44
1 files changed, 38 insertions, 6 deletions
diff --git a/tests/test_naive_completion.py b/tests/test_naive_completion.py
index b5798aea..12710336 100644
--- a/tests/test_naive_completion.py
+++ b/tests/test_naive_completion.py
@@ -7,9 +7,41 @@ def completer():
import pgcli.pgcompleter as pgcompleter
return pgcompleter.PGCompleter(smart_completion=False)
-def test_empty_string_completion(completer):
- #print set(completer.get_completions(Document(text='')))
- #print set(map(Completion, completer.all_completions))
- #assert False
- #assert set(map(Completion, completer.keywords)) == set(completer.get_completions(Document(text='')))
- pass
+@pytest.fixture
+def complete_event():
+ from mock import Mock
+ return Mock()
+
+def test_empty_string_completion(completer, complete_event):
+ text = ''
+ position = 0
+ result = set(completer.get_completions(
+ Document(text=text, cursor_position=position),
+ complete_event))
+ assert result == set(map(Completion, completer.all_completions))
+
+def test_select_keyword_completion(completer, complete_event):
+ text = 'SEL'
+ position = len('SEL')
+ result = set(completer.get_completions(
+ Document(text=text, cursor_position=position),
+ complete_event))
+ assert result == set([Completion(text='SELECT', start_position=-3)])
+
+def test_function_name_completion(completer, complete_event):
+ text = 'SELECT MA'
+ position = len('SELECT MA')
+ result = set(completer.get_completions(
+ Document(text=text, cursor_position=position),
+ complete_event))
+ assert result == set([
+ Completion(text='MAX', start_position=-2),
+ Completion(text='MAXEXTENTS', start_position=-2)])
+
+def test_column_name_completion(completer, complete_event):
+ text = 'SELECT FROM users'
+ position = len('SELECT ')
+ result = set(completer.get_completions(
+ Document(text=text, cursor_position=position),
+ complete_event))
+ assert result == set(map(Completion, completer.all_completions))