Exemplo n.º 1
0
        public void TestParseDateCreatedWhenNotNominetResult()
        {
            var record = new WhoisRecord(FakeTcpReader.FakeGoogleResponse3);

            record = visitor.Visit(record);

            Assert.IsFalse(record.Created.HasValue);
        }
Exemplo n.º 2
0
        public void TestDownloadGoogleCom()
        {
            var record = new WhoisRecord { Domain = "google.com" };

            visitor.Visit(record);

            // Should returned multiple matches (extra spam records)
            Assert.Greater(record.Text.IndexOfLineContaining(@"To single out one record, look it up with ""xxx"""), -1);
        }
Exemplo n.º 3
0
        public void TestParseDateCreated()
        {
            var record = new WhoisRecord(FakeTcpReader.FakeCogworksResponse);

            record = visitor.Visit(record);

            Assert.IsTrue(record.Created.HasValue);
            Assert.AreEqual(record.Created.Value, new DateTime(2003, 8, 26));
        }
Exemplo n.º 4
0
        /// <summary>
        /// Visits the specified record.
        /// </summary>
        /// <param name="record">The record.</param>
        /// <returns></returns>
        public WhoisRecord Visit(WhoisRecord record)
        {
            using (var tcpReader = TcpReaderFactory.Create())
            {
                record.Text = tcpReader.Read(record.Server, 43, record.Domain);
            }

            return record;
        }
Exemplo n.º 5
0
        public void TestDownloadCogworksCoUk()
        {
            var record = new WhoisRecord {Domain = "cogworks.co.uk"};

            visitor.Visit(record);

            // Should of gone to NOMINET
            Assert.Greater(record.Text.IndexOfLineContaining("Nominet"), -1);
        }
Exemplo n.º 6
0
        public void TestParseDateCreated()
        {
            var record = new WhoisRecord(FakeTcpReader.FakeYaRuResponse);

            record = visitor.Visit(record);

            Assert.IsTrue(record.Created.HasValue);
            Assert.AreEqual(record.Created.Value, new DateTime(1999, 7, 12));
        }
        public void TestWhoisServerNameIsAssigned()
        {
            var record = new WhoisRecord { Domain = "example.com" };

            Assert.IsNull(record.Server);

            record = visitor.Visit(record);

            Assert.AreEqual("test.whois.com", record.Server);
        }
        public void TestDownloadSecondaryServerVisitor()
        {
            var record = new WhoisRecord(FakeTcpReader.FakeGoogleResponse2);
            record.Domain = "google.com";

            record = vistior.Visit(record);

            // Should of downloaded the MarkMonitor response (response 3)
            Assert.Greater(record.Text.IndexOfLineContaining("MarkMonitor"), -1);
        }
        public void TestExpandResultsWhenResultsDoesntIncludeMagicString()
        {
            // Initial the record with the canned response of un-expanded results.
            var record = new WhoisRecord(FakeTcpReader.FakeCogworksResponse);
            record.Domain = "cogworks.co.uk";

            record = visitor.Visit(record);

            // confirm the results have not changed
            Assert.Greater(record.Text.IndexOfLineContaining("Nominet"), -1);
        }
Exemplo n.º 10
0
        /// <summary>
        /// Lookups the WHOIS information for the specified <see cref="domain"/>.
        /// </summary>
        /// <param name="domain">The domain.</param>
        /// <returns></returns>
        public WhoisRecord Lookup(string domain)
        {
            var record = new WhoisRecord { Domain = domain };

            foreach (var visitor in Visitors)
            {
                record = visitor.Visit(record);
            }

            return record;
        }
Exemplo n.º 11
0
 /// <summary>
 /// Visits the specified record.
 /// </summary>
 /// <param name="record">The record.</param>
 /// <returns></returns>
 public WhoisRecord Visit(WhoisRecord record)
 {
     // Check to narrow down search results
     if (record.Text.AsString().Contains("=xxx"))
     {
         using (var tcpReader = TcpReaderFactory.Create())
         {
             record.Text= tcpReader.Read(record.Server, 43, "=" + record.Domain);
         }
     }
     return record;
 }
        public void TestExpandResultsWhenResultsIncludeMagicString()
        {
            // Initial the record with the canned response of un-expanded results.
            var record = new WhoisRecord(FakeTcpReader.FakeGoogleResponse1);
            record.Domain = "google.com";

            // confirm there are no WHOIS server domains in the results.
            Assert.AreEqual(record.Text.IndexOfLineContaining("Whois Server:"), -1);

            record = visitor.Visit(record);

            // confirm the results now have whois server domains.
            Assert.Greater(record.Text.IndexOfLineContaining("Whois Server:"), -1);
        }
        /// <summary>
        /// Visits the specified record.
        /// </summary>
        /// <param name="record">The record.</param>
        /// <returns></returns>
        public WhoisRecord Visit(WhoisRecord record)
        {
            var referralIndex = record.Text.IndexOfLineEndingWith(": " + record.Domain);

            if (referralIndex > -1)
            {
                var whoIsServer = record.Text.Containing("whois", referralIndex);

                whoIsServer = whoIsServer.SubstringAfterChar(":").Trim();

                using (var tcpReader = TcpReaderFactory.Create())
                {
                    record.Text = tcpReader.Read(whoIsServer, 43, record.Domain);
                }
            }

            return record;
        }
Exemplo n.º 14
0
        /// <summary>
        /// Visits the specified record.
        /// </summary>
        /// <param name="record">The record.</param>
        /// <returns></returns>
        public WhoisRecord Visit(WhoisRecord record)
        {
            var referralIndex = record.Text.IndexOfLineContaining("Created on");

            if (referralIndex > -1)
            {
                var registationString = record.Text.Containing("Created on", referralIndex);

                registationString = registationString.SubstringAfterChar(":").Trim();

                DateTime registrationDate;

                if (DateTime.TryParse(registationString, out registrationDate))
                {
                    record.Created = registrationDate;
                }
            }

            return record;
        }
Exemplo n.º 15
0
        public WhoisRecord Visit(WhoisRecord record)
        {
            record.Text = new ArrayList { fakeContent };

            return record;
        }
Exemplo n.º 16
0
        /// <summary>
        /// Visits the specified record.
        /// </summary>
        /// <param name="record">The record.</param>
        /// <returns></returns>
        public WhoisRecord Visit(WhoisRecord record)
        {
            record.Server = WhoisServerLookup.Lookup(record.Domain);

            return record;
        }