diff --git a/InitGui.py b/InitGui.py index b79f572..6eeec2c 100644 --- a/InitGui.py +++ b/InitGui.py @@ -11,6 +11,8 @@ # __file__ ist im FlatPak-FreeCAD nicht gesetzt → Fallback auf getUserAppDataDir. # globals() schreibt _MODDIR in exec-globals, damit Klassen-Methoden es sehen. +# Statische Prüfer sehen diese Zuweisung nicht — jede Verwendung von _MODDIR +# trägt deshalb ein "# noqa: F821". Zur Laufzeit ist der Name gesetzt. try: globals()['_MODDIR'] = os.path.dirname(os.path.abspath(__file__)) except NameError: @@ -25,7 +27,7 @@ class KiAssistentCommand: def GetResources(self): ki_path = os.path.join(os.path.expanduser("~"), "Schreibtisch", "Macros", "KI Muli source Assistent") - assets = os.path.join(_MODDIR, "assets") + assets = os.path.join(_MODDIR, "assets") # noqa: F821 icon = "" for kandidat in (os.path.join(ki_path, "ki_icon.svg"), os.path.join(assets, "Icon.svg")): @@ -89,8 +91,8 @@ def Activated(self): # ── Pfade einrichten ─────────────────────────────────────────────────────────── def _pfade_einrichten(): - if _MODDIR not in sys.path: - sys.path.insert(0, _MODDIR) + if _MODDIR not in sys.path: # noqa: F821 + sys.path.insert(0, _MODDIR) # noqa: F821 def _panel_starten(): @@ -114,7 +116,7 @@ class MeineMakroWorkbench(Gui.Workbench): def __init__(self): super().__init__() - self.Icon = os.path.join(_MODDIR, "Icon.svg") + self.Icon = os.path.join(_MODDIR, "Icon.svg") # noqa: F821 def Initialize(self): # Immer aufgerufen wenn Workbench zum ersten Mal aktiviert wird diff --git a/editor/controller/snippet_controller.py b/editor/controller/snippet_controller.py index b237bf9..a771e5a 100644 --- a/editor/controller/snippet_controller.py +++ b/editor/controller/snippet_controller.py @@ -18,6 +18,7 @@ """ import os +import json from core.qt_compat import QtWidgets, QtCore, QtGui from core import theme diff --git a/tests/conftest.py b/tests/conftest.py new file mode 100644 index 0000000..aaa5c9d --- /dev/null +++ b/tests/conftest.py @@ -0,0 +1,24 @@ +# -*- coding: utf-8 -*- +""" +conftest.py +─────────── +Sammel-Regeln für pytest. + +test_editor_live.py startet echte Qt-Widgets und importiert PySide6 bzw. +PySide2 schon beim Laden der Datei. Auf Rechnern ohne Qt — etwa dem +GitHub-Actions-Runner — bricht pytest deshalb bereits beim Einsammeln der +Tests ab, bevor ein einziger Test läuft. + +Fehlt Qt, wird die Datei hier übersprungen. Die Qt-freien Tests in +test_back_funktionen.py laufen davon unberührt weiter. +""" + +collect_ignore = [] + +try: + import PySide6 # noqa: F401 +except ImportError: + try: + import PySide2 # noqa: F401 + except ImportError: + collect_ignore.append("test_editor_live.py") diff --git a/ui/manager.py b/ui/manager.py index 19d276b..e6e53fa 100644 --- a/ui/manager.py +++ b/ui/manager.py @@ -243,9 +243,8 @@ def _filter_makros(self, text): sichtbare_ordner.add(rel_low) anzahl = sum(1 for btn, *_ in self._makro_buttons if btn.isVisible()) - if inhalt_modus: - self.status.setText( - f"{anzahl} Treffer – Klick öffnet Datei im Editor") + self.status.setText( + f"{anzahl} Treffer – Klick öffnet Datei im Editor") for rel_pfad, lbl in self._ordner_labels.items(): rel_low = rel_pfad.lower()