From d33afdd0791fa0d3c09c7e5428506adaf5803cc1 Mon Sep 17 00:00:00 2001 From: Michael Tryby Date: Tue, 12 Feb 2019 11:26:12 -0500 Subject: [PATCH 1/4] Applying default arguments --- appveyor.yml | 4 ++-- tools/run-nrtest.cmd | 25 ++++++++++++++++++------- 2 files changed, 20 insertions(+), 9 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 0e99f1f..382d261 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -32,7 +32,7 @@ init: - set EPANET_HOME=%APPVEYOR_BUILD_FOLDER% - set BUILD_HOME=buildprod - set TEST_HOME=nrtestsuite - - set NRTEST_SCRIPT=C:\Python27\Scripts + # See values set - echo %APPVEYOR_BUILD_WORKER_IMAGE% - echo %BUILD_HOME% @@ -67,7 +67,7 @@ test_script: - ctest -C Release # run regression tests - cd %EPANET_HOME% - - tools\run-nrtest.cmd %NRTEST_SCRIPT% %TEST_HOME% %APPVEYOR_REPO_COMMIT% + - tools\run-nrtest.cmd %APPVEYOR_REPO_COMMIT% after_test: # zip up the SUT benchmarks diff --git a/tools/run-nrtest.cmd b/tools/run-nrtest.cmd index db4174f..d20087b 100644 --- a/tools/run-nrtest.cmd +++ b/tools/run-nrtest.cmd @@ -7,24 +7,35 @@ :: US EPA - ORD/NRMRL :: :: Arguments: -:: 1 - nrtest script path -:: 2 - test suite path -:: 3 - version/build identifier +:: 1 - version/build identifier +:: 2 - (test suite path) :: @echo off setlocal -set NRTEST_SCRIPT_PATH=%~1 -set TEST_SUITE_PATH=%~2 set BENCHMARK_VER=220dev5 +:: Determine location of python Scripts folder +FOR /F "tokens=*" %%G IN ('where python') DO ( + set PYTHON_DIR=%%~dpG +) +set "NRTEST_SCRIPT_PATH=%PYTHON_DIR%Scripts" + +:: Check existence and apply default arguments +IF NOT [%1]==[] ( set "SUT_VER=%~1" +) ELSE ( set "SUT_VER=vXXX" ) + +IF NOT [%2]==[] ( set "TEST_SUITE_PATH=%~2" +) ELSE ( set "TEST_SUITE_PATH=nrtestsuite" ) + + set NRTEST_EXECUTE_CMD=python %NRTEST_SCRIPT_PATH%\nrtest execute -set TEST_APP_PATH=apps\epanet-%3.json +set TEST_APP_PATH=apps\epanet-%SUT_VER%.json set TESTS=tests\examples tests\exeter tests\large tests\network_one tests\press_depend tests\small tests\tanks tests\valves -set TEST_OUTPUT_PATH=benchmark\epanet-%3 +set TEST_OUTPUT_PATH=benchmark\epanet-%SUT_VER% set NRTEST_COMPARE_CMD=python %NRTEST_SCRIPT_PATH%\nrtest compare set REF_OUTPUT_PATH=benchmark\epanet-%BENCHMARK_VER% From 678a2c2b4551fc79e4fd4fd27fccd24d47a11bcd Mon Sep 17 00:00:00 2001 From: Michael Tryby Date: Tue, 12 Feb 2019 13:13:35 -0500 Subject: [PATCH 2/4] Introducing default arguments --- appveyor.yml | 2 +- tools/before-test.cmd | 24 +++++++++++++++++------- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 382d261..5b29350 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -58,7 +58,7 @@ build_script: before_test: - cd %EPANET_HOME% - - tools\before-test.cmd %TEST_HOME% %EPANET_HOME%\%BUILD_HOME%\bin\Release %APPVEYOR_REPO_COMMIT% + - tools\before-test.cmd %APPVEYOR_REPO_COMMIT% # run custom test script test_script: diff --git a/tools/before-test.cmd b/tools/before-test.cmd index 3c04d89..dca4cca 100644 --- a/tools/before-test.cmd +++ b/tools/before-test.cmd @@ -7,9 +7,8 @@ :: US EPA - ORD/NRMRL :: :: Arguments: -:: 1 - relative path regression test file staging location -:: 2 - absolute path to location of software under test -:: 3 - build identifier for software under test +:: 1 - build identifier for software under test +:: 2 - (relative path regression test file staging location) :: :: Note: :: Tests and benchmark files are stored in the epanet-example-networks repo. @@ -21,13 +20,24 @@ @echo off setlocal -set SCRIPT_HOME=%~dp0 -set TEST_HOME=%~1 - set EXAMPLES_VER=1.0.2-dev.5 set BENCHMARK_VER=220dev5 +set "SCRIPT_HOME=%~dp0" +set "EXE_HOME=buildprod\bin\Release" + +:: Determine SUT executable path +for %%a in ("%SCRIPT_HOME:~0,-1%") do set "SUT_PATH=%%~dpa" +set SUT_PATH=%SUT_PATH%%EXE_HOME% + +:: Check existence and apply default arguments +IF NOT [%1]==[] ( set "SUT_VER=%~1" +) ELSE ( set "SUT_VER=vXXX" ) + +IF NOT [%2]==[] ( set "TEST_HOME=%~2" +) ELSE ( set "TEST_HOME=nrtestsuite" ) + set TESTFILES_URL=https://github.com/OpenWaterAnalytics/epanet-example-networks/archive/v%EXAMPLES_VER%.zip set BENCHFILES_URL=https://github.com/OpenWaterAnalytics/epanet-example-networks/releases/download/v%EXAMPLES_VER%/epanet-benchmark-%BENCHMARK_VER%.zip @@ -59,4 +69,4 @@ mklink /D .\tests .\epanet-example-networks-%EXAMPLES_VER%\epanet-tests :: generate json configuration file for software under test mkdir apps -%SCRIPT_HOME%\gen-config.cmd %~2 > apps\epanet-%~3.json +%SCRIPT_HOME%\gen-config.cmd %SUT_PATH% > apps\epanet-%SUT_VER%.json From 1620f3f452b008c21431532d9287887367613b5d Mon Sep 17 00:00:00 2001 From: Michael Tryby Date: Tue, 12 Feb 2019 13:21:55 -0500 Subject: [PATCH 3/4] updating documentation --- tools/before-test.cmd | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/before-test.cmd b/tools/before-test.cmd index dca4cca..7fef815 100644 --- a/tools/before-test.cmd +++ b/tools/before-test.cmd @@ -12,8 +12,8 @@ :: :: Note: :: Tests and benchmark files are stored in the epanet-example-networks repo. -:: This script retreives them using a stable URL associated with a release on -:: GitHub and stages the files for nrtest to run. The script assumes that +:: This script retreives them using a stable URL associated with a GitHub +:: release and stages the files for nrtest to run. The script assumes that :: before-test.cmd and gen-config.cmd are located together in the same folder. :: From 75cefb95d0411de85d3c6f5985b6ef260e25d45d Mon Sep 17 00:00:00 2001 From: Michael Tryby Date: Tue, 12 Feb 2019 13:32:24 -0500 Subject: [PATCH 4/4] Fixing typo --- tools/before-test.cmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/before-test.cmd b/tools/before-test.cmd index 7fef815..41d6cf4 100644 --- a/tools/before-test.cmd +++ b/tools/before-test.cmd @@ -12,7 +12,7 @@ :: :: Note: :: Tests and benchmark files are stored in the epanet-example-networks repo. -:: This script retreives them using a stable URL associated with a GitHub +:: This script retrieves them using a stable URL associated with a GitHub :: release and stages the files for nrtest to run. The script assumes that :: before-test.cmd and gen-config.cmd are located together in the same folder. ::