public void GetFreeDynamicPortThrowsOnUnexpectedEndPointType() { // arrange var port = 51234; var factory = Mock.Of <ITcpListenerWrapperFactory>(x => x.Create(0, true).LocalEndpoint == new DnsEndPoint("localhost", port)); var helper = new TcpHelper(factory); // act and assert var error = Assert.Throws <InvalidOperationException>(() => helper.GetFreeDynamicPort()); Assert.Equal(Resources.Exception_UnexpectedEndpointType, error.Message); }
public void GetsFreeDynamicPort() { // arrange var port = 51234; var factory = Mock.Of <ITcpListenerWrapperFactory>(x => x.Create(0, true).LocalEndpoint == new IPEndPoint(IPAddress.Loopback, port)); var helper = new TcpHelper(factory); // act var result = helper.GetFreeDynamicPort(); // assert Assert.Equal(port, result); }
public void GetFreeDynamicPortThrowsOnSocketError() { // arrange var ex = new SocketException(); var factory = Mock.Of <ITcpListenerWrapperFactory>(); Mock.Get(factory).Setup(x => x.Create(0, true).Start()).Throws(ex); var helper = new TcpHelper(factory); // act and assert var error = Assert.Throws <InvalidOperationException>(() => helper.GetFreeDynamicPort()); Assert.Equal(Resources.Exception_CouldNotOpenADynamicPortForExclusiveUse, error.Message); Assert.Same(ex, error.InnerException); }