@echo off rem ============================================================================= rem V2G EXI Decoder - 전체 테스트 스크립트 rem 설명: 모든 샘플 파일을 .NET 버전으로 테스트 rem ============================================================================= echo. echo ========================================== echo V2G EXI Decoder 테스트 시작 echo ========================================== echo. set TEST_ERROR=0 rem 테스트 결과 저장 폴더 생성 if not exist "temp" mkdir temp echo [테스트 1] test5.exi (CurrentDemandReq) - 순수 EXI 43바이트 echo. dotnet run --project DotNet/V2GDecoderNet.csproj Sample/test5.exi > temp/test5_output.txt 2>&1 if %ERRORLEVEL% neq 0 ( echo ERROR: test5.exi 테스트 실패 set TEST_ERROR=1 ) else ( echo ✅ test5.exi 테스트 성공 ) echo. echo [테스트 2] test1.exi (CurrentDemandRes) - 네트워크 패킷 포함 131바이트 echo. dotnet run --project DotNet/V2GDecoderNet.csproj Sample/test1.exi > temp/test1_output.txt 2>&1 if %ERRORLEVEL% neq 0 ( echo ERROR: test1.exi 테스트 실패 set TEST_ERROR=1 ) else ( echo ✅ test1.exi 테스트 성공 ) echo. echo [테스트 3] roundtrip 테스트 - EXI → XML → EXI echo. dotnet run --project DotNet/V2GDecoderNet.csproj -decode Sample/test5.exi > temp/test5_decoded.xml 2>NUL dotnet run --project DotNet/V2GDecoderNet.csproj -encode temp/test5_decoded.xml > temp/test5_roundtrip.exi 2>NUL fc /b Sample\test5.exi temp\test5_roundtrip.exi >NUL if %ERRORLEVEL% neq 0 ( echo ERROR: roundtrip 테스트 실패 - 파일이 다릅니다 set TEST_ERROR=1 ) else ( echo ✅ roundtrip 테스트 성공 - 파일이 동일합니다 ) echo. rem 결과 요약 echo ========================================== echo 테스트 결과 요약 echo ========================================== if %TEST_ERROR% equ 0 ( echo ✅ 모든 테스트가 성공적으로 완료되었습니다 echo. echo 테스트 결과 파일들이 temp/ 폴더에 저장되었습니다: dir temp\*.txt temp\*.xml temp\*.exi 2>NUL exit /b 0 ) else ( echo ❌ 일부 테스트가 실패했습니다 echo 자세한 내용은 temp/ 폴더의 로그 파일을 확인하세요 exit /b 1 )