anchor.diff:              with | ex -> Console.WriteLine(sprintf "Error stopping process: %A" ex)
   
       let startNewProcess () =
  +        let testTcpPort = findFreeTcpPort()
  +        let testHttpPort = findFreeTcpPort()
           let processArguments = 
               let timeoutOptions = "--Int-Tcp-Heartbeat-Timeout=50000 --Ext-Tcp-Heartbeat-Timeout=50000"
               let portOptions = 
  
positive.code:     let clusterNodeAbsolutePath = Path.Combine(DirectoryInfo(Directory.GetCurrentDirectory()).Parent.FullName, "EventStore3\EventStore.ClusterNode.exe")
      let testNodeEnvironmentVariable = "EventfulTestNode"
      let clusterNodeProcessName = "EventStore.ClusterNode"
      let testTcpPort = 11130
      let testHttpPort = 21130
  
      let ensureNoZombieEventStores () =
          for proc in Process.GetProcessesByName(clusterNodeProcessName) do
  
negative.code: 
  open System
  open System.IO
  open System.Net
  open System.Net.Sockets
  open System.Diagnostics
  open EventStore.ClientAPI
  
  module InMemoryEventStoreRunner =
  
      let findFreeTcpPort () =
          let l = new TcpListener(IPAddress.Loopback, 0)
          l.Start()
          let port = (l.LocalEndpoint :?> IPEndPoint).Port
          l.Stop()
          port
   
      type EventStoreAccess =     
          { Process : Process
            Connection: IEventStoreConnection }
  