Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 1 addition & 8 deletions mycli/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@
from mycli.main_modes.list_dsn import main_list_dsn
from mycli.main_modes.list_ssh_config import main_list_ssh_config
from mycli.packages import special
from mycli.packages.cli_utils import is_valid_connection_scheme
from mycli.packages.cli_utils import filtered_sys_argv, is_valid_connection_scheme
from mycli.packages.filepaths import dir_path_exists, guess_socket_location
from mycli.packages.hybrid_redirection import get_redirect_components, is_redirect_command
from mycli.packages.prompt_utils import confirm, confirm_destructive_query
Expand Down Expand Up @@ -2706,13 +2706,6 @@ def edit_and_execute(event: KeyPressEvent) -> None:
buff.open_in_editor(validate_and_handle=False)


def filtered_sys_argv() -> list[str]:
args = sys.argv[1:]
if args == ['-h']:
args = ['--help']
return args


def main() -> int | None:
try:
result = click_entrypoint.main(
Expand Down
9 changes: 9 additions & 0 deletions mycli/packages/cli_utils.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
from __future__ import annotations

import sys


def filtered_sys_argv() -> list[str]:
args = sys.argv[1:]
if args == ['-h']:
args = ['--help']
return args


def is_valid_connection_scheme(text: str) -> tuple[bool, str | None]:
# exit early if the text does not resemble a DSN URI
Expand Down
15 changes: 15 additions & 0 deletions test/pytests/test_cli_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,26 @@

import pytest

from mycli.packages import cli_utils
from mycli.packages.cli_utils import (
filtered_sys_argv,
is_valid_connection_scheme,
)


@pytest.mark.parametrize(
('argv', 'expected'),
[
(['mycli', '-h'], ['--help']),
(['mycli', '-h', 'example.com'], ['-h', 'example.com']),
],
)
def test_filtered_sys_argv(monkeypatch, argv, expected):
monkeypatch.setattr(cli_utils.sys, 'argv', argv)

assert filtered_sys_argv() == expected


@pytest.mark.parametrize(
('text', 'is_valid', 'invalid_scheme'),
[
Expand Down
Loading