1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
|
import cymruwhois
import socket
import errno
class FakeFile:
def __init__(self, lines):
self.lines = lines
self.iter = iter(lines)
self.written = []
def write(self, data):
self.written.append(data)
return
def flush(self):
return
def readline(self):
try :
try:
return self.iter.next()
except AttributeError:
return self.iter.__next__() # for Python 3
except StopIteration:
raise socket.error(errno.EAGAIN, 'bleh')
def read(self, bytes):
try :
try:
return self.iter.next()
except AttributeError:
return self.iter.__next__() # for Python 3
except StopIteration:
raise socket.error(errno.EAGAIN, 'bleh')
class FakeSocket:
def __init__(self):
pass
def setblocking(self,x):
pass
def test_normal():
l=cymruwhois.Client(memcache_host=None)
l.socket = FakeSocket()
l.file = FakeFile([
'22990 | 169.226.11.11 | 169.226.0.0/16 | US | ALBANYEDU - The University at Albany'
])
l._connected = True
rec = l.lookup("169.226.11.11")
assert rec.asn == '22990'
assert rec.cc == 'US'
assert rec.owner == 'ALBANYEDU - The University at Albany'
def test_multiple_returned_for_a_single_ip():
l=cymruwhois.Client(memcache_host=None)
l.socket = FakeSocket()
l.file = FakeFile([
'22990 | 169.226.11.11 | 169.226.0.0/16 | US | ALBANYEDU - The University at Albany',
'22991 | 169.226.11.11 | 169.226.0.0/16 | US | ALBANYEDU - The University at Albany',
'15169 | 66.102.1.104 | 66.102.0.0/23 | US | GOOGLE - Google Inc.',
])
l._connected = True
rec = l.lookup("169.226.11.11")
assert rec.asn == '22990'
rec = l.lookup("66.102.1.104")
assert rec.asn == '15169'
def test_multiple_returned_for_a_single_ip_dict():
l=cymruwhois.Client(memcache_host=None)
l.socket = FakeSocket()
l.file = FakeFile([
'22990 | 169.226.11.11 | 169.226.0.0/16 | US | ALBANYEDU - The University at Albany',
'22991 | 169.226.11.11 | 169.226.0.0/16 | US | ALBANYEDU - The University at Albany',
'15169 | 66.102.1.104 | 66.102.0.0/23 | US | GOOGLE - Google Inc.',
])
l._connected = True
recs = l.lookupmany_dict(['169.226.11.11','66.102.1.104'])
rec = recs['169.226.11.11']
assert rec.asn == '22990'
rec = recs['66.102.1.104']
assert rec.asn == '15169'
|