diff options
author | Tobias Hunger <tobias.hunger@qt.io> | 2016-09-09 10:01:44 +0200 |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2016-09-22 08:06:38 -0400 |
commit | 1d601c6cb978a3b6b6143fdf64e284fb3a098d1e (patch) | |
tree | 1f274c04ba934cbc06cff9b8f9d33b7defbc7212 /Tests | |
parent | 2c2ffd3874f749979d723d7a788d45e3830952d6 (diff) | |
download | cmake-1d601c6cb978a3b6b6143fdf64e284fb3a098d1e.tar.gz |
server-mode: Introduce cmServerConnection
Use it to split pipe and stdin/out handling out of cmServer itself.
The server will shut down when it looses its connection to the client.
This has the nice property that a crashing client will cause the server
to terminate as the OS will close the connection on behave of the client.
Diffstat (limited to 'Tests')
-rw-r--r-- | Tests/RunCMake/CommandLine/E_server-pipe-result.txt | 1 | ||||
-rw-r--r-- | Tests/RunCMake/CommandLine/E_server-pipe-stderr.txt | 1 | ||||
-rw-r--r-- | Tests/RunCMake/CommandLine/RunCMakeTest.cmake | 1 | ||||
-rw-r--r-- | Tests/Server/cmakelib.py | 2 |
4 files changed, 4 insertions, 1 deletions
diff --git a/Tests/RunCMake/CommandLine/E_server-pipe-result.txt b/Tests/RunCMake/CommandLine/E_server-pipe-result.txt new file mode 100644 index 0000000000..0cfbf08886 --- /dev/null +++ b/Tests/RunCMake/CommandLine/E_server-pipe-result.txt @@ -0,0 +1 @@ +2 diff --git a/Tests/RunCMake/CommandLine/E_server-pipe-stderr.txt b/Tests/RunCMake/CommandLine/E_server-pipe-stderr.txt new file mode 100644 index 0000000000..7193ba63b1 --- /dev/null +++ b/Tests/RunCMake/CommandLine/E_server-pipe-stderr.txt @@ -0,0 +1 @@ +^CMake Error: No pipe given after --pipe=$ diff --git a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake index 9f76ad9106..0c4f71c892 100644 --- a/Tests/RunCMake/CommandLine/RunCMakeTest.cmake +++ b/Tests/RunCMake/CommandLine/RunCMakeTest.cmake @@ -13,6 +13,7 @@ run_cmake_command(E_capabilities-arg ${CMAKE_COMMAND} -E capabilities --extra-ar run_cmake_command(E_echo_append ${CMAKE_COMMAND} -E echo_append) run_cmake_command(E_rename-no-arg ${CMAKE_COMMAND} -E rename) run_cmake_command(E_server-arg ${CMAKE_COMMAND} -E server --extra-arg) +run_cmake_command(E_server-pipe ${CMAKE_COMMAND} -E server --pipe=) run_cmake_command(E_touch_nocreate-no-arg ${CMAKE_COMMAND} -E touch_nocreate) run_cmake_command(E_time ${CMAKE_COMMAND} -E time ${CMAKE_COMMAND} -E echo "hello world") diff --git a/Tests/Server/cmakelib.py b/Tests/Server/cmakelib.py index e89b1f06e5..0f9807898b 100644 --- a/Tests/Server/cmakelib.py +++ b/Tests/Server/cmakelib.py @@ -79,7 +79,7 @@ def writePayload(cmakeCommand, obj): writeRawData(cmakeCommand, json.dumps(obj)) def initProc(cmakeCommand): - cmakeCommand = subprocess.Popen([cmakeCommand, "-E", "server", "--experimental"], + cmakeCommand = subprocess.Popen([cmakeCommand, "-E", "server", "--experimental", "--debug"], stdin=subprocess.PIPE, stdout=subprocess.PIPE) |