diff --git a/bec_widgets/cli/generate_cli.py b/bec_widgets/cli/generate_cli.py index fd3f331b..67ea7f57 100644 --- a/bec_widgets/cli/generate_cli.py +++ b/bec_widgets/cli/generate_cli.py @@ -9,6 +9,7 @@ import sys from typing import Literal import black +import isort from qtpy.QtWidgets import QGraphicsWidget, QWidget from bec_widgets.utils import BECConnector @@ -32,7 +33,7 @@ class ClientGenerator: import enum from typing import Literal, Optional, overload -from bec_widgets.cli.client_utils import BECGuiClientMixin, RPCBase, rpc_call""" +from bec_widgets.cli.client_utils import RPCBase, rpc_call, BECGuiClientMixin""" self.content = "" @@ -126,6 +127,15 @@ class {class_name}(RPCBase):""" except black.NothingChanged: formatted_content = full_content + isort.Config( + profile="black", + line_length=100, + multi_line_output=3, + include_trailing_comma=True, + known_first_party=["bec_widgets"], + ) + formatted_content = isort.code(formatted_content) + with open(file_name, "w", encoding="utf-8") as file: file.write(formatted_content) diff --git a/pyproject.toml b/pyproject.toml index 82440d1f..67526d50 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -23,7 +23,8 @@ dependencies = [ "zmq", "h5py", "pyqtdarktheme", - "black", + "black", # needed for bw-generate-cli + "isort", # needed for bw-generate-cli ] @@ -35,7 +36,6 @@ dev = [ "pytest-xvfb", "coverage", "pytest-qt", - "isort", "fakeredis", ] pyqt5 = ["PyQt5>=5.9", "PyQtWebEngine>=5.9"] diff --git a/tests/unit_tests/test_generate_cli_client.py b/tests/unit_tests/test_generate_cli_client.py index 1f0f6dec..6e11857c 100644 --- a/tests/unit_tests/test_generate_cli_client.py +++ b/tests/unit_tests/test_generate_cli_client.py @@ -1,6 +1,7 @@ from textwrap import dedent import black +import isort from bec_widgets.cli.generate_cli import ClientGenerator @@ -92,6 +93,8 @@ def test_client_generator_with_black_formatting(): generator.header + "\n" + generator.content, mode=black.FileMode(line_length=100) ) + generated_output_formatted = isort.code(generated_output_formatted) + assert expected_output_formatted == generated_output_formatted