Skip to content

Commit

Permalink
Adjust tests for Python 3.13
Browse files Browse the repository at this point in the history
And use this version in CI.
  • Loading branch information
dlax committed Oct 8, 2024
1 parent 617dc57 commit a756c98
Show file tree
Hide file tree
Showing 3 changed files with 101 additions and 10 deletions.
3 changes: 2 additions & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,15 @@ jobs:
include:
- python: "3.9"
psycopg: "psycopg2"
- python: "3.12"
- python: "3.13"
psycopg: "psycopg3"
steps:
- uses: actions/checkout@v4
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
allow-prereleases: true
- name: Install tox
run: pip install tox
- name: Add fr_FR and zh_TW for test purposes
Expand Down
16 changes: 7 additions & 9 deletions tests/test_cli_help.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
>>> import sys
>>> import pytest
>>> if sys.version_info < (3, 9):
... pytest.skip("only applies for Python version >= 3.9")
>>> if sys.version_info < (3, 13):
... pytest.skip("only applies for Python version >= 3.13")
...

>>> from pgactivity import cli
Expand All @@ -12,7 +12,7 @@ usage: pytest [options] [connection string]
htop like application for PostgreSQL server activity monitoring.
<BLANKLINE>
Configuration:
-P PROFILE, --profile PROFILE
-P, --profile PROFILE
Configuration profile matching a PROFILE.conf file in
${XDG_CONFIG_HOME:~/.config}/pg_activity/ or
/etc/pg_activity/, or a built-in profile.
Expand Down Expand Up @@ -48,13 +48,11 @@ Options:
Connection Options:
connection string A valid connection string to the database, e.g.:
'host=HOSTNAME port=PORT user=USER dbname=DBNAME'.
-h HOSTNAME, --host HOSTNAME
Database server host or socket directory.
-p PORT, --port PORT Database server port.
-U USERNAME, --username USERNAME
-h, --host HOSTNAME Database server host or socket directory.
-p, --port PORT Database server port.
-U, --username USERNAME
Database user name.
-d DBNAME, --dbname DBNAME
Database name to connect to.
-d, --dbname DBNAME Database name to connect to.
<BLANKLINE>
Process table display options:
These options may be used hide some columns from the processes table.
Expand Down
92 changes: 92 additions & 0 deletions tests/test_cli_help_py312.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
>>> import sys
>>> import pytest
>>> if sys.version_info >= (3, 13):
... pytest.skip("only applies for Python version < 3.13")
...

>>> from pgactivity import cli
>>> parser = cli.get_parser()
>>> parser.print_help()
usage: pytest [options] [connection string]
<BLANKLINE>
htop like application for PostgreSQL server activity monitoring.
<BLANKLINE>
Configuration:
-P PROFILE, --profile PROFILE
Configuration profile matching a PROFILE.conf file in
${XDG_CONFIG_HOME:~/.config}/pg_activity/ or
/etc/pg_activity/, or a built-in profile.
<BLANKLINE>
Options:
--blocksize BLOCKSIZE
Filesystem blocksize (default: 4096).
--rds Enable support for AWS RDS (implies --no-tempfiles and
filters out the rdsadmin database from space
calculation).
--output FILEPATH Store running queries as CSV.
--db-size, --no-db-size
Enable/disable total size of DB.
--tempfiles, --no-tempfiles
Enable/disable tempfile count and size.
--walreceiver, --no-walreceiver
Enable/disable walreceiver checks.
-w, --wrap-query Wrap query column instead of truncating.
--duration-mode DURATION_MODE
Duration mode. Values: 1-QUERY(default),
2-TRANSACTION, 3-BACKEND.
--min-duration SECONDS
Don't display queries with smaller than specified
duration (in seconds).
--filter FIELD:REGEX Filter activities with a (case insensitive) regular
expression applied on selected fields. Known fields
are: dbname.
--debug-file DEBUG_FILE
Enable debug and write it to DEBUG_FILE.
--version show program's version number and exit.
--help Show this help message and exit.
<BLANKLINE>
Connection Options:
connection string A valid connection string to the database, e.g.:
'host=HOSTNAME port=PORT user=USER dbname=DBNAME'.
-h HOSTNAME, --host HOSTNAME
Database server host or socket directory.
-p PORT, --port PORT Database server port.
-U USERNAME, --username USERNAME
Database user name.
-d DBNAME, --dbname DBNAME
Database name to connect to.
<BLANKLINE>
Process table display options:
These options may be used hide some columns from the processes table.
<BLANKLINE>
--pid, --no-pid Enable/disable PID.
--database, --no-database
Enable/disable DATABASE.
--user, --no-user Enable/disable USER.
--client, --no-client
Enable/disable CLIENT.
--cpu, --no-cpu Enable/disable CPU%.
--mem, --no-mem Enable/disable MEM%.
--read, --no-read Enable/disable READ/s.
--write, --no-write Enable/disable WRITE/s.
--time, --no-time Enable/disable TIME+.
--wait, --no-wait Enable/disable W.
--app-name, --no-app-name
Enable/disable APP.
<BLANKLINE>
Header display options:
--no-inst-info Hide instance information.
--no-sys-info Hide system information.
--no-proc-info Hide workers process information.
<BLANKLINE>
Other display options:
--hide-queries-in-logs
Disable log_min_duration_statements and
log_min_duration_sample for pg_activity.
--refresh REFRESH Refresh rate. Values: 0.5, 1, 2, 3, 4, 5 (default: 2).
<BLANKLINE>
The connection string can be in the form of a list of Key/Value parameters or
an URI as described in the PostgreSQL documentation. The parsing is delegated
to the libpq: different versions of the client library may support different
formats or parameters (for example, connection URIs are only supported from
libpq 9.2).

0 comments on commit a756c98

Please sign in to comment.