   _ = sem.wait()
 }
 
-func runServer(server: Server) throws {
+func runServer(server: Server) throws -> DispatchSemaphore {
   var requestCount = 0
   let sem = DispatchSemaphore(value: 0)
   server.run { requestHandler in

    }
    call.messageQueueEmpty.wait()
  }

  // Receive pongs
  for _ in 0..<steps {

func runTest(useSSL: Bool) {
  gRPC.initialize()

  var serverRunningSemaphore: DispatchSemaphore?

  // create the server
  let server: Server
