diff --git a/build.json b/build.json
index 6ac197f0962..4901f640113 100644
--- a/build.json
+++ b/build.json
@@ -292,6 +292,9 @@
"src": [
"test/core/util/test_config.c"
],
+ "deps": [
+ "gpr"
+ ],
"vs_project_guid": "{EAB0A629-17A9-44DB-B5FF-E91A721FE037}"
},
{
@@ -370,6 +373,10 @@
"test/core/util/port_posix.c",
"test/core/util/slice_splitter.c"
],
+ "deps": [
+ "gpr",
+ "grpc"
+ ],
"vs_project_guid": "{17BCAFC0-5FDC-4C94-AEB9-95F3E220614B}"
},
{
diff --git a/templates/vsprojects/vs2013/build_and_run_tests.bat.template b/templates/vsprojects/vs2013/build_and_run_tests.bat.template
index d7ec0e8dd1f..edf18ac88b0 100644
--- a/templates/vsprojects/vs2013/build_and_run_tests.bat.template
+++ b/templates/vsprojects/vs2013/build_and_run_tests.bat.template
@@ -3,7 +3,8 @@
%>\
<%def name="to_windows_path(path)">${path.replace('/','\\')}%def>\
<%
- test_targets = [ target for target in targets if target.name.startswith('gpr_') and target.name.endswith('_test')]
+ allowed_dependencies = set(['gpr', 'grpc', 'gpr_test_util', 'grpc_test_util'])
+ test_targets = [ target for target in targets if target.name.endswith('_test') and set(target.deps).issubset(allowed_dependencies)]
test_bin_dir = 'test_bin'
%>\
@rem Build and runs unit all unit tests
@@ -12,13 +13,12 @@
@call "%VS120COMNTOOLS%\..\..\vc\vcvarsall.bat" x86
@rem Build the library dependencies first
-MSBuild.exe gpr.vcxproj /p:Configuration=Debug
-MSBuild.exe gpr_test_util.vcxproj /p:Configuration=Debug
+MSBuild.exe gprc_test_util.vcxproj /p:Configuration=Debug
mkdir ${test_bin_dir}
% for target in test_targets:
-echo Building test ${target.name}
+echo Building ${target.name}
cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:${test_bin_dir}\ \
%for source in target.src:
..\..\${to_windows_path(source)} \
diff --git a/vsprojects/vs2013/build_and_run_tests.bat b/vsprojects/vs2013/build_and_run_tests.bat
index dc9e642cb72..37a469de254 100644
--- a/vsprojects/vs2013/build_and_run_tests.bat
+++ b/vsprojects/vs2013/build_and_run_tests.bat
@@ -6,9 +6,203 @@
@rem Build the library dependencies first
MSBuild.exe gpr.vcxproj /p:Configuration=Debug
MSBuild.exe gpr_test_util.vcxproj /p:Configuration=Debug
+MSBuild.exe grpc.vcxproj /p:Configuration=Debug
+MSBuild.exe gprc_test_util.vcxproj /p:Configuration=Debug
mkdir test_bin
+echo Building test alarm_heap_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\iomgr\alarm_heap_test.c
+link.exe /DEBUG /OUT:"test_bin\alarm_heap_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\alarm_heap_test.obj
+echo(
+echo Running test alarm_heap_test
+test_bin\alarm_heap_test.exe || echo TEST FAILED: alarm_heap_test && exit /b
+echo(
+
+echo Building test alarm_list_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\iomgr\alarm_list_test.c
+link.exe /DEBUG /OUT:"test_bin\alarm_list_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\alarm_list_test.obj
+echo(
+echo Running test alarm_list_test
+test_bin\alarm_list_test.exe || echo TEST FAILED: alarm_list_test && exit /b
+echo(
+
+echo Building test alarm_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\iomgr\alarm_test.c
+link.exe /DEBUG /OUT:"test_bin\alarm_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\alarm_test.obj
+echo(
+echo Running test alarm_test
+test_bin\alarm_test.exe || echo TEST FAILED: alarm_test && exit /b
+echo(
+
+echo Building test alpn_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\transport\chttp2\alpn_test.c
+link.exe /DEBUG /OUT:"test_bin\alpn_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\alpn_test.obj
+echo(
+echo Running test alpn_test
+test_bin\alpn_test.exe || echo TEST FAILED: alpn_test && exit /b
+echo(
+
+echo Building test bin_encoder_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\transport\chttp2\bin_encoder_test.c
+link.exe /DEBUG /OUT:"test_bin\bin_encoder_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\bin_encoder_test.obj
+echo(
+echo Running test bin_encoder_test
+test_bin\bin_encoder_test.exe || echo TEST FAILED: bin_encoder_test && exit /b
+echo(
+
+echo Building test census_hash_table_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\statistics\hash_table_test.c
+link.exe /DEBUG /OUT:"test_bin\census_hash_table_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\hash_table_test.obj
+echo(
+echo Running test census_hash_table_test
+test_bin\census_hash_table_test.exe || echo TEST FAILED: census_hash_table_test && exit /b
+echo(
+
+echo Building test census_statistics_multiple_writers_circular_buffer_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\statistics\multiple_writers_circular_buffer_test.c
+link.exe /DEBUG /OUT:"test_bin\census_statistics_multiple_writers_circular_buffer_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\multiple_writers_circular_buffer_test.obj
+echo(
+echo Running test census_statistics_multiple_writers_circular_buffer_test
+test_bin\census_statistics_multiple_writers_circular_buffer_test.exe || echo TEST FAILED: census_statistics_multiple_writers_circular_buffer_test && exit /b
+echo(
+
+echo Building test census_statistics_multiple_writers_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\statistics\multiple_writers_test.c
+link.exe /DEBUG /OUT:"test_bin\census_statistics_multiple_writers_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\multiple_writers_test.obj
+echo(
+echo Running test census_statistics_multiple_writers_test
+test_bin\census_statistics_multiple_writers_test.exe || echo TEST FAILED: census_statistics_multiple_writers_test && exit /b
+echo(
+
+echo Building test census_statistics_performance_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\statistics\performance_test.c
+link.exe /DEBUG /OUT:"test_bin\census_statistics_performance_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\performance_test.obj
+echo(
+echo Running test census_statistics_performance_test
+test_bin\census_statistics_performance_test.exe || echo TEST FAILED: census_statistics_performance_test && exit /b
+echo(
+
+echo Building test census_statistics_quick_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\statistics\quick_test.c
+link.exe /DEBUG /OUT:"test_bin\census_statistics_quick_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\quick_test.obj
+echo(
+echo Running test census_statistics_quick_test
+test_bin\census_statistics_quick_test.exe || echo TEST FAILED: census_statistics_quick_test && exit /b
+echo(
+
+echo Building test census_statistics_small_log_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\statistics\small_log_test.c
+link.exe /DEBUG /OUT:"test_bin\census_statistics_small_log_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\small_log_test.obj
+echo(
+echo Running test census_statistics_small_log_test
+test_bin\census_statistics_small_log_test.exe || echo TEST FAILED: census_statistics_small_log_test && exit /b
+echo(
+
+echo Building test census_stats_store_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\statistics\rpc_stats_test.c
+link.exe /DEBUG /OUT:"test_bin\census_stats_store_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\rpc_stats_test.obj
+echo(
+echo Running test census_stats_store_test
+test_bin\census_stats_store_test.exe || echo TEST FAILED: census_stats_store_test && exit /b
+echo(
+
+echo Building test census_stub_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\statistics\census_stub_test.c
+link.exe /DEBUG /OUT:"test_bin\census_stub_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\census_stub_test.obj
+echo(
+echo Running test census_stub_test
+test_bin\census_stub_test.exe || echo TEST FAILED: census_stub_test && exit /b
+echo(
+
+echo Building test census_trace_store_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\statistics\trace_test.c
+link.exe /DEBUG /OUT:"test_bin\census_trace_store_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\trace_test.obj
+echo(
+echo Running test census_trace_store_test
+test_bin\census_trace_store_test.exe || echo TEST FAILED: census_trace_store_test && exit /b
+echo(
+
+echo Building test census_window_stats_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\statistics\window_stats_test.c
+link.exe /DEBUG /OUT:"test_bin\census_window_stats_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\window_stats_test.obj
+echo(
+echo Running test census_window_stats_test
+test_bin\census_window_stats_test.exe || echo TEST FAILED: census_window_stats_test && exit /b
+echo(
+
+echo Building test chttp2_status_conversion_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\transport\chttp2\status_conversion_test.c
+link.exe /DEBUG /OUT:"test_bin\chttp2_status_conversion_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\status_conversion_test.obj
+echo(
+echo Running test chttp2_status_conversion_test
+test_bin\chttp2_status_conversion_test.exe || echo TEST FAILED: chttp2_status_conversion_test && exit /b
+echo(
+
+echo Building test chttp2_stream_encoder_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\transport\chttp2\stream_encoder_test.c
+link.exe /DEBUG /OUT:"test_bin\chttp2_stream_encoder_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\stream_encoder_test.obj
+echo(
+echo Running test chttp2_stream_encoder_test
+test_bin\chttp2_stream_encoder_test.exe || echo TEST FAILED: chttp2_stream_encoder_test && exit /b
+echo(
+
+echo Building test chttp2_stream_map_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\transport\chttp2\stream_map_test.c
+link.exe /DEBUG /OUT:"test_bin\chttp2_stream_map_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\stream_map_test.obj
+echo(
+echo Running test chttp2_stream_map_test
+test_bin\chttp2_stream_map_test.exe || echo TEST FAILED: chttp2_stream_map_test && exit /b
+echo(
+
+echo Building test chttp2_transport_end2end_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\transport\chttp2_transport_end2end_test.c
+link.exe /DEBUG /OUT:"test_bin\chttp2_transport_end2end_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\chttp2_transport_end2end_test.obj
+echo(
+echo Running test chttp2_transport_end2end_test
+test_bin\chttp2_transport_end2end_test.exe || echo TEST FAILED: chttp2_transport_end2end_test && exit /b
+echo(
+
+echo Building test dualstack_socket_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\end2end\dualstack_socket_test.c
+link.exe /DEBUG /OUT:"test_bin\dualstack_socket_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\dualstack_socket_test.obj
+echo(
+echo Running test dualstack_socket_test
+test_bin\dualstack_socket_test.exe || echo TEST FAILED: dualstack_socket_test && exit /b
+echo(
+
+echo Building test echo_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\echo\echo_test.c
+link.exe /DEBUG /OUT:"test_bin\echo_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\echo_test.obj
+echo(
+echo Running test echo_test
+test_bin\echo_test.exe || echo TEST FAILED: echo_test && exit /b
+echo(
+
+echo Building test fd_posix_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\iomgr\fd_posix_test.c
+link.exe /DEBUG /OUT:"test_bin\fd_posix_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\fd_posix_test.obj
+echo(
+echo Running test fd_posix_test
+test_bin\fd_posix_test.exe || echo TEST FAILED: fd_posix_test && exit /b
+echo(
+
+echo Building test fling_stream_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\fling\fling_stream_test.c
+link.exe /DEBUG /OUT:"test_bin\fling_stream_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\fling_stream_test.obj
+echo(
+echo Running test fling_stream_test
+test_bin\fling_stream_test.exe || echo TEST FAILED: fling_stream_test && exit /b
+echo(
+
+echo Building test fling_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\fling\fling_test.c
+link.exe /DEBUG /OUT:"test_bin\fling_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\fling_test.obj
+echo(
+echo Running test fling_test
+test_bin\fling_test.exe || echo TEST FAILED: fling_test && exit /b
+echo(
+
echo Building test gpr_cancellable_test
cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\support\cancellable_test.c
link.exe /DEBUG /OUT:"test_bin\gpr_cancellable_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\gpr_test_util.lib Debug\gpr.lib test_bin\cancellable_test.obj
@@ -121,3 +315,243 @@ echo Running test gpr_useful_test
test_bin\gpr_useful_test.exe || echo TEST FAILED: gpr_useful_test && exit /b
echo(
+echo Building test grpc_base64_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\security\base64_test.c
+link.exe /DEBUG /OUT:"test_bin\grpc_base64_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\base64_test.obj
+echo(
+echo Running test grpc_base64_test
+test_bin\grpc_base64_test.exe || echo TEST FAILED: grpc_base64_test && exit /b
+echo(
+
+echo Building test grpc_byte_buffer_reader_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\surface\byte_buffer_reader_test.c
+link.exe /DEBUG /OUT:"test_bin\grpc_byte_buffer_reader_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\byte_buffer_reader_test.obj
+echo(
+echo Running test grpc_byte_buffer_reader_test
+test_bin\grpc_byte_buffer_reader_test.exe || echo TEST FAILED: grpc_byte_buffer_reader_test && exit /b
+echo(
+
+echo Building test grpc_channel_stack_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\channel\channel_stack_test.c
+link.exe /DEBUG /OUT:"test_bin\grpc_channel_stack_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\channel_stack_test.obj
+echo(
+echo Running test grpc_channel_stack_test
+test_bin\grpc_channel_stack_test.exe || echo TEST FAILED: grpc_channel_stack_test && exit /b
+echo(
+
+echo Building test grpc_completion_queue_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\surface\completion_queue_test.c
+link.exe /DEBUG /OUT:"test_bin\grpc_completion_queue_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\completion_queue_test.obj
+echo(
+echo Running test grpc_completion_queue_test
+test_bin\grpc_completion_queue_test.exe || echo TEST FAILED: grpc_completion_queue_test && exit /b
+echo(
+
+echo Building test grpc_credentials_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\security\credentials_test.c
+link.exe /DEBUG /OUT:"test_bin\grpc_credentials_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\credentials_test.obj
+echo(
+echo Running test grpc_credentials_test
+test_bin\grpc_credentials_test.exe || echo TEST FAILED: grpc_credentials_test && exit /b
+echo(
+
+echo Building test grpc_json_token_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\security\json_token_test.c
+link.exe /DEBUG /OUT:"test_bin\grpc_json_token_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\json_token_test.obj
+echo(
+echo Running test grpc_json_token_test
+test_bin\grpc_json_token_test.exe || echo TEST FAILED: grpc_json_token_test && exit /b
+echo(
+
+echo Building test grpc_stream_op_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\transport\stream_op_test.c
+link.exe /DEBUG /OUT:"test_bin\grpc_stream_op_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\stream_op_test.obj
+echo(
+echo Running test grpc_stream_op_test
+test_bin\grpc_stream_op_test.exe || echo TEST FAILED: grpc_stream_op_test && exit /b
+echo(
+
+echo Building test hpack_parser_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\transport\chttp2\hpack_parser_test.c
+link.exe /DEBUG /OUT:"test_bin\hpack_parser_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\hpack_parser_test.obj
+echo(
+echo Running test hpack_parser_test
+test_bin\hpack_parser_test.exe || echo TEST FAILED: hpack_parser_test && exit /b
+echo(
+
+echo Building test hpack_table_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\transport\chttp2\hpack_table_test.c
+link.exe /DEBUG /OUT:"test_bin\hpack_table_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\hpack_table_test.obj
+echo(
+echo Running test hpack_table_test
+test_bin\hpack_table_test.exe || echo TEST FAILED: hpack_table_test && exit /b
+echo(
+
+echo Building test httpcli_format_request_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\httpcli\format_request_test.c
+link.exe /DEBUG /OUT:"test_bin\httpcli_format_request_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\format_request_test.obj
+echo(
+echo Running test httpcli_format_request_test
+test_bin\httpcli_format_request_test.exe || echo TEST FAILED: httpcli_format_request_test && exit /b
+echo(
+
+echo Building test httpcli_parser_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\httpcli\parser_test.c
+link.exe /DEBUG /OUT:"test_bin\httpcli_parser_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\parser_test.obj
+echo(
+echo Running test httpcli_parser_test
+test_bin\httpcli_parser_test.exe || echo TEST FAILED: httpcli_parser_test && exit /b
+echo(
+
+echo Building test httpcli_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\httpcli\httpcli_test.c
+link.exe /DEBUG /OUT:"test_bin\httpcli_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\httpcli_test.obj
+echo(
+echo Running test httpcli_test
+test_bin\httpcli_test.exe || echo TEST FAILED: httpcli_test && exit /b
+echo(
+
+echo Building test json_rewrite_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\json\json_rewrite_test.c
+link.exe /DEBUG /OUT:"test_bin\json_rewrite_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\json_rewrite_test.obj
+echo(
+echo Running test json_rewrite_test
+test_bin\json_rewrite_test.exe || echo TEST FAILED: json_rewrite_test && exit /b
+echo(
+
+echo Building test json_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\json\json_test.c
+link.exe /DEBUG /OUT:"test_bin\json_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\json_test.obj
+echo(
+echo Running test json_test
+test_bin\json_test.exe || echo TEST FAILED: json_test && exit /b
+echo(
+
+echo Building test lame_client_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\surface\lame_client_test.c
+link.exe /DEBUG /OUT:"test_bin\lame_client_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\lame_client_test.obj
+echo(
+echo Running test lame_client_test
+test_bin\lame_client_test.exe || echo TEST FAILED: lame_client_test && exit /b
+echo(
+
+echo Building test message_compress_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\compression\message_compress_test.c
+link.exe /DEBUG /OUT:"test_bin\message_compress_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\message_compress_test.obj
+echo(
+echo Running test message_compress_test
+test_bin\message_compress_test.exe || echo TEST FAILED: message_compress_test && exit /b
+echo(
+
+echo Building test metadata_buffer_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\channel\metadata_buffer_test.c
+link.exe /DEBUG /OUT:"test_bin\metadata_buffer_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\metadata_buffer_test.obj
+echo(
+echo Running test metadata_buffer_test
+test_bin\metadata_buffer_test.exe || echo TEST FAILED: metadata_buffer_test && exit /b
+echo(
+
+echo Building test murmur_hash_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\support\murmur_hash_test.c
+link.exe /DEBUG /OUT:"test_bin\murmur_hash_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\gpr_test_util.lib Debug\gpr.lib test_bin\murmur_hash_test.obj
+echo(
+echo Running test murmur_hash_test
+test_bin\murmur_hash_test.exe || echo TEST FAILED: murmur_hash_test && exit /b
+echo(
+
+echo Building test no_server_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\end2end\no_server_test.c
+link.exe /DEBUG /OUT:"test_bin\no_server_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\no_server_test.obj
+echo(
+echo Running test no_server_test
+test_bin\no_server_test.exe || echo TEST FAILED: no_server_test && exit /b
+echo(
+
+echo Building test poll_kick_posix_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\iomgr\poll_kick_posix_test.c
+link.exe /DEBUG /OUT:"test_bin\poll_kick_posix_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\poll_kick_posix_test.obj
+echo(
+echo Running test poll_kick_posix_test
+test_bin\poll_kick_posix_test.exe || echo TEST FAILED: poll_kick_posix_test && exit /b
+echo(
+
+echo Building test resolve_address_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\iomgr\resolve_address_test.c
+link.exe /DEBUG /OUT:"test_bin\resolve_address_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\resolve_address_test.obj
+echo(
+echo Running test resolve_address_test
+test_bin\resolve_address_test.exe || echo TEST FAILED: resolve_address_test && exit /b
+echo(
+
+echo Building test secure_endpoint_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\security\secure_endpoint_test.c
+link.exe /DEBUG /OUT:"test_bin\secure_endpoint_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\secure_endpoint_test.obj
+echo(
+echo Running test secure_endpoint_test
+test_bin\secure_endpoint_test.exe || echo TEST FAILED: secure_endpoint_test && exit /b
+echo(
+
+echo Building test sockaddr_utils_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\iomgr\sockaddr_utils_test.c
+link.exe /DEBUG /OUT:"test_bin\sockaddr_utils_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\sockaddr_utils_test.obj
+echo(
+echo Running test sockaddr_utils_test
+test_bin\sockaddr_utils_test.exe || echo TEST FAILED: sockaddr_utils_test && exit /b
+echo(
+
+echo Building test tcp_client_posix_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\iomgr\tcp_client_posix_test.c
+link.exe /DEBUG /OUT:"test_bin\tcp_client_posix_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\tcp_client_posix_test.obj
+echo(
+echo Running test tcp_client_posix_test
+test_bin\tcp_client_posix_test.exe || echo TEST FAILED: tcp_client_posix_test && exit /b
+echo(
+
+echo Building test tcp_posix_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\iomgr\tcp_posix_test.c
+link.exe /DEBUG /OUT:"test_bin\tcp_posix_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\tcp_posix_test.obj
+echo(
+echo Running test tcp_posix_test
+test_bin\tcp_posix_test.exe || echo TEST FAILED: tcp_posix_test && exit /b
+echo(
+
+echo Building test tcp_server_posix_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\iomgr\tcp_server_posix_test.c
+link.exe /DEBUG /OUT:"test_bin\tcp_server_posix_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\tcp_server_posix_test.obj
+echo(
+echo Running test tcp_server_posix_test
+test_bin\tcp_server_posix_test.exe || echo TEST FAILED: tcp_server_posix_test && exit /b
+echo(
+
+echo Building test time_averaged_stats_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\iomgr\time_averaged_stats_test.c
+link.exe /DEBUG /OUT:"test_bin\time_averaged_stats_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\time_averaged_stats_test.obj
+echo(
+echo Running test time_averaged_stats_test
+test_bin\time_averaged_stats_test.exe || echo TEST FAILED: time_averaged_stats_test && exit /b
+echo(
+
+echo Building test time_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\support\time_test.c
+link.exe /DEBUG /OUT:"test_bin\time_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\time_test.obj
+echo(
+echo Running test time_test
+test_bin\time_test.exe || echo TEST FAILED: time_test && exit /b
+echo(
+
+echo Building test timeout_encoding_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\transport\chttp2\timeout_encoding_test.c
+link.exe /DEBUG /OUT:"test_bin\timeout_encoding_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\timeout_encoding_test.obj
+echo(
+echo Running test timeout_encoding_test
+test_bin\timeout_encoding_test.exe || echo TEST FAILED: timeout_encoding_test && exit /b
+echo(
+
+echo Building test transport_metadata_test
+cl.exe /c /I..\.. /I..\..\include /nologo /Z7 /W3 /WX- /sdl /D WIN32 /D _LIB /D _USE_32BIT_TIME_T /D _UNICODE /D UNICODE /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /TC /analyze- /Fo:test_bin\ ..\..\test\core\transport\metadata_test.c
+link.exe /DEBUG /OUT:"test_bin\transport_metadata_test.exe" /INCREMENTAL /NOLOGO /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib test_bin\metadata_test.obj
+echo(
+echo Running test transport_metadata_test
+test_bin\transport_metadata_test.exe || echo TEST FAILED: transport_metadata_test && exit /b
+echo(
+
diff --git a/vsprojects/vs2013/gpr_test_util.vcxproj b/vsprojects/vs2013/gpr_test_util.vcxproj
index 59e9ef2aefa..04caa7e9b1d 100644
--- a/vsprojects/vs2013/gpr_test_util.vcxproj
+++ b/vsprojects/vs2013/gpr_test_util.vcxproj
@@ -81,6 +81,11 @@
+
+
+ {B23D3D1A-9438-4EDA-BEB6-9A0A03D17792}
+
+
diff --git a/vsprojects/vs2013/grpc.sln b/vsprojects/vs2013/grpc.sln
index 424ae0adbda..f34d360fdf5 100644
--- a/vsprojects/vs2013/grpc.sln
+++ b/vsprojects/vs2013/grpc.sln
@@ -6,6 +6,9 @@ MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gpr", "gpr.vcxproj", "{B23D3D1A-9438-4EDA-BEB6-9A0A03D17792}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gpr_test_util", "gpr_test_util.vcxproj", "{EAB0A629-17A9-44DB-B5FF-E91A721FE037}"
+ ProjectSection(ProjectDependencies) = postProject
+ {B23D3D1A-9438-4EDA-BEB6-9A0A03D17792} = {B23D3D1A-9438-4EDA-BEB6-9A0A03D17792}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grpc", "grpc.vcxproj", "{29D16885-7228-4C31-81ED-5F9187C7F2A9}"
ProjectSection(ProjectDependencies) = postProject
@@ -19,6 +22,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grpc_csharp_ext", "grpc_csh
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grpc_test_util", "grpc_test_util.vcxproj", "{17BCAFC0-5FDC-4C94-AEB9-95F3E220614B}"
+ ProjectSection(ProjectDependencies) = postProject
+ {B23D3D1A-9438-4EDA-BEB6-9A0A03D17792} = {B23D3D1A-9438-4EDA-BEB6-9A0A03D17792}
+ {29D16885-7228-4C31-81ED-5F9187C7F2A9} = {29D16885-7228-4C31-81ED-5F9187C7F2A9}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grpc_unsecure", "grpc_unsecure.vcxproj", "{46CEDFFF-9692-456A-AA24-38B5D6BCF4C5}"
ProjectSection(ProjectDependencies) = postProject
diff --git a/vsprojects/vs2013/grpc_test_util.vcxproj b/vsprojects/vs2013/grpc_test_util.vcxproj
index a935fb4feb0..e6af807bb81 100644
--- a/vsprojects/vs2013/grpc_test_util.vcxproj
+++ b/vsprojects/vs2013/grpc_test_util.vcxproj
@@ -103,6 +103,14 @@
+
+
+ {B23D3D1A-9438-4EDA-BEB6-9A0A03D17792}
+
+
+ {29D16885-7228-4C31-81ED-5F9187C7F2A9}
+
+