public void Throw_Exception_When_DomainName_Is_Null() { // Arrange var socketMock = new Mock <ISocket>(); var whois = new Whois(socketMock.Object); var port = WhoisConstants.Port; var whoisServer = WhoisConstants.WhoisServer; var whoisServerLookupQueryPrefix = WhoisConstants.WhoisServerLookupQueryPrefix; var responseBufferSizeInBytes = WhoisConstants.RecommendedBufferSizeInBytes; // Act & Assert Assert.Throws(typeof(ArgumentNullException), () => whois.LookupDotComDomain(null, port, whoisServer, whoisServerLookupQueryPrefix, responseBufferSizeInBytes)); }
public void Throw_Exception_When_DomainNameLength_isOutOfRange() { // Arrange var socketMock = new Mock <ISocket>(); var whois = new Whois(socketMock.Object); var domainName = new String('a', 255) + ".com"; var port = WhoisConstants.Port; var whoisServer = WhoisConstants.WhoisServer; var whoisServerLookupQueryPrefix = WhoisConstants.WhoisServerLookupQueryPrefix; var responseBufferSizeInBytes = WhoisConstants.RecommendedBufferSizeInBytes; // Act & Assert Assert.Throws(typeof(ArgumentOutOfRangeException), () => whois.LookupDotComDomain(domainName, port, whoisServer, whoisServerLookupQueryPrefix, responseBufferSizeInBytes)); }
public void Throw_Exception_When_DomainName_Contains_Illegal_Characters_AndDoesNotMatchPattern(string domain) { // Arrange var socketMock = new Mock <ISocket>(); var whois = new Whois(socketMock.Object); var domainName = domain; var port = WhoisConstants.Port; var whoisServer = WhoisConstants.WhoisServer; var whoisServerLookupQueryPrefix = WhoisConstants.WhoisServerLookupQueryPrefix; var responseBufferSizeInBytes = WhoisConstants.RecommendedBufferSizeInBytes; // Act & Assert Assert.Throws(typeof(ArgumentException), () => whois.LookupDotComDomain(domainName, port, whoisServer, whoisServerLookupQueryPrefix, responseBufferSizeInBytes)); }
public void Throw_Exception_When_ResponseBufferSizeInBytes_isOutOfRange(int bufferSize) { // Arrange var socketMock = new Mock <ISocket>(); var whois = new Whois(socketMock.Object); var domainName = "test.com"; var port = WhoisConstants.Port; var whoisServer = WhoisConstants.WhoisServer; var whoisServerLookupQueryPrefix = WhoisConstants.WhoisServerLookupQueryPrefix; var responseBufferSizeInBytes = bufferSize; // Act & Assert Assert.Throws(typeof(ArgumentOutOfRangeException), () => whois.LookupDotComDomain(domainName, port, whoisServer, whoisServerLookupQueryPrefix, responseBufferSizeInBytes)); }
public void Call_ISocket_ConnectMethod_WithExpectedParams() { // Arrange var socketStub = new Mock <ISocket>(); var whois = new Whois(socketStub.Object); var domainName = "test.com"; var port = WhoisConstants.Port; var whoisServer = WhoisConstants.WhoisServer; var whoisServerLookupQueryPrefix = WhoisConstants.WhoisServerLookupQueryPrefix; var responseBufferSizeInBytes = WhoisConstants.RecommendedBufferSizeInBytes; // Act whois.LookupDotComDomain(domainName, port, whoisServer, whoisServerLookupQueryPrefix, responseBufferSizeInBytes); // Assert socketStub.Verify(s => s.Connect(WhoisConstants.WhoisServer, port)); }
public void Call_ISocket_ReceiveMethod_Once() { // Arrange var socketStub = new Mock <ISocket>(); var whois = new Whois(socketStub.Object); var domainName = "test.com"; var port = WhoisConstants.Port; var whoisServer = WhoisConstants.WhoisServer; var whoisServerLookupQueryPrefix = WhoisConstants.WhoisServerLookupQueryPrefix; var responseBufferSizeInBytes = WhoisConstants.RecommendedBufferSizeInBytes; byte[] responseBytes = new byte[responseBufferSizeInBytes]; // Act whois.LookupDotComDomain(domainName, port, whoisServer, whoisServerLookupQueryPrefix, responseBufferSizeInBytes); // Assert socketStub.Verify(s => s.Receive(responseBytes), Times.Once()); }
public void Return_CorrectResults() { // Arrange string expectedMessage = "test.com whois message"; var socketStub = new FakeSocket(expectedMessage); var whois = new Whois(socketStub); var domainName = "test.com"; var port = WhoisConstants.Port; var whoisServer = WhoisConstants.WhoisServer; var whoisServerLookupQueryPrefix = WhoisConstants.WhoisServerLookupQueryPrefix; var responseBufferSizeInBytes = WhoisConstants.RecommendedBufferSizeInBytes; // Act string actualMessage = whois.LookupDotComDomain(domainName, port, whoisServer, whoisServerLookupQueryPrefix, responseBufferSizeInBytes); // Assert StringAssert.Contains(expectedMessage, actualMessage); }
public void Call_ISocket_SendMethod_WithExpectedParams() { // Arrange var socketStub = new Mock <ISocket>(); var whois = new Whois(socketStub.Object); var domainName = "test.com"; var port = WhoisConstants.Port; var whoisServer = WhoisConstants.WhoisServer; var whoisServerLookupQueryPrefix = WhoisConstants.WhoisServerLookupQueryPrefix; var responseBufferSizeInBytes = WhoisConstants.RecommendedBufferSizeInBytes; var responseBytes = new byte[responseBufferSizeInBytes]; byte[] query = Encoding.ASCII.GetBytes(whoisServerLookupQueryPrefix + domainName + Environment.NewLine); // Act whois.LookupDotComDomain(domainName, port, whoisServer, whoisServerLookupQueryPrefix, responseBufferSizeInBytes); // Assert socketStub.Verify(s => s.Send(query)); }