Einzeltest kann zur Prüfung aufgerufen werden
This commit is contained in:
@@ -0,0 +1,106 @@
|
|||||||
|
@echo off
|
||||||
|
REM ============================================================================
|
||||||
|
REM run_test.bat - Führt Tests für eine einzelne DXF-Datei aus
|
||||||
|
REM
|
||||||
|
REM Usage:
|
||||||
|
REM run_test.bat <filename> - Führt getexdraw Test aus
|
||||||
|
REM run_test.bat <filename> --clean - Führt Test aus und räumt auf
|
||||||
|
REM run_test.bat <filename> --ioconverter - Führt ioconverter Test aus
|
||||||
|
REM run_test.bat <filename> --translation - Führt translation Test aus
|
||||||
|
REM
|
||||||
|
REM Der Dateiname kann mit oder ohne .dxf Erweiterung angegeben werden.
|
||||||
|
REM Die Datei wird standardmäßig im testdata Ordner gesucht.
|
||||||
|
REM ============================================================================
|
||||||
|
|
||||||
|
if [%1]==[] goto usage
|
||||||
|
|
||||||
|
REM Umgebungsvariablen laden
|
||||||
|
call "%~dp0setenv.bat"
|
||||||
|
|
||||||
|
if exist "%~dp0_setenv.bat" (
|
||||||
|
echo Lade lokale Umgebungseinstellungen aus _setenv.bat...
|
||||||
|
call "%~dp0_setenv.bat"
|
||||||
|
)
|
||||||
|
|
||||||
|
REM Dateinamen extrahieren (ohne Pfad und ohne .dxf Erweiterung)
|
||||||
|
set "FILENAME=%~n1"
|
||||||
|
|
||||||
|
REM Prüfe ob Datei im testdata Ordner existiert
|
||||||
|
if not exist "%PROJECT_TEST%\%FILENAME%.dxf" (
|
||||||
|
echo Fehler: Datei %FILENAME%.dxf nicht gefunden in %PROJECT_TEST%
|
||||||
|
echo.
|
||||||
|
goto usage
|
||||||
|
)
|
||||||
|
|
||||||
|
REM Sammle zusätzliche Parameter für run_tests.py
|
||||||
|
set "TEST_PARAMS=--file %FILENAME%"
|
||||||
|
|
||||||
|
REM Prüfe auf zusätzliche Flags
|
||||||
|
:parse_args
|
||||||
|
if "%2"=="" goto run_test
|
||||||
|
if /i "%2"=="--clean" (
|
||||||
|
set "TEST_PARAMS=%TEST_PARAMS% --clean"
|
||||||
|
shift
|
||||||
|
goto parse_args
|
||||||
|
)
|
||||||
|
if /i "%2"=="--ioconverter" (
|
||||||
|
set "TEST_PARAMS=%TEST_PARAMS% --ioconverter"
|
||||||
|
shift
|
||||||
|
goto parse_args
|
||||||
|
)
|
||||||
|
if /i "%2"=="--translation" (
|
||||||
|
set "TEST_PARAMS=%TEST_PARAMS% --translation"
|
||||||
|
shift
|
||||||
|
goto parse_args
|
||||||
|
)
|
||||||
|
REM Unbekannte Parameter ignorieren oder durchreichen
|
||||||
|
shift
|
||||||
|
goto parse_args
|
||||||
|
|
||||||
|
:run_test
|
||||||
|
echo.
|
||||||
|
echo ============================================================================
|
||||||
|
echo Führe Test aus für: %FILENAME%.dxf
|
||||||
|
echo Test-Parameter: %TEST_PARAMS%
|
||||||
|
echo ============================================================================
|
||||||
|
echo.
|
||||||
|
|
||||||
|
REM Wechsle ins Projektverzeichnis und führe run_tests.py aus
|
||||||
|
cd /d "%PROJECT%"
|
||||||
|
python "%PROJECT_LIB%\run_tests.py" %TEST_PARAMS%
|
||||||
|
|
||||||
|
set TEST_RESULT=%ERRORLEVEL%
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo ============================================================================
|
||||||
|
if %TEST_RESULT% EQU 0 (
|
||||||
|
echo Test erfolgreich abgeschlossen für: %FILENAME%.dxf
|
||||||
|
) else (
|
||||||
|
echo Test fehlgeschlagen für: %FILENAME%.dxf
|
||||||
|
)
|
||||||
|
echo ============================================================================
|
||||||
|
echo.
|
||||||
|
|
||||||
|
exit /B %TEST_RESULT%
|
||||||
|
|
||||||
|
:usage
|
||||||
|
echo.
|
||||||
|
echo Usage: %~nx0 ^<filename^> [OPTIONS]
|
||||||
|
echo.
|
||||||
|
echo Argumente:
|
||||||
|
echo filename Name der DXF-Datei (mit oder ohne .dxf Erweiterung)
|
||||||
|
echo Die Datei wird im testdata Ordner gesucht.
|
||||||
|
echo.
|
||||||
|
echo Optionen:
|
||||||
|
echo --clean Räumt das work-Verzeichnis nach dem Test auf
|
||||||
|
echo --ioconverter Führt ioconverter Test aus (statt getexdraw)
|
||||||
|
echo --translation Führt translation Test aus (statt getexdraw)
|
||||||
|
echo.
|
||||||
|
echo Beispiele:
|
||||||
|
echo %~nx0 easy
|
||||||
|
echo %~nx0 easy.dxf
|
||||||
|
echo %~nx0 easy --clean
|
||||||
|
echo %~nx0 easy --ioconverter
|
||||||
|
echo %~nx0 Erdungsbsp --translation
|
||||||
|
echo.
|
||||||
|
exit /B 1
|
||||||
+111
@@ -0,0 +1,111 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# ============================================================================
|
||||||
|
# run_test.sh - Führt Tests für eine einzelne DXF-Datei aus
|
||||||
|
#
|
||||||
|
# Usage:
|
||||||
|
# run_test.sh <filename> - Führt getexdraw Test aus
|
||||||
|
# run_test.sh <filename> --clean - Führt Test aus und räumt auf
|
||||||
|
# run_test.sh <filename> --ioconverter - Führt ioconverter Test aus
|
||||||
|
# run_test.sh <filename> --translation - Führt translation Test aus
|
||||||
|
#
|
||||||
|
# Der Dateiname kann mit oder ohne .dxf Erweiterung angegeben werden.
|
||||||
|
# Die Datei wird standardmäßig im testdata Ordner gesucht.
|
||||||
|
# ============================================================================
|
||||||
|
|
||||||
|
# Funktion für Usage-Ausgabe
|
||||||
|
usage() {
|
||||||
|
echo ""
|
||||||
|
echo "Usage: $(basename "$0") <filename> [OPTIONS]"
|
||||||
|
echo ""
|
||||||
|
echo "Argumente:"
|
||||||
|
echo " filename Name der DXF-Datei (mit oder ohne .dxf Erweiterung)"
|
||||||
|
echo " Die Datei wird im testdata Ordner gesucht."
|
||||||
|
echo ""
|
||||||
|
echo "Optionen:"
|
||||||
|
echo " --clean Räumt das work-Verzeichnis nach dem Test auf"
|
||||||
|
echo " --ioconverter Führt ioconverter Test aus (statt getexdraw)"
|
||||||
|
echo " --translation Führt translation Test aus (statt getexdraw)"
|
||||||
|
echo ""
|
||||||
|
echo "Beispiele:"
|
||||||
|
echo " $(basename "$0") easy"
|
||||||
|
echo " $(basename "$0") easy.dxf"
|
||||||
|
echo " $(basename "$0") easy --clean"
|
||||||
|
echo " $(basename "$0") easy --ioconverter"
|
||||||
|
echo " $(basename "$0") Erdungsbsp --translation"
|
||||||
|
echo ""
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Prüfe ob Parameter übergeben wurde
|
||||||
|
if [ $# -eq 0 ]; then
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Bestimme das Skript-Verzeichnis
|
||||||
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
|
||||||
|
# Umgebungsvariablen laden
|
||||||
|
source "$SCRIPT_DIR/setenv.sh"
|
||||||
|
|
||||||
|
# Lade lokale Umgebungseinstellungen falls vorhanden
|
||||||
|
if [ -f "$SCRIPT_DIR/_setenv.sh" ]; then
|
||||||
|
echo "Lade lokale Umgebungseinstellungen aus _setenv.sh..."
|
||||||
|
source "$SCRIPT_DIR/_setenv.sh"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Dateinamen extrahieren (ohne Pfad und ohne .dxf Erweiterung)
|
||||||
|
FILENAME=$(basename "$1" .dxf)
|
||||||
|
|
||||||
|
# Prüfe ob Datei im testdata Ordner existiert
|
||||||
|
if [ ! -f "$PROJECT_TEST/$FILENAME.dxf" ]; then
|
||||||
|
echo "Fehler: Datei $FILENAME.dxf nicht gefunden in $PROJECT_TEST"
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Sammle Parameter für run_tests.py
|
||||||
|
TEST_PARAMS="--file $FILENAME"
|
||||||
|
|
||||||
|
# Verarbeite zusätzliche Parameter
|
||||||
|
shift
|
||||||
|
while [ $# -gt 0 ]; do
|
||||||
|
case "$1" in
|
||||||
|
--clean)
|
||||||
|
TEST_PARAMS="$TEST_PARAMS --clean"
|
||||||
|
;;
|
||||||
|
--ioconverter)
|
||||||
|
TEST_PARAMS="$TEST_PARAMS --ioconverter"
|
||||||
|
;;
|
||||||
|
--translation)
|
||||||
|
TEST_PARAMS="$TEST_PARAMS --translation"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
# Unbekannte Parameter ignorieren
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "============================================================================"
|
||||||
|
echo "Führe Test aus für: $FILENAME.dxf"
|
||||||
|
echo "Test-Parameter: $TEST_PARAMS"
|
||||||
|
echo "============================================================================"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
# Wechsle ins Projektverzeichnis und führe run_tests.py aus
|
||||||
|
cd "$PROJECT"
|
||||||
|
python "$PROJECT_LIB/run_tests.py" $TEST_PARAMS
|
||||||
|
|
||||||
|
TEST_RESULT=$?
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "============================================================================"
|
||||||
|
if [ $TEST_RESULT -eq 0 ]; then
|
||||||
|
echo "Test erfolgreich abgeschlossen für: $FILENAME.dxf"
|
||||||
|
else
|
||||||
|
echo "Test fehlgeschlagen für: $FILENAME.dxf"
|
||||||
|
fi
|
||||||
|
echo "============================================================================"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
exit $TEST_RESULT
|
||||||
Reference in New Issue
Block a user