           res.send {}
 
         server2 = apiary.listen (PORT + 1), ->
-          # Comment out this timeout to enable race condition bug
-          # Event loop get stuck or idle without this
-          # https://github.com/apiaryio/dredd/issues/282
-          setTimeout () ->
-            undefined
-          , 1000
-
-          execCommand cmd, () ->
-            server2.close ->
+          wakeUpEventLoop ->
+            execCommand cmd, () ->
+              server2.close ->
 
         server2.on 'close', done
 


      server = app.listen PORT, () ->
        server2 = apiary.listen (PORT + 1), ->
          # Comment out this timeout to enable race condition bug
          # Event loop get stuck or idle without this
          # https://github.com/apiaryio/dredd/issues/282
          setTimeout () ->
            undefined
          , 1000

          execCommand cmd, () ->
            server2.close ->
              server.close () ->
                done()

    it 'should not print warning about missing APIARY_API_KEY and APIARY_API_NAME', () ->
      assert.notInclude stderr, 'Apiary reporter environment variable APIARY_API_KEY or APIARY_API_NAME not defined.'

      cb null, stdout, stderr, exitStatus
  return


# Event loop gets stuck or idle without this, see
# https://github.com/apiaryio/dredd/issues/282
wakeUpEventLoop = (callback) ->
  setTimeout ->
    undefined
  , 1000
  callback()


describe "Dredd class Integration", () ->
  dreddCommand = null
  custom = {}
