public void Establish() { s_eventStoreNodeStarted = false; s_eventStoreClientConnected = false; var noneIp = new IPEndPoint(IPAddress.None, 0); s_eventStoreNode = EmbeddedVNodeBuilder .AsSingleNode() .RunInMemory() .WithExternalTcpOn(noneIp) .WithInternalTcpOn(noneIp) .WithExternalHttpOn(noneIp) .WithInternalHttpOn(noneIp) .Build(); s_eventStoreNode.NodeStatusChanged += (sender, e) => { if (e.NewVNodeState == VNodeState.Master) { s_eventStoreNodeStarted = true; } }; s_eventStoreNode.Start(); s_eventStore = EmbeddedEventStoreConnection.Create(s_eventStoreNode); s_eventStore.Connected += (sender, e) => { s_eventStoreClientConnected = true; }; s_eventStore.ConnectAsync().Wait(); s_eventStoreMessageStore = new EventStoreMessageStore(s_eventStore); EnsureEventStoreNodeHasStartedAndTheClientHasConnected(); }