diff options
Diffstat (limited to 'tests/test_naive_completion.py')
-rw-r--r-- | tests/test_naive_completion.py | 112 |
1 files changed, 66 insertions, 46 deletions
diff --git a/tests/test_naive_completion.py b/tests/test_naive_completion.py index 6560f82e..cf2824e4 100644 --- a/tests/test_naive_completion.py +++ b/tests/test_naive_completion.py @@ -8,77 +8,97 @@ from utils import completions_to_set @pytest.fixture def completer(): import pgcli.pgcompleter as pgcompleter + return pgcompleter.PGCompleter(smart_completion=False) @pytest.fixture def complete_event(): from mock import Mock + return Mock() + def test_empty_string_completion(completer, complete_event): - text = '' + text = "" position = 0 - result = completions_to_set(completer.get_completions( - Document(text=text, cursor_position=position), - complete_event)) - assert result == completions_to_set( - map(Completion, completer.all_completions)) + result = completions_to_set( + completer.get_completions( + Document(text=text, cursor_position=position), complete_event + ) + ) + assert result == completions_to_set(map(Completion, completer.all_completions)) def test_select_keyword_completion(completer, complete_event): - text = 'SEL' - position = len('SEL') - result = completions_to_set(completer.get_completions( - Document(text=text, cursor_position=position), - complete_event)) - assert result == completions_to_set( - [Completion(text='SELECT', start_position=-3)]) + text = "SEL" + position = len("SEL") + result = completions_to_set( + completer.get_completions( + Document(text=text, cursor_position=position), complete_event + ) + ) + assert result == completions_to_set([Completion(text="SELECT", start_position=-3)]) def test_function_name_completion(completer, complete_event): - text = 'SELECT MA' - position = len('SELECT MA') - result = completions_to_set(completer.get_completions( - Document(text=text, cursor_position=position), - complete_event)) - assert result == completions_to_set([ - Completion(text='MATERIALIZED VIEW', start_position=-2), - Completion(text='MAX', start_position=-2), - Completion(text='MAXEXTENTS', start_position=-2)]) + text = "SELECT MA" + position = len("SELECT MA") + result = completions_to_set( + completer.get_completions( + Document(text=text, cursor_position=position), complete_event + ) + ) + assert result == completions_to_set( + [ + Completion(text="MATERIALIZED VIEW", start_position=-2), + 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 = completions_to_set(completer.get_completions( - Document(text=text, cursor_position=position), - complete_event)) - assert result == completions_to_set( - map(Completion, completer.all_completions)) + text = "SELECT FROM users" + position = len("SELECT ") + result = completions_to_set( + completer.get_completions( + Document(text=text, cursor_position=position), complete_event + ) + ) + assert result == completions_to_set(map(Completion, completer.all_completions)) def test_alter_well_known_keywords_completion(completer, complete_event): - text = 'ALTER ' + text = "ALTER " position = len(text) - result = completions_to_set(completer.get_completions( - Document(text=text, cursor_position=position), - complete_event, - smart_completion=True)) - assert result > completions_to_set([ - Completion(text="DATABASE", display_meta='keyword'), - Completion(text="TABLE", display_meta='keyword'), - Completion(text="SYSTEM", display_meta='keyword'), - ]) - assert completions_to_set( - [Completion(text="CREATE", display_meta="keyword")]) not in result + result = completions_to_set( + completer.get_completions( + Document(text=text, cursor_position=position), + complete_event, + smart_completion=True, + ) + ) + assert result > completions_to_set( + [ + Completion(text="DATABASE", display_meta="keyword"), + Completion(text="TABLE", display_meta="keyword"), + Completion(text="SYSTEM", display_meta="keyword"), + ] + ) + assert ( + completions_to_set([Completion(text="CREATE", display_meta="keyword")]) + not in result + ) def test_special_name_completion(completer, complete_event): - text = '\\' - position = len('\\') - result = completions_to_set(completer.get_completions( - Document(text=text, cursor_position=position), - complete_event)) + text = "\\" + position = len("\\") + result = completions_to_set( + completer.get_completions( + Document(text=text, cursor_position=position), complete_event + ) + ) # Special commands will NOT be suggested during naive completion mode. assert result == completions_to_set([]) |