SYMBOL INDEX (838 symbols across 63 files) FILE: pgcli/auth.py function keyring_initialize (line 19) | def keyring_initialize(keyring_enabled, *, logger): function keyring_get_password (line 33) | def keyring_get_password(key): function keyring_set_password (line 48) | def keyring_set_password(key, passwd): FILE: pgcli/completion_refresher.py class CompletionRefresher (line 8) | class CompletionRefresher: method __init__ (line 11) | def __init__(self): method refresh (line 15) | def refresh(self, executor, special, callbacks, history=None, settings... method is_refreshing (line 45) | def is_refreshing(self): method _bg_refresh (line 48) | def _bg_refresh(self, pgexecute, special, callbacks, history=None, set... function refresher (line 90) | def refresher(name, refreshers=CompletionRefresher.refreshers): function refresh_schemata (line 103) | def refresh_schemata(completer, executor): function refresh_tables (line 109) | def refresh_tables(completer, executor): function refresh_views (line 116) | def refresh_views(completer, executor): function refresh_types (line 122) | def refresh_types(completer, executor): function refresh_databases (line 127) | def refresh_databases(completer, executor): function refresh_casing (line 132) | def refresh_casing(completer, executor): function refresh_functions (line 147) | def refresh_functions(completer, executor): FILE: pgcli/config.py function config_location (line 10) | def config_location(): function load_config (line 19) | def load_config(usr_cfg, def_cfg=None): function ensure_dir_exists (line 32) | def ensure_dir_exists(path): function write_default_config (line 37) | def write_default_config(source, destination, overwrite=False): function upgrade_config (line 47) | def upgrade_config(config, def_config): function get_config_filename (line 52) | def get_config_filename(pgclirc_file=None): function get_config (line 56) | def get_config(pgclirc_file=None): function get_casing_file (line 69) | def get_casing_file(config): function skip_initial_comment (line 76) | def skip_initial_comment(f_stream: TextIO) -> int: FILE: pgcli/explain_output_formatter.py class ExplainOutputFormatter (line 8) | class ExplainOutputFormatter: method __init__ (line 9) | def __init__(self, max_width): method format_output (line 12) | def format_output(self, cur, headers, **output_kwargs): FILE: pgcli/key_bindings.py function pgcli_bindings (line 17) | def pgcli_bindings(pgcli): FILE: pgcli/magic.py function load_ipython_extension (line 9) | def load_ipython_extension(ipython): function pgcli_line_magic (line 20) | def pgcli_line_magic(line): FILE: pgcli/main.py class PgCliQuitError (line 136) | class PgCliQuitError(Exception): function notify_callback (line 140) | def notify_callback(notify: Notify): class PGCli (line 147) | class PGCli: method set_default_pager (line 151) | def set_default_pager(self, config): method __init__ (line 172) | def __init__( method quit (line 308) | def quit(self): method toggle_named_query_quiet (line 311) | def toggle_named_query_quiet(self): method _is_named_query_execution (line 318) | def _is_named_query_execution(self, text): method register_special_commands (line 323) | def register_special_commands(self): method toggle_verbose_errors (line 418) | def toggle_verbose_errors(self, pattern, **_): method echo (line 431) | def echo(self, pattern, **_): method change_table_format (line 434) | def change_table_format(self, pattern, **_): method info_connection (line 447) | def info_connection(self, **_): method change_db (line 461) | def change_db(self, pattern, **_): method execute_from_file (line 491) | def execute_from_file(self, pattern, **_): method write_to_logfile (line 522) | def write_to_logfile(self, pattern, **_): method write_to_file (line 542) | def write_to_file(self, pattern, **_): method initialize_logging (line 559) | def initialize_logging(self): method connect_dsn (line 599) | def connect_dsn(self, dsn, **kwargs): method connect_service (line 602) | def connect_service(self, service, user): method connect_uri (line 615) | def connect_uri(self, uri): method connect (line 621) | def connect(self, database="", host="", user="", port="", passwd="", d... method handle_editor_command (line 765) | def handle_editor_command(self, text): method execute_command (line 803) | def execute_command(self, text, handle_closed_connection=True): method _check_ongoing_transaction_and_allow_quitting (line 919) | def _check_ongoing_transaction_and_allow_quitting(self): method run_cli (line 947) | def run_cli(self): method handle_watch_command (line 999) | def handle_watch_command(self, text): method _build_cli (line 1027) | def _build_cli(self, history): method _should_limit_output (line 1094) | def _should_limit_output(self, sql, cur): method _has_limit (line 1103) | def _has_limit(self, sql): method _limit_output (line 1108) | def _limit_output(self, cur): method _evaluate_command (line 1116) | def _evaluate_command(self, text): method _handle_server_closed_connection (line 1217) | def _handle_server_closed_connection(self, text): method refresh_completions (line 1233) | def refresh_completions(self, history=None, persist_priorities="all"): method _on_completions_refreshed (line 1251) | def _on_completions_refreshed(self, new_completer, persist_priorities): method _swap_completer_objects (line 1259) | def _swap_completer_objects(self, new_completer, persist_priorities): method get_completions (line 1291) | def get_completions(self, text, cursor_positition): method get_prompt (line 1295) | def get_prompt(self, string): method get_last_query (line 1313) | def get_last_query(self): method is_too_wide (line 1317) | def is_too_wide(self, line): method is_too_tall (line 1323) | def is_too_tall(self, lines): method echo_via_pager (line 1329) | def echo_via_pager(self, text, color=None): function cli (line 1480) | def cli( function obfuscate_process_password (line 1722) | def obfuscate_process_password(): function has_meta_cmd (line 1732) | def has_meta_cmd(query): function has_change_db_cmd (line 1745) | def has_change_db_cmd(query): function has_change_path_cmd (line 1757) | def has_change_path_cmd(sql): function is_mutating (line 1763) | def is_mutating(status): function is_select (line 1772) | def is_select(status): function diagnostic_output (line 1779) | def diagnostic_output(diagnostic: Diagnostic) -> str: function exception_formatter (line 1839) | def exception_formatter(e, verbose_errors: bool = False): function format_output (line 1846) | def format_output(title, cur, headers, status, settings, explain_mode=Fa... function parse_service_info (line 1952) | def parse_service_info(service): function duration_in_words (line 1979) | def duration_in_words(duration_in_seconds: float) -> str: FILE: pgcli/packages/formatter/sqlformatter.py function escape_for_sql_statement (line 16) | def escape_for_sql_statement(value): function adapter (line 26) | def adapter(data, headers, table_format=None, **kwargs): function register_new_formatter (line 63) | def register_new_formatter(TabularOutputFormatter): FILE: pgcli/packages/parseutils/__init__.py function query_starts_with (line 15) | def query_starts_with(formatted_sql, prefixes): function query_is_unconditional_update (line 21) | def query_is_unconditional_update(formatted_sql): function is_destructive (line 27) | def is_destructive(queries, keywords): function parse_destructive_warning (line 39) | def parse_destructive_warning(warning_level): FILE: pgcli/packages/parseutils/ctes.py function isolate_query_ctes (line 16) | def isolate_query_ctes(full_text, text_before_cursor): function extract_ctes (line 47) | def extract_ctes(sql): function get_cte_from_token (line 94) | def get_cte_from_token(tok, pos0): function extract_column_names (line 113) | def extract_column_names(parsed): function token_start_pos (line 130) | def token_start_pos(tokens, idx): function _identifiers (line 134) | def _identifiers(tok): FILE: pgcli/packages/parseutils/meta.py function ColumnMetadata (line 6) | def ColumnMetadata(name, datatype, foreignkeys=None, default=None, has_d... function parse_defaults (line 24) | def parse_defaults(defaults_string): class FunctionMetadata (line 51) | class FunctionMetadata: method __init__ (line 52) | def __init__( method __eq__ (line 95) | def __eq__(self, other): method __ne__ (line 98) | def __ne__(self, other): method _signature (line 101) | def _signature(self): method __hash__ (line 116) | def __hash__(self): method __repr__ (line 119) | def __repr__(self): method has_variadic (line 126) | def has_variadic(self): method args (line 129) | def args(self): method fields (line 149) | def fields(self): FILE: pgcli/packages/parseutils/tables.py function is_subselect (line 14) | def is_subselect(parsed): function _identifier_is_function (line 29) | def _identifier_is_function(identifier): function extract_from_part (line 33) | def extract_from_part(parsed, stop_at_punctuation=True): function extract_table_identifiers (line 72) | def extract_table_identifiers(token_stream, allow_functions=True): function extract_tables (line 126) | def extract_tables(sql): FILE: pgcli/packages/parseutils/utils.py function last_word (line 18) | def last_word(text, include="alphanum_underscore"): function find_prev_keyword (line 66) | def find_prev_keyword(sql, n_skip=0): function is_open_quote (line 105) | def is_open_quote(sql): function _parsed_is_open_quote (line 113) | def _parsed_is_open_quote(parsed): function parse_partial_identifier (line 118) | def parse_partial_identifier(word): FILE: pgcli/packages/pgliterals/main.py function get_literals (line 11) | def get_literals(literal_type, type_=tuple): FILE: pgcli/packages/prioritization.py function _compile_regex (line 11) | def _compile_regex(keyword): class PrevalenceCounter (line 22) | class PrevalenceCounter: method __init__ (line 23) | def __init__(self): method update (line 27) | def update(self, text): method update_names (line 31) | def update_names(self, text): method clear_names (line 37) | def clear_names(self): method update_keywords (line 40) | def update_keywords(self, text): method keyword_count (line 47) | def keyword_count(self, keyword): method name_count (line 50) | def name_count(self, name): FILE: pgcli/packages/prompt_utils.py function confirm_destructive_query (line 6) | def confirm_destructive_query(queries, keywords, alias): function confirm (line 24) | def confirm(*args, **kwargs): function prompt (line 32) | def prompt(*args, **kwargs): FILE: pgcli/packages/sqlcompletion.py class SqlStatement (line 49) | class SqlStatement: method __init__ (line 50) | def __init__(self, full_text, text_before_cursor): method is_insert (line 84) | def is_insert(self): method get_tables (line 87) | def get_tables(self, scope="full"): method get_previous_token (line 101) | def get_previous_token(self, token): method get_identifier_schema (line 104) | def get_identifier_schema(self): method reduce_to_prev_keyword (line 112) | def reduce_to_prev_keyword(self, n_skip=0): function suggest_type (line 117) | def suggest_type(full_text, text_before_cursor): function _strip_named_query (line 150) | def _strip_named_query(txt): function _find_function_body (line 165) | def _find_function_body(text): function _statement_from_function (line 170) | def _statement_from_function(full_text, text_before_cursor, statement): function _split_multiple_statements (line 183) | def _split_multiple_statements(full_text, text_before_cursor, parsed): function suggest_special (line 227) | def suggest_special(text): function suggest_based_on_last_token (line 279) | def suggest_based_on_last_token(token, stmt): function _suggest_expression (line 520) | def _suggest_expression(token_v, stmt): function identifies (line 544) | def identifies(table_id, ref): function _allow_join_condition (line 550) | def _allow_join_condition(statement): function _allow_join (line 570) | def _allow_join(statement): FILE: pgcli/pgbuffer.py function _is_complete (line 11) | def _is_complete(sql): function safe_multi_line_mode (line 25) | def safe_multi_line_mode(pgcli): function buffer_should_be_handled (line 34) | def buffer_should_be_handled(pgcli): FILE: pgcli/pgcompleter.py function SchemaObject (line 43) | def SchemaObject(name, schema=None, meta=None): function Candidate (line 50) | def Candidate(completion, prio=None, meta=None, synonyms=None, prio2=Non... function normalize_ref (line 58) | def normalize_ref(ref): function generate_alias (line 62) | def generate_alias(tbl, alias_map=None): class InvalidMapFile (line 80) | class InvalidMapFile(ValueError): function load_alias_map_file (line 84) | def load_alias_map_file(path): class PGCompleter (line 96) | class PGCompleter(Completer): method __init__ (line 105) | def __init__(self, smart_completion=True, pgspecial=None, settings=None): method escape_name (line 143) | def escape_name(self, name): method escape_schema (line 149) | def escape_schema(self, name): method unescape_name (line 152) | def unescape_name(self, name): method escaped_names (line 159) | def escaped_names(self, names): method extend_database_names (line 162) | def extend_database_names(self, databases): method extend_keywords (line 165) | def extend_keywords(self, additional_keywords): method extend_schemata (line 169) | def extend_schemata(self, schemata): method extend_casing (line 183) | def extend_casing(self, words): method extend_relations (line 191) | def extend_relations(self, data, kind): method extend_columns (line 213) | def extend_columns(self, column_data, kind): method extend_functions (line 235) | def extend_functions(self, func_data): method _refresh_arg_list_cache (line 254) | def _refresh_arg_list_cache(self): method extend_foreignkeys (line 268) | def extend_foreignkeys(self, fk_data): method extend_datatypes (line 288) | def extend_datatypes(self, type_data): method extend_query_history (line 299) | def extend_query_history(self, text, is_init=False): method set_search_path (line 307) | def set_search_path(self, search_path): method reset_completions (line 310) | def reset_completions(self): method find_matches (line 317) | def find_matches(self, text, collection, mode="fuzzy", meta=None): method case (line 454) | def case(self, word): method get_completions (line 457) | def get_completions(self, document, complete_event, smart_completion=N... method get_column_matches (line 487) | def get_column_matches(self, suggestion, word_before_cursor): method alias (line 547) | def alias(self, tbl, tbls): method get_join_matches (line 564) | def get_join_matches(self, suggestion, word_before_cursor): method get_join_condition_matches (line 605) | def get_join_condition_matches(self, suggestion, word_before_cursor): method get_function_matches (line 655) | def get_function_matches(self, suggestion, word_before_cursor, alias=F... method get_schema_matches (line 689) | def get_schema_matches(self, suggestion, word_before_cursor): method get_from_clause_item_matches (line 702) | def get_from_clause_item_matches(self, suggestion, word_before_cursor): method _arg_list (line 714) | def _arg_list(self, func, usage): method _format_arg (line 741) | def _format_arg(self, template, arg, arg_num, max_arg_len): method _make_cand (line 758) | def _make_cand(self, tbl, do_alias, suggestion, arg_mode=None): method get_table_matches (line 784) | def get_table_matches(self, suggestion, word_before_cursor, alias=False): method get_table_formats (line 795) | def get_table_formats(self, _, word_before_cursor): method get_view_matches (line 799) | def get_view_matches(self, suggestion, word_before_cursor, alias=False): method get_alias_matches (line 807) | def get_alias_matches(self, suggestion, word_before_cursor): method get_database_matches (line 811) | def get_database_matches(self, _, word_before_cursor): method get_keyword_matches (line 814) | def get_keyword_matches(self, suggestion, word_before_cursor): method get_path_matches (line 836) | def get_path_matches(self, _, word_before_cursor): method get_special_matches (line 842) | def get_special_matches(self, _, word_before_cursor): method get_datatype_matches (line 851) | def get_datatype_matches(self, suggestion, word_before_cursor): method get_namedquery_matches (line 863) | def get_namedquery_matches(self, _, word_before_cursor): method populate_scoped_cols (line 885) | def populate_scoped_cols(self, scoped_tbls, local_tbls=()): method _get_schemas (line 931) | def _get_schemas(self, obj_typ, schema): method _maybe_schema (line 943) | def _maybe_schema(self, schema, parent): method populate_schema_objects (line 946) | def populate_schema_objects(self, schema, obj_type): method populate_functions (line 959) | def populate_functions(self, schema, filter_func): FILE: pgcli/pgexecute.py function remove_beginning_comments (line 24) | def remove_beginning_comments(command): function register_typecasters (line 40) | def register_typecasters(connection): class ProtocolSafeCursor (line 56) | class ProtocolSafeCursor(psycopg.Cursor): method __init__ (line 61) | def __init__(self, *args, **kwargs): method __iter__ (line 66) | def __iter__(self): method fetchall (line 71) | def fetchall(self): method fetchone (line 76) | def fetchone(self): method execute (line 85) | def execute(self, *args, **kwargs): class PGExecute (line 96) | class PGExecute: method __init__ (line 158) | def __init__( method is_virtual_database (line 183) | def is_virtual_database(self): method copy (line 188) | def copy(self): method connect (line 192) | def connect( method short_host (line 271) | def short_host(self): method _select_one (line 284) | def _select_one(self, cur, sql): method failed_transaction (line 294) | def failed_transaction(self): method valid_transaction (line 297) | def valid_transaction(self): method is_connection_closed (line 301) | def is_connection_closed(self): method transaction_indicator (line 305) | def transaction_indicator(self): method run (line 314) | def run( method _must_raise (line 423) | def _must_raise(self, e): method execute_normal_sql (line 437) | def execute_normal_sql(self, split_sql): method search_path (line 474) | def search_path(self): method view_definition (line 489) | def view_definition(self, spec): method function_definition (line 517) | def function_definition(self, spec): method schemata (line 530) | def schemata(self): method _relations (line 538) | def _relations(self, kinds=("r", "p", "f", "v", "m")): method tables (line 556) | def tables(self): method views (line 560) | def views(self): method _columns (line 567) | def _columns(self, kinds=("r", "p", "f", "v", "m")): method table_columns (line 625) | def table_columns(self): method view_columns (line 628) | def view_columns(self): method databases (line 631) | def databases(self): method full_databases (line 637) | def full_databases(self): method is_protocol_error (line 644) | def is_protocol_error(self): method get_socket_directory (line 651) | def get_socket_directory(self): method foreignkeys (line 658) | def foreignkeys(self): method functions (line 698) | def functions(self): method datatypes (line 788) | def datatypes(self): method casing (line 832) | def casing(self): method explain_prefix (line 881) | def explain_prefix(self): method get_timezone (line 884) | def get_timezone(self) -> str: method set_timezone (line 890) | def set_timezone(self, timezone: str): FILE: pgcli/pgstyle.py function parse_pygments_style (line 49) | def parse_pygments_style(token_name, style_object, style_dict): function style_factory (line 65) | def style_factory(name, cli_style): function style_factory_output (line 93) | def style_factory_output(name, cli_style): FILE: pgcli/pgtoolbar.py function _get_vi_mode (line 15) | def _get_vi_mode(): function create_toolbar_tokens_func (line 19) | def create_toolbar_tokens_func(pgcli): FILE: pgcli/pyev.py class Visualizer (line 27) | class Visualizer: method __init__ (line 28) | def __init__(self, terminal_width=100, color=True): method load (line 33) | def load(self, explain_dict): method process_all (line 39) | def process_all(self): method process_plan (line 44) | def process_plan(self, plan): method prefix_format (line 54) | def prefix_format(self, v): method tag_format (line 59) | def tag_format(self, v): method muted_format (line 64) | def muted_format(self, v): method bold_format (line 69) | def bold_format(self, v): method good_format (line 74) | def good_format(self, v): method warning_format (line 79) | def warning_format(self, v): method critical_format (line 84) | def critical_format(self, v): method output_format (line 89) | def output_format(self, v): method calculate_planner_estimate (line 94) | def calculate_planner_estimate(self, plan): method calculate_actuals (line 112) | def calculate_actuals(self, plan): method calculate_outlier_nodes (line 127) | def calculate_outlier_nodes(self, plan): method calculate_maximums (line 137) | def calculate_maximums(self, plan): method duration_to_string (line 159) | def duration_to_string(self, value): method format_details (line 177) | def format_details(self, plan): method format_tags (line 191) | def format_tags(self, plan): method get_terminator (line 205) | def get_terminator(self, index, plan): method wrap_string (line 217) | def wrap_string(self, line, width): method intcomma (line 222) | def intcomma(self, value): method output_fn (line 235) | def output_fn(self, current_prefix, string): method create_lines (line 238) | def create_lines(self, plan, prefix, depth, width, last_child): method generate_lines (line 397) | def generate_lines(self): method get_list (line 412) | def get_list(self): method print (line 415) | def print(self): FILE: release.py function skip_step (line 17) | def skip_step(): function run_step (line 29) | def run_step(*args): function version (line 47) | def version(version_file): function commit_for_release (line 56) | def commit_for_release(version_file, ver): function create_git_tag (line 62) | def create_git_tag(tag_name): function create_distribution_files (line 66) | def create_distribution_files(): function upload_distribution_files (line 71) | def upload_distribution_files(): function push_to_github (line 75) | def push_to_github(): function push_tags_to_github (line 79) | def push_tags_to_github(): function checklist (line 83) | def checklist(questions): FILE: tests/conftest.py function connection (line 17) | def connection(): function cursor (line 27) | def cursor(connection): function executor (line 33) | def executor(connection): function exception_formatter (line 46) | def exception_formatter(): function temp_config (line 51) | def temp_config(tmpdir_factory): FILE: tests/features/db_utils.py function create_db (line 4) | def create_db(hostname="localhost", username=None, password=None, dbname... function create_cn (line 28) | def create_cn(hostname, password, username, dbname, port): function pgbouncer_available (line 43) | def pgbouncer_available(hostname="localhost", password=None, username="p... function drop_db (line 56) | def drop_db(hostname="localhost", username=None, password=None, dbname=N... function close_cn (line 75) | def close_cn(cn=None): FILE: tests/features/environment.py function before_all (line 15) | def before_all(context): function show_env_changes (line 113) | def show_env_changes(env_old, env_new): function after_all (line 125) | def after_all(context): function before_step (line 149) | def before_step(context, _): function is_known_problem (line 153) | def is_known_problem(scenario): function before_scenario (line 166) | def before_scenario(context, scenario): function after_scenario (line 188) | def after_scenario(context, scenario): FILE: tests/features/fixture_utils.py function read_fixture_lines (line 5) | def read_fixture_lines(filename): function read_fixture_files (line 17) | def read_fixture_files(): FILE: tests/features/steps/auto_vertical.py function step_run_cli_with_arg (line 7) | def step_run_cli_with_arg(context, arg): function step_execute_small_query (line 12) | def step_execute_small_query(context): function step_execute_large_query (line 17) | def step_execute_large_query(context): function step_see_small_results (line 22) | def step_see_small_results(context): function step_see_large_results (line 40) | def step_see_large_results(context): FILE: tests/features/steps/basic_commands.py function step_list_databases (line 17) | def step_list_databases(context): function step_see_list_databases (line 23) | def step_see_list_databases(context): function step_ping_database (line 30) | def step_ping_database(context): function step_get_pong_response (line 36) | def step_get_pong_response(context): function step_run_cli (line 43) | def step_run_cli(context): function step_run_cli_using_arg (line 48) | def step_run_cli_using_arg(context, arg): function step_wait_prompt (line 69) | def step_wait_prompt(context): function step_ctrl_d (line 74) | def step_ctrl_d(context): function step_try_to_ctrl_d (line 84) | def step_try_to_ctrl_d(context): function step_ctrl_c (line 97) | def step_ctrl_c(context): function step_see_cancelled_query_warning (line 103) | def step_see_cancelled_query_warning(context): function step_see_ongoing_transaction_error (line 111) | def step_see_ongoing_transaction_error(context): function step_send_sleep_15_seconds (line 119) | def step_send_sleep_15_seconds(context): function step_check_for_active_sleep_queries (line 127) | def step_check_for_active_sleep_queries(context): function step_no_active_sleep_queries (line 137) | def step_no_active_sleep_queries(context): function step_send_help (line 158) | def step_send_help(context): function step_send_partial_select_command (line 166) | def step_send_partial_select_command(context): function step_see_error_message (line 174) | def step_see_error_message(context): function step_send_source_command (line 179) | def step_send_source_command(context): function step_check_application_name (line 188) | def step_check_application_name(context): function step_see_found (line 193) | def step_see_found(context): function step_resppond_to_destructive_command (line 214) | def step_resppond_to_destructive_command(context, response): function step_send_password (line 225) | def step_send_password(context): function step_send_text (line 231) | def step_send_text(context, text): FILE: tests/features/steps/crud_database.py function step_db_create (line 14) | def step_db_create(context): function step_db_drop (line 24) | def step_db_drop(context): function step_db_connect_test (line 32) | def step_db_connect_test(context): function step_db_connect_dbserver (line 41) | def step_db_connect_dbserver(context): function step_wait_exit (line 50) | def step_wait_exit(context): function step_see_prompt (line 58) | def step_see_prompt(context): function step_see_help (line 68) | def step_see_help(context): function step_see_db_created (line 74) | def step_see_db_created(context): function step_see_db_dropped (line 82) | def step_see_db_dropped(context): function step_see_db_connected (line 90) | def step_see_db_connected(context): FILE: tests/features/steps/crud_table.py function step_create_table (line 17) | def step_create_table(context): function step_insert_into_table (line 25) | def step_insert_into_table(context): function step_update_table (line 33) | def step_update_table(context): function step_select_from_table (line 41) | def step_select_from_table(context): function step_delete_from_table (line 49) | def step_delete_from_table(context): function step_drop_table (line 57) | def step_drop_table(context): function step_alter_table (line 65) | def step_alter_table(context): function step_begin_transaction (line 73) | def step_begin_transaction(context): function step_rollback_transaction (line 81) | def step_rollback_transaction(context): function step_see_table_created (line 89) | def step_see_table_created(context): function step_see_record_inserted (line 97) | def step_see_record_inserted(context): function step_see_record_updated (line 105) | def step_see_record_updated(context): function step_see_data_selected (line 113) | def step_see_data_selected(context, data): function step_see_no_data_selected (line 135) | def step_see_no_data_selected(context): function step_see_data_deleted (line 155) | def step_see_data_deleted(context): function step_see_table_dropped (line 163) | def step_see_table_dropped(context): function step_see_transaction_began (line 171) | def step_see_transaction_began(context): function step_see_transaction_rolled_back (line 179) | def step_see_transaction_rolled_back(context): FILE: tests/features/steps/expanded.py function step_prepare_data (line 14) | def step_prepare_data(context): function step_set_expanded (line 32) | def step_set_expanded(context, mode): function step_see_data (line 40) | def step_see_data(context, which): FILE: tests/features/steps/iocommands.py function step_edit_file (line 9) | def step_edit_file(context): function step_edit_type_sql (line 20) | def step_edit_type_sql(context): function step_edit_quit (line 28) | def step_edit_quit(context): function step_edit_done_sql (line 34) | def step_edit_done_sql(context): function step_tee_ouptut (line 46) | def step_tee_ouptut(context): function step_query_select_123456 (line 58) | def step_query_select_123456(context): function step_notee_output (line 63) | def step_notee_output(context): function step_see_123456_in_ouput (line 69) | def step_see_123456_in_ouput(context): FILE: tests/features/steps/named_queries.py function step_save_named_query (line 12) | def step_save_named_query(context): function step_use_named_query (line 20) | def step_use_named_query(context): function step_delete_named_query (line 28) | def step_delete_named_query(context): function step_see_named_query_saved (line 36) | def step_see_named_query_saved(context): function step_see_named_query_executed (line 44) | def step_see_named_query_executed(context): function step_see_named_query_deleted (line 53) | def step_see_named_query_deleted(context): FILE: tests/features/steps/pgbouncer.py function step_send_help_command (line 12) | def step_send_help_command(context): function see_pgbouncer_help (line 17) | def see_pgbouncer_help(context): FILE: tests/features/steps/specials.py function step_refresh_completions (line 12) | def step_refresh_completions(context): function step_see_refresh_started (line 20) | def step_see_refresh_started(context): FILE: tests/features/steps/wrappers.py function expect_exact (line 8) | def expect_exact(context, expected, timeout): function expect_pager (line 37) | def expect_pager(context, expected, timeout): function run_cli (line 48) | def run_cli(context, run_args=None, prompt_check=True, currentdb=None): function wait_prompt (line 64) | def wait_prompt(context): FILE: tests/features/wrappager.py function wrappager (line 5) | def wrappager(boundary): FILE: tests/formatter/test_sqlformatter.py function test_escape_for_sql_statement_bytes (line 9) | def test_escape_for_sql_statement_bytes(): function test_escape_for_sql_statement_number (line 15) | def test_escape_for_sql_statement_number(): function test_escape_for_sql_statement_str (line 21) | def test_escape_for_sql_statement_str(): function test_output_sql_insert (line 27) | def test_output_sql_insert(): function test_output_sql_update (line 68) | def test_output_sql_update(): FILE: tests/metadata.py function escape (line 15) | def escape(name): function completion (line 21) | def completion(display_meta, text, pos=0): function function (line 25) | def function(text, pos=0, display=None): function get_result (line 29) | def get_result(completer, text, position=None): function result_set (line 34) | def result_set(completer, text, position=None): function wildcard_expansion (line 54) | def wildcard_expansion(cols, pos=-1): class MetaData (line 58) | class MetaData: method __init__ (line 59) | def __init__(self, metadata): method builtin_functions (line 62) | def builtin_functions(self, pos=0): method builtin_datatypes (line 65) | def builtin_datatypes(self, pos=0): method keywords (line 68) | def keywords(self, pos=0): method specials (line 71) | def specials(self, pos=0): method columns (line 74) | def columns(self, tbl, parent="public", typ="tables", pos=0): method datatypes (line 82) | def datatypes(self, parent="public", pos=0): method tables (line 85) | def tables(self, parent="public", pos=0): method views (line 88) | def views(self, parent="public", pos=0): method functions (line 91) | def functions(self, parent="public", pos=0): method schemas (line 104) | def schemas(self, pos=0): method functions_and_keywords (line 108) | def functions_and_keywords(self, parent="public", pos=0): method columns_functions_and_keywords (line 112) | def columns_functions_and_keywords(self, tbl, parent="public", typ="ta... method from_clause_items (line 115) | def from_clause_items(self, parent="public", pos=0): method schemas_and_from_clause_items (line 118) | def schemas_and_from_clause_items(self, parent="public", pos=0): method types (line 121) | def types(self, parent="public", pos=0): method completer (line 125) | def completer(self): method get_completers (line 128) | def get_completers(self, casing): method _make_col (line 163) | def _make_col(self, sch, tbl, col): method get_completer (line 167) | def get_completer(self, settings=None, casing=None): FILE: tests/parseutils/test_ctes.py function extract_column_names (line 10) | def extract_column_names(sql): function test_token_str_pos (line 15) | def test_token_str_pos(): function test_single_column_name_extraction (line 27) | def test_single_column_name_extraction(): function test_aliased_single_column_name_extraction (line 32) | def test_aliased_single_column_name_extraction(): function test_aliased_expression_name_extraction (line 37) | def test_aliased_expression_name_extraction(): function test_multiple_column_name_extraction (line 42) | def test_multiple_column_name_extraction(): function test_missing_column_name_handled_gracefully (line 47) | def test_missing_column_name_handled_gracefully(): function test_aliased_multiple_column_name_extraction (line 55) | def test_aliased_multiple_column_name_extraction(): function test_table_qualified_column_name_extraction (line 60) | def test_table_qualified_column_name_extraction(): function test_extract_column_names_from_returning_clause (line 73) | def test_extract_column_names_from_returning_clause(sql): function test_simple_cte_extraction (line 77) | def test_simple_cte_extraction(): function test_cte_extraction_around_comments (line 87) | def test_cte_extraction_around_comments(): function test_multiple_cte_extraction (line 105) | def test_multiple_cte_extraction(): FILE: tests/parseutils/test_function_metadata.py function test_function_metadata_eq (line 4) | def test_function_metadata_eq(): FILE: tests/parseutils/test_parseutils.py function test_empty_string (line 12) | def test_empty_string(): function test_simple_select_single_table (line 17) | def test_simple_select_single_table(): function test_simple_select_single_table_schema_qualified_quoted_table (line 23) | def test_simple_select_single_table_schema_qualified_quoted_table(sql): function test_simple_select_single_table_schema_qualified (line 29) | def test_simple_select_single_table_schema_qualified(sql): function test_simple_select_single_table_double_quoted (line 34) | def test_simple_select_single_table_double_quoted(): function test_simple_select_multiple_tables (line 39) | def test_simple_select_multiple_tables(): function test_simple_select_multiple_tables_double_quoted (line 44) | def test_simple_select_multiple_tables_double_quoted(): function test_simple_select_single_table_deouble_quoted_aliased (line 49) | def test_simple_select_single_table_deouble_quoted_aliased(): function test_simple_select_multiple_tables_deouble_quoted_aliased (line 54) | def test_simple_select_multiple_tables_deouble_quoted_aliased(): function test_simple_select_multiple_tables_schema_qualified (line 59) | def test_simple_select_multiple_tables_schema_qualified(): function test_simple_select_with_cols_single_table (line 64) | def test_simple_select_with_cols_single_table(): function test_simple_select_with_cols_single_table_schema_qualified (line 69) | def test_simple_select_with_cols_single_table_schema_qualified(): function test_simple_select_with_cols_multiple_tables (line 74) | def test_simple_select_with_cols_multiple_tables(): function test_simple_select_with_cols_multiple_qualified_tables (line 79) | def test_simple_select_with_cols_multiple_qualified_tables(): function test_select_with_hanging_comma_single_table (line 84) | def test_select_with_hanging_comma_single_table(): function test_select_with_hanging_comma_multiple_tables (line 89) | def test_select_with_hanging_comma_multiple_tables(): function test_select_with_hanging_period_multiple_tables (line 94) | def test_select_with_hanging_period_multiple_tables(): function test_simple_insert_single_table (line 99) | def test_simple_insert_single_table(): function test_simple_insert_single_table_schema_qualified (line 110) | def test_simple_insert_single_table_schema_qualified(): function test_simple_update_table_no_schema (line 115) | def test_simple_update_table_no_schema(): function test_simple_update_table_with_schema (line 120) | def test_simple_update_table_with_schema(): function test_join_table (line 126) | def test_join_table(join_type): function test_join_table_schema_qualified (line 132) | def test_join_table_schema_qualified(): function test_incomplete_join_clause (line 137) | def test_incomplete_join_clause(): function test_join_as_table (line 145) | def test_join_as_table(): function test_multiple_joins (line 150) | def test_multiple_joins(): function test_subselect_tables (line 164) | def test_subselect_tables(): function test_extract_no_tables (line 171) | def test_extract_no_tables(text): function test_simple_function_as_table (line 177) | def test_simple_function_as_table(arg_list): function test_simple_schema_qualified_function_as_table (line 183) | def test_simple_schema_qualified_function_as_table(arg_list): function test_simple_aliased_function_as_table (line 189) | def test_simple_aliased_function_as_table(arg_list): function test_simple_table_and_function (line 194) | def test_simple_table_and_function(): function test_complex_table_and_function (line 199) | def test_complex_table_and_function(): function test_find_prev_keyword_using (line 207) | def test_find_prev_keyword_using(): function test_find_prev_keyword_where (line 221) | def test_find_prev_keyword_where(sql): function test_find_prev_keyword_open_parens (line 227) | def test_find_prev_keyword_open_parens(sql): function test_is_open_quote__closed (line 244) | def test_is_open_quote__closed(sql): function test_is_open_quote__open (line 262) | def test_is_open_quote__open(sql): function test_is_destructive (line 284) | def test_is_destructive(sql, keywords, expected): function test_parse_destructive_warning (line 305) | def test_parse_destructive_warning(warning_level, expected): FILE: tests/test_application_name.py function test_application_name_in_env (line 9) | def test_application_name_in_env(): FILE: tests/test_auth.py function test_keyring_initialize (line 7) | def test_keyring_initialize(enabled, call_count): function test_keyring_get_password_ok (line 15) | def test_keyring_get_password_ok(): function test_keyring_get_password_exception (line 21) | def test_keyring_get_password_exception(): function test_keyring_set_password_ok (line 27) | def test_keyring_set_password_ok(): function test_keyring_set_password_exception (line 33) | def test_keyring_set_password_exception(): FILE: tests/test_completion_refresher.py function refresher (line 7) | def refresher(): function test_ctor (line 13) | def test_ctor(refresher): function test_refresh_called_once (line 33) | def test_refresh_called_once(refresher): function test_refresh_called_twice (line 52) | def test_refresh_called_twice(refresher): function test_refresh_with_callbacks (line 81) | def test_refresh_with_callbacks(refresher): FILE: tests/test_config.py function test_ensure_file_parent (line 10) | def test_ensure_file_parent(tmpdir): function test_ensure_existing_dir (line 16) | def test_ensure_existing_dir(tmpdir): function test_ensure_other_create_error (line 23) | def test_ensure_other_create_error(tmpdir): function test_skip_initial_comment (line 42) | def test_skip_initial_comment(text, skipped_lines): FILE: tests/test_fuzzy_completion.py function completer (line 5) | def completer(): function test_ranking_ignores_identifier_quotes (line 11) | def test_ranking_ignores_identifier_quotes(completer): function test_ranking_based_on_shortest_match (line 31) | def test_ranking_based_on_shortest_match(completer): function test_should_break_ties_using_lexical_order (line 56) | def test_should_break_ties_using_lexical_order(completer, collection): function test_matching_should_be_case_insensitive (line 76) | def test_matching_should_be_case_insensitive(completer): FILE: tests/test_init_commands_simple.py function dummy_exec (line 8) | def dummy_exec(monkeypatch, tmp_path): function test_init_command_option (line 36) | def test_init_command_option(dummy_exec): function test_init_commands_from_config (line 50) | def test_init_commands_from_config(dummy_exec, tmp_path): function test_init_commands_option_and_config (line 68) | def test_init_commands_option_and_config(dummy_exec, tmp_path): FILE: tests/test_main.py function test_obfuscate_process_password (line 32) | def test_obfuscate_process_password(): function test_format_output (line 62) | def test_format_output(): function test_column_date_formats (line 77) | def test_column_date_formats(): function test_no_column_date_formats (line 105) | def test_no_column_date_formats(): function test_format_output_truncate_on (line 128) | def test_format_output_truncate_on(): function test_format_output_truncate_off (line 147) | def test_format_output_truncate_off(): function test_format_array_output (line 156) | def test_format_array_output(executor): function test_format_array_output_expanded (line 179) | def test_format_array_output_expanded(executor): function test_format_output_auto_expand (line 203) | def test_format_output_auto_expand(): function pset_pager_mocks (line 259) | def pset_pager_mocks(): function test_pset_pager_off (line 271) | def test_pset_pager_off(term_height, term_width, text, pset_pager_mocks): function test_pset_pager_always (line 283) | def test_pset_pager_always(term_height, term_width, text, pset_pager_moc... function test_pset_pager_on (line 298) | def test_pset_pager_on(term_height, term_width, text, use_pager, pset_pa... function test_color_pattern (line 324) | def test_color_pattern(text, expected_length): function test_i_works (line 329) | def test_i_works(tmpdir, executor): function test_toggle_verbose_errors (line 339) | def test_toggle_verbose_errors(executor): function test_echo_works (line 357) | def test_echo_works(executor): function test_qecho_works (line 365) | def test_qecho_works(executor): function test_logfile_works (line 373) | def test_logfile_works(executor): function test_logfile_unwriteable_file (line 387) | def test_logfile_unwriteable_file(executor): function test_watch_works (line 397) | def test_watch_works(executor): function test_missing_rc_dir (line 440) | def test_missing_rc_dir(tmpdir): function test_quoted_db_uri (line 447) | def test_quoted_db_uri(tmpdir): function test_pg_service_file (line 454) | def test_pg_service_file(tmpdir): function test_ssl_db_uri (line 507) | def test_ssl_db_uri(tmpdir): function test_port_db_uri (line 525) | def test_port_db_uri(tmpdir): function test_multihost_db_uri (line 532) | def test_multihost_db_uri(tmpdir): function test_application_name_db_uri (line 545) | def test_application_name_db_uri(tmpdir): function test_duration_in_words (line 576) | def test_duration_in_words(duration_in_seconds, words): function test_get_prompt_with_transaction_status (line 589) | def test_get_prompt_with_transaction_status(transaction_indicator, expec... function test_get_prompt_transaction_status_in_full_prompt (line 605) | def test_get_prompt_transaction_status_in_full_prompt(): function test_notifications (line 622) | def test_notifications(executor): FILE: tests/test_naive_completion.py function completer (line 8) | def completer(): function complete_event (line 15) | def complete_event(): function test_empty_string_completion (line 21) | def test_empty_string_completion(completer, complete_event): function test_select_keyword_completion (line 28) | def test_select_keyword_completion(completer, complete_event): function test_function_name_completion (line 35) | def test_function_name_completion(completer, complete_event): function test_column_name_completion (line 52) | def test_column_name_completion(completer, complete_event): function test_alter_well_known_keywords_completion (line 59) | def test_alter_well_known_keywords_completion(completer, complete_event): function test_special_name_completion (line 77) | def test_special_name_completion(completer, complete_event): function test_datatype_name_completion (line 85) | def test_datatype_name_completion(completer, complete_event): FILE: tests/test_pgcompleter.py function test_load_alias_map_file_missing_file (line 7) | def test_load_alias_map_file_missing_file(): function test_load_alias_map_file_invalid_json (line 15) | def test_load_alias_map_file_invalid_json(tmp_path): function test_generate_alias_uses_upper_case_letters_from_name (line 30) | def test_generate_alias_uses_upper_case_letters_from_name(table_name, al... function test_generate_alias_uses_first_char_and_every_preceded_by_underscore (line 42) | def test_generate_alias_uses_first_char_and_every_preceded_by_underscore... function test_generate_alias_can_use_alias_map (line 53) | def test_generate_alias_can_use_alias_map(table_name, alias_map, alias): function test_pgcompleter_alias_uses_configured_alias_map (line 63) | def test_pgcompleter_alias_uses_configured_alias_map(table_name, alias_m... function test_generate_alias_prefers_alias_over_upper_case_name (line 82) | def test_generate_alias_prefers_alias_over_upper_case_name(table_name, a... function test_generate_alias_prefers_upper_case_name_over_underscore_name (line 93) | def test_generate_alias_prefers_upper_case_name_over_underscore_name(tab... FILE: tests/test_pgexecute.py function function_meta_data (line 14) | def function_meta_data( function test_conn (line 43) | def test_conn(executor): function test_copy (line 58) | def test_copy(executor): function test_bools_are_treated_as_strings (line 74) | def test_bools_are_treated_as_strings(executor): function test_expanded_slash_G (line 89) | def test_expanded_slash_G(executor, pgspecial): function test_schemata_table_views_and_columns_query (line 98) | def test_schemata_table_views_and_columns_query(executor): function test_foreign_key_query (line 139) | def test_foreign_key_query(executor): function test_functions_query (line 152) | def test_functions_query(executor): function test_datatypes_query (line 202) | def test_datatypes_query(executor): function test_database_list (line 210) | def test_database_list(executor): function test_invalid_syntax (line 216) | def test_invalid_syntax(executor, exception_formatter): function test_invalid_syntax_verbose (line 227) | def test_invalid_syntax_verbose(executor): function test_invalid_column_name (line 247) | def test_invalid_column_name(executor, exception_formatter): function expanded (line 253) | def expanded(request): function test_unicode_support_in_output (line 258) | def test_unicode_support_in_output(executor, expanded): function test_not_is_special (line 267) | def test_not_is_special(executor, pgspecial): function test_execute_from_file_no_arg (line 277) | def test_execute_from_file_no_arg(executor, pgspecial): function test_execute_from_file_io_error (line 288) | def test_execute_from_file_io_error(os, executor, pgspecial): function test_execute_from_commented_file_that_executes_another_file (line 302) | def test_execute_from_commented_file_that_executes_another_file(executor... function test_execute_commented_first_line_and_special (line 320) | def test_execute_commented_first_line_and_special(executor, pgspecial, t... function test_execute_commented_first_line_and_normal (line 418) | def test_execute_commented_first_line_and_normal(executor, pgspecial, tm... function test_multiple_queries_same_line (line 509) | def test_multiple_queries_same_line(executor): function test_multiple_queries_with_special_command_same_line (line 517) | def test_multiple_queries_with_special_command_same_line(executor, pgspe... function test_multiple_queries_same_line_syntaxerror (line 526) | def test_multiple_queries_same_line_syntaxerror(executor, exception_form... function pgspecial (line 537) | def pgspecial(): function test_special_command_help (line 542) | def test_special_command_help(executor, pgspecial): function test_bytea_field_support_in_output (line 549) | def test_bytea_field_support_in_output(executor): function test_unicode_support_in_unknown_type (line 557) | def test_unicode_support_in_unknown_type(executor): function test_unicode_support_in_enum_type (line 562) | def test_unicode_support_in_enum_type(executor): function test_json_renders_without_u_prefix (line 570) | def test_json_renders_without_u_prefix(executor, expanded): function test_jsonb_renders_without_u_prefix (line 579) | def test_jsonb_renders_without_u_prefix(executor, expanded): function test_date_time_types (line 588) | def test_date_time_types(executor): function test_large_numbers_render_directly (line 609) | def test_large_numbers_render_directly(executor, value): function test_describe_special (line 619) | def test_describe_special(executor, command, verbose, pattern, pgspecial): function test_raises_with_no_formatter (line 628) | def test_raises_with_no_formatter(executor, sql): function test_on_error_resume (line 634) | def test_on_error_resume(executor, exception_formatter): function test_on_error_stop (line 641) | def test_on_error_stop(executor, exception_formatter): function test_nonexistent_function_definition (line 655) | def test_nonexistent_function_definition(executor): function test_function_definition (line 661) | def test_function_definition(executor): function test_function_notice_order (line 677) | def test_function_notice_order(executor): function test_view_definition (line 709) | def test_view_definition(executor): function test_nonexistent_view_definition (line 722) | def test_nonexistent_view_definition(executor): function test_short_host (line 730) | def test_short_host(executor): class VirtualCursor (line 743) | class VirtualCursor: method __init__ (line 746) | def __init__(self): method execute (line 753) | def execute(self, *args, **kwargs): function test_exit_without_active_connection (line 759) | def test_exit_without_active_connection(executor): function test_virtual_database (line 783) | def test_virtual_database(executor): FILE: tests/test_pgspecial.py function test_slash_suggests_special (line 14) | def test_slash_suggests_special(): function test_slash_d_suggests_special (line 19) | def test_slash_d_suggests_special(): function test_dn_suggests_schemata (line 24) | def test_dn_suggests_schemata(): function test_d_suggests_tables_views_and_schemas (line 32) | def test_d_suggests_tables_views_and_schemas(): function test_d_dot_suggests_schema_qualified_tables_or_views (line 40) | def test_d_dot_suggests_schema_qualified_tables_or_views(): function test_df_suggests_schema_or_function (line 48) | def test_df_suggests_schema_or_function(): function test_leading_whitespace_ok (line 56) | def test_leading_whitespace_ok(): function test_dT_suggests_schema_or_datatypes (line 63) | def test_dT_suggests_schema_or_datatypes(): function test_schema_qualified_dT_suggests_datatypes (line 69) | def test_schema_qualified_dT_suggests_datatypes(): function test_c_suggests_databases (line 76) | def test_c_suggests_databases(command): FILE: tests/test_prioritization.py function test_prevalence_counter (line 4) | def test_prevalence_counter(): FILE: tests/test_prompt_utils.py function test_confirm_destructive_query_notty (line 6) | def test_confirm_destructive_query_notty(): function test_confirm_destructive_query_with_alias (line 13) | def test_confirm_destructive_query_with_alias(): FILE: tests/test_rowlimit.py function default_pgcli_obj (line 12) | def default_pgcli_obj(): function DEFAULT (line 17) | def DEFAULT(default_pgcli_obj): function LIMIT (line 22) | def LIMIT(DEFAULT): function over_default (line 27) | def over_default(DEFAULT): function over_limit (line 34) | def over_limit(LIMIT): function low_count (line 41) | def low_count(): function test_row_limit_with_LIMIT_clause (line 47) | def test_row_limit_with_LIMIT_clause(LIMIT, over_limit): function test_row_limit_without_LIMIT_clause (line 59) | def test_row_limit_without_LIMIT_clause(LIMIT, over_limit): function test_row_limit_on_non_select (line 71) | def test_row_limit_on_non_select(over_limit): FILE: tests/test_smart_completion_multiple_schemata.py function test_suggested_column_names_from_shadowed_visible_table (line 125) | def test_suggested_column_names_from_shadowed_visible_table(completer, t... function test_suggested_column_names_from_qualified_shadowed_table (line 138) | def test_suggested_column_names_from_qualified_shadowed_table(completer,... function test_suggested_column_names_from_cte (line 145) | def test_suggested_column_names_from_cte(completer, text): function test_suggested_join_conditions (line 160) | def test_suggested_join_conditions(completer, text): function test_suggested_joins (line 183) | def test_suggested_joins(completer, query, tbl): function test_suggested_column_names_from_schema_qualifed_table (line 191) | def test_suggested_column_names_from_schema_qualifed_table(completer): function test_suggested_columns_with_insert (line 206) | def test_suggested_columns_with_insert(completer, text): function test_suggested_column_names_in_function (line 211) | def test_suggested_column_names_in_function(completer): function test_suggested_table_names_with_schema_dot (line 222) | def test_suggested_table_names_with_schema_dot(completer, text, use_lead... function test_suggested_table_names_with_schema_dot2 (line 236) | def test_suggested_table_names_with_schema_dot2(completer, text, use_lea... function test_suggested_column_names_with_qualified_alias (line 248) | def test_suggested_column_names_with_qualified_alias(completer): function test_suggested_multiple_column_names (line 254) | def test_suggested_multiple_column_names(completer): function test_suggested_multiple_column_names_with_alias (line 260) | def test_suggested_multiple_column_names_with_alias(completer): function test_suggestions_after_on (line 273) | def test_suggestions_after_on(completer, text): function test_suggested_aliases_after_on_right_side (line 286) | def test_suggested_aliases_after_on_right_side(completer): function test_table_names_after_from (line 293) | def test_table_names_after_from(completer): function test_schema_qualified_function_name (line 300) | def test_schema_qualified_function_name(completer): function test_schema_qualified_function_name_after_from (line 310) | def test_schema_qualified_function_name_after_from(completer): function test_unqualified_function_name_not_returned (line 319) | def test_unqualified_function_name_not_returned(completer): function test_unqualified_function_name_in_search_path (line 326) | def test_unqualified_function_name_in_search_path(completer): function test_schema_qualified_type_name (line 345) | def test_schema_qualified_type_name(completer, text): function test_suggest_columns_from_aliased_set_returning_function (line 351) | def test_suggest_columns_from_aliased_set_returning_function(completer): function test_wildcard_column_expansion_with_function (line 365) | def test_wildcard_column_expansion_with_function(completer, text): function test_wildcard_column_expansion_with_alias_qualifier (line 377) | def test_wildcard_column_expansion_with_alias_qualifier(completer): function test_wildcard_column_expansion_with_insert (line 422) | def test_wildcard_column_expansion_with_insert(completer, text): function test_wildcard_column_expansion_with_table_qualifier (line 431) | def test_wildcard_column_expansion_with_table_qualifier(completer): function test_wildcard_column_expansion_with_two_tables (line 444) | def test_wildcard_column_expansion_with_two_tables(completer): function test_wildcard_column_expansion_with_two_tables_and_parent (line 456) | def test_wildcard_column_expansion_with_two_tables_and_parent(completer): function test_suggest_columns_from_unquoted_table (line 480) | def test_suggest_columns_from_unquoted_table(completer, text): function test_suggest_columns_from_quoted_table (line 488) | def test_suggest_columns_from_quoted_table(completer, text): function test_schema_or_visible_table_completion (line 499) | def test_schema_or_visible_table_completion(completer, text): function test_table_aliases (line 506) | def test_table_aliases(completer, text): function test_aliases_with_casing (line 522) | def test_aliases_with_casing(completer, text): function test_table_casing (line 538) | def test_table_casing(completer, text): function test_alias_search_without_aliases2 (line 553) | def test_alias_search_without_aliases2(completer): function test_alias_search_without_aliases1 (line 560) | def test_alias_search_without_aliases1(completer): function test_alias_search_with_aliases2 (line 567) | def test_alias_search_with_aliases2(completer): function test_alias_search_with_aliases1 (line 574) | def test_alias_search_with_aliases1(completer): function test_join_alias_search_with_aliases1 (line 581) | def test_join_alias_search_with_aliases1(completer): function test_join_alias_search_without_aliases1 (line 591) | def test_join_alias_search_without_aliases1(completer): function test_join_alias_search_with_aliases2 (line 601) | def test_join_alias_search_with_aliases2(completer): function test_join_alias_search_without_aliases2 (line 608) | def test_join_alias_search_without_aliases2(completer): function test_function_alias_search_without_aliases (line 615) | def test_function_alias_search_without_aliases(completer): function test_function_alias_search_with_aliases (line 625) | def test_function_alias_search_with_aliases(completer): function test_column_alias_search (line 635) | def test_column_alias_search(completer): function test_column_alias_search_qualified (line 642) | def test_column_alias_search_qualified(completer): function test_schema_object_order (line 649) | def test_schema_object_order(completer): function test_all_schema_objects (line 655) | def test_all_schema_objects(completer): function test_all_schema_objects_with_casing (line 664) | def test_all_schema_objects_with_casing(completer): function test_all_schema_objects_with_aliases (line 673) | def test_all_schema_objects_with_aliases(completer): function test_set_schema (line 682) | def test_set_schema(completer): FILE: tests/test_smart_completion_public_schema_only.py function test_function_column_name (line 121) | def test_function_column_name(completer): function test_drop_alter_function (line 131) | def test_drop_alter_function(completer, action): function test_empty_string_completion (line 136) | def test_empty_string_completion(completer): function test_select_keyword_completion (line 142) | def test_select_keyword_completion(completer): function test_builtin_function_name_completion (line 148) | def test_builtin_function_name_completion(completer): function test_builtin_function_matches_only_at_start (line 164) | def test_builtin_function_matches_only_at_start(completer): function test_user_function_name_completion (line 173) | def test_user_function_name_completion(completer): function test_user_function_name_completion_matches_anywhere (line 189) | def test_user_function_name_completion_matches_anywhere(completer): function test_list_functions_for_special (line 200) | def test_list_functions_for_special(completer): function test_suggested_column_names_from_visible_table (line 206) | def test_suggested_column_names_from_visible_table(completer): function test_suggested_cased_column_names (line 212) | def test_suggested_cased_column_names(completer): function test_suggested_auto_qualified_column_names (line 221) | def test_suggested_auto_qualified_column_names(text, completer): function test_suggested_auto_qualified_column_names_two_tables (line 236) | def test_suggested_auto_qualified_column_names_two_tables(text, completer): function test_no_column_qualification (line 246) | def test_no_column_qualification(text, completer): function test_suggested_cased_always_qualified_column_names (line 253) | def test_suggested_cased_always_qualified_column_names(completer): function test_suggested_column_names_in_function (line 262) | def test_suggested_column_names_in_function(completer): function test_suggested_column_names_with_table_dot (line 268) | def test_suggested_column_names_with_table_dot(completer): function test_suggested_column_names_with_alias (line 274) | def test_suggested_column_names_with_alias(completer): function test_suggested_multiple_column_names (line 280) | def test_suggested_multiple_column_names(completer): function test_suggested_multiple_column_names_with_alias (line 286) | def test_suggested_multiple_column_names_with_alias(completer): function test_suggested_cased_column_names_with_alias (line 292) | def test_suggested_cased_column_names_with_alias(completer): function test_suggested_multiple_column_names_with_dot (line 298) | def test_suggested_multiple_column_names_with_dot(completer): function test_suggest_columns_after_three_way_join (line 308) | def test_suggest_columns_after_three_way_join(completer): function test_suggested_join_conditions (line 337) | def test_suggested_join_conditions(completer, text): function test_cased_join_conditions (line 344) | def test_cased_join_conditions(completer, text): function test_suggested_join_conditions_with_same_table_twice (line 361) | def test_suggested_join_conditions_with_same_table_twice(completer, text): function test_suggested_join_conditions_with_invalid_qualifier (line 377) | def test_suggested_join_conditions_with_invalid_qualifier(completer, text): function test_suggested_join_conditions_with_invalid_table (line 390) | def test_suggested_join_conditions_with_invalid_table(completer, text, r... function test_suggested_joins_fuzzy (line 405) | def test_suggested_joins_fuzzy(completer, text): function test_suggested_joins (line 430) | def test_suggested_joins(completer, text): function test_cased_joins (line 444) | def test_cased_joins(completer, text): function test_aliased_joins (line 459) | def test_aliased_joins(completer, text): function test_suggested_joins_quoted_schema_qualified_table (line 483) | def test_suggested_joins_quoted_schema_qualified_table(completer, text): function test_suggested_aliases_after_on (line 498) | def test_suggested_aliases_after_on(completer, text): function test_suggested_aliases_after_on_right_side (line 517) | def test_suggested_aliases_after_on_right_side(completer, text): function test_suggested_tables_after_on (line 531) | def test_suggested_tables_after_on(completer, text): function test_suggested_tables_after_on_right_side (line 550) | def test_suggested_tables_after_on_right_side(completer, text): function test_join_using_suggests_common_columns (line 564) | def test_join_using_suggests_common_columns(completer, text): function test_join_using_suggests_from_last_table (line 579) | def test_join_using_suggests_from_last_table(completer, text): function test_join_using_suggests_columns_after_first_column (line 593) | def test_join_using_suggests_columns_after_first_column(completer, text): function test_table_names_after_from (line 607) | def test_table_names_after_from(completer, text): function test_auto_escaped_col_names (line 627) | def test_auto_escaped_col_names(completer): function test_allow_leading_double_quote_in_last_word (line 633) | def test_allow_leading_double_quote_in_last_word(completer): function test_suggest_datatype (line 651) | def test_suggest_datatype(text, completer): function test_suggest_columns_from_escaped_table_alias (line 657) | def test_suggest_columns_from_escaped_table_alias(completer): function test_suggest_columns_from_set_returning_function (line 663) | def test_suggest_columns_from_set_returning_function(completer): function test_suggest_columns_from_aliased_set_returning_function (line 669) | def test_suggest_columns_from_aliased_set_returning_function(completer): function test_join_functions_using_suggests_common_columns (line 675) | def test_join_functions_using_suggests_common_columns(completer): function test_join_functions_on_suggests_columns_and_join_conditions (line 683) | def test_join_functions_on_suggests_columns_and_join_conditions(completer): function test_learn_keywords (line 693) | def test_learn_keywords(completer): function test_learn_table_names (line 705) | def test_learn_table_names(completer): function test_columns_before_keywords (line 720) | def test_columns_before_keywords(completer): function test_wildcard_column_expansion (line 741) | def test_wildcard_column_expansion(completer, text): function test_wildcard_column_expansion_with_alias (line 763) | def test_wildcard_column_expansion_with_alias(completer, text): function test_wildcard_column_expansion_with_table_qualifier (line 788) | def test_wildcard_column_expansion_with_table_qualifier(completer, text,... function test_wildcard_column_expansion_with_two_tables (line 799) | def test_wildcard_column_expansion_with_two_tables(completer): function test_wildcard_column_expansion_with_two_tables_and_parent (line 811) | def test_wildcard_column_expansion_with_two_tables_and_parent(completer): function test_suggest_columns_from_unquoted_table (line 828) | def test_suggest_columns_from_unquoted_table(completer, text): function test_suggest_columns_from_quoted_table (line 835) | def test_suggest_columns_from_quoted_table(completer): function test_schema_or_visible_table_completion (line 842) | def test_schema_or_visible_table_completion(completer, text): function test_table_aliases (line 849) | def test_table_aliases(completer, text): function test_duplicate_table_aliases (line 856) | def test_duplicate_table_aliases(completer, text): function test_duplicate_aliases_with_casing (line 881) | def test_duplicate_aliases_with_casing(completer, text): function test_aliases_with_casing (line 904) | def test_aliases_with_casing(completer, text): function test_table_casing (line 911) | def test_table_casing(completer, text): function test_insert (line 926) | def test_insert(completer, text): function test_suggest_cte_names (line 933) | def test_suggest_cte_names(completer): function test_suggest_columns_from_cte (line 948) | def test_suggest_columns_from_cte(completer): function test_cte_qualified_columns (line 970) | def test_cte_qualified_columns(completer, text): function test_keyword_casing_upper (line 985) | def test_keyword_casing_upper(keyword_casing, expected, texts): function test_keyword_after_alter (line 993) | def test_keyword_after_alter(completer): function test_set_schema (line 1001) | def test_set_schema(completer): function test_special_name_completion (line 1009) | def test_special_name_completion(completer): FILE: tests/test_sqlcompletion.py function cols_etc (line 21) | def cols_etc(table, schema=None, alias=None, is_function=False, parent=N... function test_select_suggests_cols_with_visible_table_scope (line 34) | def test_select_suggests_cols_with_visible_table_scope(): function test_select_suggests_cols_with_qualified_table_scope (line 39) | def test_select_suggests_cols_with_qualified_table_scope(): function test_cte_does_not_crash (line 44) | def test_cte_does_not_crash(): function test_where_suggests_columns_functions_quoted_table (line 51) | def test_where_suggests_columns_functions_quoted_table(expression): function test_where_suggests_columns_functions (line 74) | def test_where_suggests_columns_functions(expression): function test_where_in_suggests_columns (line 83) | def test_where_in_suggests_columns(expression): function test_after_as (line 89) | def test_after_as(expression): function test_where_equals_any_suggests_columns_or_keywords (line 94) | def test_where_equals_any_suggests_columns_or_keywords(): function test_lparen_suggests_cols_and_funcs (line 100) | def test_lparen_suggests_cols_and_funcs(): function test_select_suggests_cols_and_funcs (line 109) | def test_select_suggests_cols_and_funcs(): function test_suggests_tables_views_and_schemas (line 119) | def test_suggests_tables_views_and_schemas(expression): function test_suggest_tables_views_schemas_and_functions (line 125) | def test_suggest_tables_views_schemas_and_functions(expression): function test_suggest_after_join_with_two_tables (line 137) | def test_suggest_after_join_with_two_tables(expression): function test_suggest_after_join_with_one_table (line 148) | def test_suggest_after_join_with_one_table(expression): function test_suggest_qualified_tables_and_views (line 159) | def test_suggest_qualified_tables_and_views(expression): function test_suggest_qualified_aliasable_tables_and_views (line 165) | def test_suggest_qualified_aliasable_tables_and_views(expression): function test_suggest_qualified_tables_views_and_functions (line 180) | def test_suggest_qualified_tables_views_and_functions(expression): function test_suggest_qualified_tables_views_functions_and_joins (line 186) | def test_suggest_qualified_tables_views_functions_and_joins(expression): function test_truncate_suggests_tables_and_schemas (line 195) | def test_truncate_suggests_tables_and_schemas(): function test_truncate_suggests_qualified_tables (line 200) | def test_truncate_suggests_qualified_tables(): function test_distinct_suggests_cols (line 206) | def test_distinct_suggests_cols(text): function test_distinct_and_order_by_suggestions_with_aliases (line 226) | def test_distinct_and_order_by_suggestions_with_aliases(text, text_befor... function test_distinct_and_order_by_suggestions_with_alias_given (line 252) | def test_distinct_and_order_by_suggestions_with_alias_given(text, text_b... function test_function_arguments_with_alias_given (line 266) | def test_function_arguments_with_alias_given(): function test_col_comma_suggests_cols (line 281) | def test_col_comma_suggests_cols(): function test_table_comma_suggests_tables_and_schemas (line 290) | def test_table_comma_suggests_tables_and_schemas(): function test_into_suggests_tables_and_schemas (line 295) | def test_into_suggests_tables_and_schemas(): function test_insert_into_lparen_suggests_cols (line 301) | def test_insert_into_lparen_suggests_cols(text): function test_insert_into_lparen_partial_text_suggests_cols (line 306) | def test_insert_into_lparen_partial_text_suggests_cols(): function test_insert_into_lparen_comma_suggests_cols (line 311) | def test_insert_into_lparen_comma_suggests_cols(): function test_partially_typed_col_name_suggests_col_names (line 316) | def test_partially_typed_col_name_suggests_col_names(): function test_dot_suggests_cols_of_a_table_or_schema_qualified_table (line 321) | def test_dot_suggests_cols_of_a_table_or_schema_qualified_table(): function test_dot_suggests_cols_of_an_alias (line 340) | def test_dot_suggests_cols_of_an_alias(sql): function test_dot_suggests_cols_of_an_alias_where (line 359) | def test_dot_suggests_cols_of_an_alias_where(sql): function test_dot_col_comma_suggests_cols_or_schema_qualified_table (line 369) | def test_dot_col_comma_suggests_cols_or_schema_qualified_table(): function test_sub_select_suggests_keyword (line 387) | def test_sub_select_suggests_keyword(expression): function test_sub_select_partial_text_suggests_keyword (line 400) | def test_sub_select_partial_text_suggests_keyword(expression): function test_outer_table_reference_in_exists_subquery_suggests_columns (line 405) | def test_outer_table_reference_in_exists_subquery_suggests_columns(): function test_sub_select_table_name_completion (line 417) | def test_sub_select_table_name_completion(expression): function test_sub_select_table_name_completion_with_outer_table (line 429) | def test_sub_select_table_name_completion_with_outer_table(expression): function test_sub_select_col_name_completion (line 435) | def test_sub_select_col_name_completion(): function test_sub_select_multiple_col_name_completion (line 445) | def test_sub_select_multiple_col_name_completion(): function test_sub_select_dot_col_name_completion (line 450) | def test_sub_select_dot_col_name_completion(): function test_join_suggests_tables_and_schemas (line 462) | def test_join_suggests_tables_and_schemas(tbl_alias, join_type): function test_left_join_with_comma (line 473) | def test_left_join_with_comma(): function test_join_alias_dot_suggests_cols1 (line 489) | def test_join_alias_dot_suggests_cols1(sql): function test_join_alias_dot_suggests_cols2 (line 508) | def test_join_alias_dot_suggests_cols2(sql): function test_on_suggests_aliases_and_join_conditions (line 533) | def test_on_suggests_aliases_and_join_conditions(sql): function test_on_suggests_tables_and_join_conditions (line 549) | def test_on_suggests_tables_and_join_conditions(sql): function test_on_suggests_aliases_right_side (line 565) | def test_on_suggests_aliases_right_side(sql): function test_on_suggests_tables_and_join_conditions_right_side (line 577) | def test_on_suggests_tables_and_join_conditions_right_side(sql): function test_join_using_suggests_common_columns (line 598) | def test_join_using_suggests_common_columns(text): function test_suggest_columns_after_multiple_joins (line 603) | def test_suggest_columns_after_multiple_joins(): function test_2_statements_2nd_current (line 613) | def test_2_statements_2nd_current(): function test_2_statements_1st_current (line 629) | def test_2_statements_1st_current(): function test_3_statements_2nd_current (line 637) | def test_3_statements_2nd_current(): function test_statements_in_function_body (line 695) | def test_statements_in_function_body(text): function test_statements_with_cursor_after_function_body (line 724) | def test_statements_with_cursor_after_function_body(text): function test_statements_with_cursor_before_function_body (line 730) | def test_statements_with_cursor_before_function_body(text): function test_create_db_with_template (line 735) | def test_create_db_with_template(): function test_specials_included_for_initial_completion (line 742) | def test_specials_included_for_initial_completion(initial_text): function test_drop_schema_qualified_table_suggests_only_tables (line 748) | def test_drop_schema_qualified_table_suggests_only_tables(): function test_handle_pre_completion_comma_gracefully (line 755) | def test_handle_pre_completion_comma_gracefully(text): function test_drop_schema_suggests_schemas (line 761) | def test_drop_schema_suggests_schemas(): function test_cast_operator_suggests_types (line 767) | def test_cast_operator_suggests_types(text): function test_cast_operator_suggests_schema_qualified_types (line 776) | def test_cast_operator_suggests_schema_qualified_types(text): function test_alter_column_type_suggests_types (line 783) | def test_alter_column_type_suggests_types(): function test_identifier_suggests_types_in_parentheses (line 807) | def test_identifier_suggests_types_in_parentheses(text): function test_alias_suggests_keywords (line 827) | def test_alias_suggests_keywords(text): function test_invalid_sql (line 832) | def test_invalid_sql(): function test_suggest_where_keyword (line 843) | def test_suggest_where_keyword(text): function test_named_query_completion (line 874) | def test_named_query_completion(text, before, expected): function test_select_suggests_fields_from_function (line 879) | def test_select_suggests_fields_from_function(): function test_leading_parenthesis (line 885) | def test_leading_parenthesis(sql): function test_ignore_leading_double_quotes (line 891) | def test_ignore_leading_double_quotes(sql): function test_column_keyword_suggests_columns (line 905) | def test_column_keyword_suggests_columns(sql): function test_handle_unrecognized_kw_generously (line 910) | def test_handle_unrecognized_kw_generously(): function test_keyword_after_alter (line 919) | def test_keyword_after_alter(sql): function test_suggestion_when_setting_search_path (line 923) | def test_suggestion_when_setting_search_path(): FILE: tests/test_ssh_tunnel.py function mock_ssh_tunnel_forwarder (line 14) | def mock_ssh_tunnel_forwarder() -> MagicMock: function mock_pgexecute (line 24) | def mock_pgexecute() -> MagicMock: function test_ssh_tunnel (line 29) | def test_ssh_tunnel(mock_ssh_tunnel_forwarder: MagicMock, mock_pgexecute... function test_cli_with_tunnel (line 116) | def test_cli_with_tunnel() -> None: function test_config (line 126) | def test_config(tmpdir: os.PathLike, mock_ssh_tunnel_forwarder: MagicMoc... FILE: tests/utils.py function db_connection (line 12) | def db_connection(dbname=None): function create_db (line 47) | def create_db(dbname): function drop_tables (line 55) | def drop_tables(conn): function run (line 66) | def run(executor, sql, join=False, expanded=False, pgspecial=None, excep... function completions_to_set (line 80) | def completions_to_set(completions):