Skip to content

Commit

Permalink
Merge branch 'develop' into feature/2.5-read-input-files
Browse files Browse the repository at this point in the history
  • Loading branch information
payetvin authored Dec 24, 2024
2 parents 9d93c9d + f5f634c commit 557edaf
Show file tree
Hide file tree
Showing 39 changed files with 407 additions and 993 deletions.
14 changes: 7 additions & 7 deletions .github/workflows/ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -170,23 +170,23 @@ jobs:
run: |
cd _build
ctest -C Release --output-on-failure -L "unit|end-to-end"
- name: Upload logs for failed tests
if: ${{ failure() }}
uses: actions/upload-artifact@v4
with:
name: test-log
path: ${{ github.workspace }}/_build/Testing/Temporary/LastTest.log

- name: Run tests about infinity on BCs RHS
if: ${{ env.RUN_SIMPLE_TESTS == 'true' && !cancelled() }}
uses: ./.github/workflows/run-tests
with:
simtest-tag: ${{ env.SIMTEST }}
batch-name: valid-v830
os: ${{ env.os }}

- name: Run MILP with CBC
if: ${{ env.RUN_SIMPLE_TESTS == 'true' && !cancelled() }}
uses: ./.github/workflows/run-tests
Expand All @@ -197,18 +197,18 @@ jobs:
os: ${{ env.os }}

- name: Run tests on adequacy patch (CSR)
if: ${{ env.RUN_SIMPLE_TESTS == 'true' }}
if: ${{ env.RUN_SIMPLE_TESTS == 'true' && !cancelled() }}
uses: ./.github/workflows/run-tests
with:
simtest-tag: ${{steps.simtest-version.outputs.prop}}
simtest-tag: ${{ env.SIMTEST }}
batch-name: adequacy-patch-CSR
os: ${{ env.os }}

- name: Run parallel tests
if: ${{ env.RUN_EXTENDED_TESTS == 'true' }}
uses: ./.github/workflows/run-tests
with:
simtest-tag: ${{steps.simtest-version.outputs.prop}}
simtest-tag: ${{ env.SIMTEST }}
batch-name: valid-parallel
os: ${{ env.os }}
variant: "parallel"
Expand Down
8 changes: 0 additions & 8 deletions .github/workflows/windows-vcpkg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -188,14 +188,6 @@ jobs:
batch-name: adequacy-patch-CSR
os: ${{ env.os }}

- name: Run tests about infinity on BCs RHS
if: ${{ env.RUN_SIMPLE_TESTS == 'true' }}
uses: ./.github/workflows/run-tests
with:
simtest-tag: ${{steps.simtest-version.outputs.prop}}
batch-name: valid-v830
os: ${{ env.test-platform }}

- name: Run tests about infinity on BCs RHS
if: ${{ env.RUN_SIMPLE_TESTS == 'true' && !cancelled() }}
uses: ./.github/workflows/run-tests
Expand Down
2 changes: 1 addition & 1 deletion simtest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"version": "v9.2.0g"
"version": "v9.2.0h"
}
2 changes: 1 addition & 1 deletion src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ set(ANTARES_VERSION_REVISION 0)

# Beta release
set(ANTARES_BETA 0)
set(ANTARES_RC 7)
set(ANTARES_RC 8)

set(ANTARES_VERSION_YEAR 2024)

Expand Down
40 changes: 10 additions & 30 deletions src/tests/end-to-end/binding_constraints/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,30 +1,10 @@
find_package(Boost COMPONENTS unit_test_framework REQUIRED)
enable_testing()

#bigobj support needed for windows compilation
if(MSVC)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj")
endif(MSVC)

add_executable(tests-binding_constraints
test_binding_constraints.cpp
)

target_link_libraries(tests-binding_constraints
PRIVATE
Boost::unit_test_framework
model_antares
antares-solver-simulation
antares-solver-hydro
antares-solver-ts-generator
Antares::tests::in-memory-study
)

target_include_directories(tests-binding_constraints
PRIVATE
${CMAKE_SOURCE_DIR}/solver
)

add_test(NAME end-to-end-binding_constraints COMMAND tests-binding_constraints)
set_property(TEST end-to-end-binding_constraints PROPERTY LABELS end-to-end)
set_target_properties(tests-binding_constraints PROPERTIES FOLDER Unit-tests/end_to_end)
include(${CMAKE_SOURCE_DIR}/tests/macros.cmake)

add_boost_test(tests-binding_constraints
SRC test_binding_constraints.cpp
LIBS
model_antares
antares-solver-simulation
antares-solver-hydro
antares-solver-ts-generator
Antares::tests::in-memory-study)
46 changes: 11 additions & 35 deletions src/tests/end-to-end/simple_study/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,35 +1,11 @@
find_package(Boost COMPONENTS unit_test_framework REQUIRED)
enable_testing()

#bigobj support needed for windows compilation
if(MSVC)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj")
endif(MSVC)

add_executable(tests-simple-study
simple-study.cpp
)

