Skip to content

Commit 86a7c93

Browse files
committed
let's see now... (win tests)
1 parent 8605f97 commit 86a7c93

2 files changed

Lines changed: 43 additions & 10 deletions

File tree

open-codegen/opengen/templates/c/example_cmakelists.txt

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 3.5)
1+
cmake_minimum_required(VERSION 3.10)
22

33
# Project name
44
project({{meta.optimizer_name}})
@@ -35,6 +35,21 @@ if(CMAKE_DL_LIBS)
3535
target_link_libraries(optimizer PRIVATE ${CMAKE_DL_LIBS})
3636
endif()
3737

38+
if(WIN32)
39+
# Rust static libraries built with the MSVC toolchain depend on a small set
40+
# of Windows system libraries that must be linked by the final C executable.
41+
target_link_libraries(
42+
optimizer
43+
PRIVATE
44+
advapi32
45+
bcrypt
46+
kernel32
47+
ntdll
48+
userenv
49+
ws2_32
50+
)
51+
endif()
52+
3853
add_custom_target(run
3954
COMMAND $<TARGET_FILE:optimizer>
4055
DEPENDS optimizer

open-codegen/test/test.py

Lines changed: 27 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -975,23 +975,32 @@ def c_bindings_cmake_helper(optimizer_name, build_dir_name="cmake-build-test"):
975975

976976
def test_c_bindings(self):
977977
result = RustBuildTestCase.c_bindings_helper(optimizer_name="only_f1")
978-
self.assertEqual(0, result["compile_returncode"], msg=result["compile_stderr"])
979-
self.assertEqual(0, result["run_returncode"], msg=result["run_stderr"])
978+
self.assertEqual(
979+
0,
980+
result["compile_returncode"],
981+
msg=result["compile_stdout"] + result["compile_stderr"])
982+
self.assertEqual(0, result["run_returncode"], msg=result["run_stdout"] + result["run_stderr"])
980983
self.assertIn("Converged", result["run_stdout"])
981984
self.assertIn("exit status : 0", result["run_stdout"])
982985
self.assertIn("error code : 0", result["run_stdout"])
983986

984987
result = RustBuildTestCase.c_bindings_helper(optimizer_name="only_f2")
985-
self.assertEqual(0, result["compile_returncode"], msg=result["compile_stderr"])
988+
self.assertEqual(
989+
0,
990+
result["compile_returncode"],
991+
msg=result["compile_stdout"] + result["compile_stderr"])
986992
self.assertIn("Converged", result["run_stdout"])
987-
self.assertEqual(0, result["run_returncode"], msg=result["run_stderr"])
993+
self.assertEqual(0, result["run_returncode"], msg=result["run_stdout"] + result["run_stderr"])
988994
self.assertIn("exit status : 0", result["run_stdout"])
989995
self.assertIn("error code : 0", result["run_stdout"])
990996

991997
result = RustBuildTestCase.c_bindings_helper(optimizer_name="plain")
992998
self.assertIn("Converged", result["run_stdout"])
993-
self.assertEqual(0, result["compile_returncode"], msg=result["compile_stderr"])
994-
self.assertEqual(0, result["run_returncode"], msg=result["run_stderr"])
999+
self.assertEqual(
1000+
0,
1001+
result["compile_returncode"],
1002+
msg=result["compile_stdout"] + result["compile_stderr"])
1003+
self.assertEqual(0, result["run_returncode"], msg=result["run_stdout"] + result["run_stderr"])
9951004
self.assertIn("exit status : 0", result["run_stdout"])
9961005
self.assertIn("error code : 0", result["run_stdout"])
9971006

@@ -1009,7 +1018,10 @@ def test_c_bindings_error_path(self):
10091018
RustBuildTestCase.patch_c_bindings_example_parameter_initializer(
10101019
optimizer_name="solver_error",
10111020
replacement_line=original_line)
1012-
self.assertEqual(0, result["compile_returncode"], msg=result["compile_stderr"])
1021+
self.assertEqual(
1022+
0,
1023+
result["compile_returncode"],
1024+
msg=result["compile_stdout"] + result["compile_stderr"])
10131025
self.assertNotEqual(0, result["run_returncode"])
10141026
self.assertIn("error code : 2000", result["run_stdout"])
10151027
self.assertIn("forced solver error for TCP test", result["run_stdout"])
@@ -1019,8 +1031,14 @@ def test_c_bindings_error_path(self):
10191031

10201032
def test_c_bindings_cmake_example_builds(self):
10211033
result = RustBuildTestCase.c_bindings_cmake_helper(optimizer_name="plain")
1022-
self.assertEqual(0, result["configure_returncode"], msg=result["configure_stderr"])
1023-
self.assertEqual(0, result["build_returncode"], msg=result["build_stderr"])
1034+
self.assertEqual(
1035+
0,
1036+
result["configure_returncode"],
1037+
msg=result["configure_stdout"] + result["configure_stderr"])
1038+
self.assertEqual(
1039+
0,
1040+
result["build_returncode"],
1041+
msg=result["build_stdout"] + result["build_stderr"])
10241042

10251043
def test_tcp_generated_server_builds(self):
10261044
tcp_iface_dir = os.path.join(

0 commit comments

Comments
 (0)