modernisation for python 3.11

This commit is contained in:
Jörg Thalheim
2023-11-29 12:40:48 +01:00
committed by Mic92
parent 26e3e3872c
commit f1b223d0a1
38 changed files with 160 additions and 163 deletions

View File

@@ -1,26 +1,27 @@
import os
import signal
import subprocess
from collections.abc import Iterator
from pathlib import Path
from typing import IO, Any, Dict, Iterator, List, Optional, Union
from typing import IO, Any
import pytest
_FILE = Union[None, int, IO[Any]]
_FILE = None | int | IO[Any]
class Command:
def __init__(self) -> None:
self.processes: List[subprocess.Popen[str]] = []
self.processes: list[subprocess.Popen[str]] = []
def run(
self,
command: List[str],
extra_env: Dict[str, str] = {},
command: list[str],
extra_env: dict[str, str] = {},
stdin: _FILE = None,
stdout: _FILE = None,
stderr: _FILE = None,
workdir: Optional[Path] = None,
workdir: Path | None = None,
) -> subprocess.Popen[str]:
env = os.environ.copy()
env.update(extra_env)

View File

@@ -4,8 +4,9 @@ import os
import shutil
import subprocess as sp
import tempfile
from collections.abc import Iterator
from pathlib import Path
from typing import Iterator, NamedTuple
from typing import NamedTuple
import pytest
from pydantic import AnyUrl

View File

@@ -2,7 +2,7 @@
import contextlib
import socket
from typing import Callable
from collections.abc import Callable
import pytest

View File

@@ -3,10 +3,11 @@ import shutil
import string
import subprocess
import time
from collections.abc import Iterator
from pathlib import Path
from sys import platform
from tempfile import TemporaryDirectory
from typing import TYPE_CHECKING, Iterator
from typing import TYPE_CHECKING
import pytest

View File

@@ -1,8 +1,8 @@
import logging
import os
import tempfile
from collections.abc import Iterator
from pathlib import Path
from typing import Iterator
import pytest

View File

@@ -1,7 +1,7 @@
import json
import tempfile
from pathlib import Path
from typing import Any, Optional
from typing import Any
import pytest
from cli import Cli
@@ -206,18 +206,18 @@ def test_map_type() -> None:
assert config.map_type("boolean") == bool
assert config.map_type("attribute set of string") == dict[str, str]
assert config.map_type("attribute set of integer") == dict[str, int]
assert config.map_type("null or string") == Optional[str]
assert config.map_type("null or string") == str | None
# test the cast function with simple types
def test_cast() -> None:
assert config.cast(value=["true"], type=bool, opt_description="foo-option") is True
assert (
config.cast(value=["null"], type=Optional[str], opt_description="foo-option")
config.cast(value=["null"], type=str | None, opt_description="foo-option")
is None
)
assert (
config.cast(value=["bar"], type=Optional[str], opt_description="foo-option")
config.cast(value=["bar"], type=str | None, opt_description="foo-option")
== "bar"
)

View File

@@ -1,7 +1,8 @@
import logging
import os
from collections.abc import Iterator
from contextlib import contextmanager
from typing import TYPE_CHECKING, Iterator
from typing import TYPE_CHECKING
import pytest
from cli import Cli

View File

@@ -1,6 +1,5 @@
import os
import sys
from typing import Union
import pytest
import pytest_subprocess.fake_process
@@ -28,7 +27,7 @@ def test_ssh_no_pass(
user = "user"
if os.environ.get("IN_NIX_SANDBOX"):
monkeypatch.delenv("IN_NIX_SANDBOX")
cmd: list[Union[str, utils.Any]] = [
cmd: list[str | utils.Any] = [
"nix",
fp.any(),
"shell",
@@ -58,7 +57,7 @@ def test_ssh_with_pass(
user = "user"
if os.environ.get("IN_NIX_SANDBOX"):
monkeypatch.delenv("IN_NIX_SANDBOX")
cmd: list[Union[str, utils.Any]] = [
cmd: list[str | utils.Any] = [
"nix",
fp.any(),
"shell",
@@ -79,7 +78,7 @@ def test_ssh_with_pass(
def test_qrcode_scan(fp: pytest_subprocess.fake_process.FakeProcess) -> None:
cmd: list[Union[str, utils.Any]] = [fp.any()]
cmd: list[str | utils.Any] = [fp.any()]
fp.register(cmd, stdout="https://test.test")
result = cli.qrcode_scan("test.png")
assert result == "https://test.test"