summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/hs/CMakeLists.txt11
-rw-r--r--test/hs/TestClient.hs1
-rwxr-xr-xtest/hs/TestServer.hs4
3 files changed, 11 insertions, 5 deletions
diff --git a/test/hs/CMakeLists.txt b/test/hs/CMakeLists.txt
index a65339da9..eaca3fa04 100644
--- a/test/hs/CMakeLists.txt
+++ b/test/hs/CMakeLists.txt
@@ -61,10 +61,17 @@ set(hs_crosstest_args
-odir=${CMAKE_CURRENT_BINARY_DIR}
-hidir=${CMAKE_CURRENT_BINARY_DIR}
)
+
+if (CMAKE_BUILD_TYPE STREQUAL "Debug")
+ set(hs_optimize -O0)
+else()
+ set(hs_optimize -O1)
+endif()
+
add_custom_command(
OUTPUT ${hs_crosstest_apps}
- COMMAND ${GHC} ${hs_crosstest_args} ${CMAKE_CURRENT_SOURCE_DIR}/TestServer.hs -o TestServer
- COMMAND ${GHC} ${hs_crosstest_args} ${CMAKE_CURRENT_SOURCE_DIR}/TestClient.hs -o TestClient
+ COMMAND ${GHC} ${hs_optimize} ${hs_crosstest_args} ${CMAKE_CURRENT_SOURCE_DIR}/TestServer.hs -o TestServer
+ COMMAND ${GHC} ${hs_optimize} ${hs_crosstest_args} ${CMAKE_CURRENT_SOURCE_DIR}/TestClient.hs -o TestClient
DEPENDS ${hs_test_gen} haskell_library TestServer.hs TestClient.hs
)
add_custom_target(haskell_crosstest ALL
diff --git a/test/hs/TestClient.hs b/test/hs/TestClient.hs
index 057a5602a..0ebc0fd0a 100644
--- a/test/hs/TestClient.hs
+++ b/test/hs/TestClient.hs
@@ -29,7 +29,6 @@ import Network
import Network.URI
import System.Environment
import System.Exit
-import System.Posix.Unistd
import qualified Data.ByteString.Lazy as LBS
import qualified Data.HashMap.Strict as Map
import qualified Data.HashSet as Set
diff --git a/test/hs/TestServer.hs b/test/hs/TestServer.hs
index 90ec11e78..4a88649b8 100755
--- a/test/hs/TestServer.hs
+++ b/test/hs/TestServer.hs
@@ -31,7 +31,7 @@ import Network
import System.Environment
import System.Exit
import System.IO
-import System.Posix.Unistd
+import Control.Concurrent (threadDelay)
import qualified System.IO as IO
import qualified Data.HashMap.Strict as Map
import qualified Data.HashSet as Set
@@ -241,7 +241,7 @@ instance ThriftTest_Iface TestHandler where
testOneway _ i = do
System.IO.putStrLn $ "testOneway(" ++ show i ++ "): Sleeping..."
- sleep (fromIntegral i)
+ threadDelay $ (fromIntegral i) * 1000000
System.IO.putStrLn $ "testOneway(" ++ show i ++ "): done sleeping!"
main :: IO ()