target_link_libraries(tests-simple-study
PRIVATE
antares-solver-hydro
antares-solver-variable
antares-solver-simulation
antares-solver-ts-generator
model_antares
${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}
Antares::tests::in-memory-study
)

target_include_directories(tests-simple-study
PRIVATE
${CMAKE_SOURCE_DIR}/solver
)

add_test(NAME end-to-end-simple-study COMMAND tests-simple-study)
set_property(TEST end-to-end-simple-study PROPERTY LABELS end-to-end)
set_target_properties(tests-simple-study PROPERTIES FOLDER Unit-tests/end_to_end)

# Storing tests-simple-study under the folder Unit-tests in the IDE

#----------------------------------------------------------
include(${CMAKE_SOURCE_DIR}/tests/macros.cmake)

add_boost_test(tests-simple-study
SRC simple-study.cpp
LIBS
antares-solver-hydro
antares-solver-variable
antares-solver-simulation
antares-solver-ts-generator
model_antares
Antares::tests::in-memory-study)
38 changes: 38 additions & 0 deletions src/tests/macros.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# The following function allows to add a test in a single line
# Arguments
# SRC path to the sources
# (optional) LIBS path to the libs to link
# (optional) INCLUDE include paths
# NOTE it's not necessary to add Boost::unit_test_framework

function(add_boost_test)
set(options "")
set(oneValueArgs)
set(multiValueArgs SRC LIBS INCLUDE)
cmake_parse_arguments(PARSE_ARGV 0 arg
"${options}" "${oneValueArgs}" "${multiValueArgs}")
# Bypass cmake_parse_arguments for the 1st argument
set(TEST_NAME ${ARGV0})
add_executable(${TEST_NAME} ${arg_SRC})
# All tests use boost
target_link_libraries(${TEST_NAME} PRIVATE ${arg_LIBS} Boost::unit_test_framework)

# Optional: add private include directories
if (NOT "${arg_INCLUDE}" STREQUAL "")
target_include_directories(${TEST_NAME} PRIVATE ${arg_INCLUDE})
endif()

add_test(NAME ${TEST_NAME} COMMAND ${TEST_NAME})

# Adding labels allows ctest filter what tests to run
set_property(TEST ${TEST_NAME} PROPERTY LABELS unit)

# Give the IDE some directions to display tests in a "Unit-tests" folder
set_target_properties(${TEST_NAME} PROPERTIES FOLDER Unit-tests)

# Linux only. TODO remove ?
if(UNIX AND NOT APPLE)
target_link_libraries(${TEST_NAME} PRIVATE stdc++fs)
endif()

endfunction()
39 changes: 11 additions & 28 deletions src/tests/src/api_internal/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,28 +1,11 @@
set(EXECUTABLE_NAME test-api)
add_executable(${EXECUTABLE_NAME})

target_sources(${EXECUTABLE_NAME}
PRIVATE
test_api.cpp
)

target_link_libraries(${EXECUTABLE_NAME}
PRIVATE
Boost::unit_test_framework
Antares::solver_api
Antares::tests::in-memory-study
test_utils_unit
)

target_include_directories(${EXECUTABLE_NAME}
PRIVATE
#Allow to use the private headers
$<TARGET_PROPERTY:Antares::solver_api,INCLUDE_DIRECTORIES>
)

# Storing tests-ts-numbers under the folder Unit-tests in the IDE
set_target_properties(${EXECUTABLE_NAME} PROPERTIES FOLDER Unit-tests)

add_test(NAME test-api COMMAND ${EXECUTABLE_NAME})

set_property(TEST test-api PROPERTY LABELS unit)
include(${CMAKE_SOURCE_DIR}/tests/macros.cmake)

add_boost_test(test-api
SRC test_api.cpp
LIBS
Antares::solver_api
Antares::tests::in-memory-study
test_utils_unit
#Allow to use the private headers
INCLUDE
$<TARGET_PROPERTY:Antares::solver_api,INCLUDE_DIRECTORIES>)
23 changes: 4 additions & 19 deletions src/tests/src/api_lib/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,20 +1,5 @@
set(EXECUTABLE_NAME test-client-api)
add_executable(${EXECUTABLE_NAME})
include(${CMAKE_SOURCE_DIR}/tests/macros.cmake)

target_sources(${EXECUTABLE_NAME}
PRIVATE
test_api.cpp
)

target_link_libraries(${EXECUTABLE_NAME}
PRIVATE
Boost::unit_test_framework
Antares::solver_api
)

# Storing tests-ts-numbers under the folder Unit-tests in the IDE
set_target_properties(${EXECUTABLE_NAME} PROPERTIES FOLDER Unit-tests)

add_test(NAME test-client-api COMMAND ${EXECUTABLE_NAME})

set_property(TEST test-client-api PROPERTY LABELS unit)
add_boost_test(test-client-api
SRC test_api.cpp
LIBS Antares::solver_api)
Loading

0 comments on commit 557edaf

Please sign in to comment.