Commit d4d00856 authored by Boxiang Sun's avatar Boxiang Sun

Stabilizing fixup for SlapOS.Eggs.UnitTest

See merge request !100
parents ce634067 5d23278e
...@@ -30,8 +30,18 @@ import os.path ...@@ -30,8 +30,18 @@ import os.path
from slapos.networkbench import dnsbench from slapos.networkbench import dnsbench
from slapos.networkbench.ping import ping, ping6 from slapos.networkbench.ping import ping, ping6
from slapos.networkbench.http import request from slapos.networkbench.http import request
import dns
import mock
class MockIPAddress:
def __init__(self, ip_text):
self.ip = ip_text
def to_text(self):
return self.ip
MOCK_IP_ADDRESS_LIST = [MockIPAddress('161.97.166.226'), MockIPAddress('176.31.129.213')]
DNS_EXPECTED_LIST = ["161.97.166.226", "176.31.129.213"] DNS_EXPECTED_LIST = ["161.97.166.226", "176.31.129.213"]
class TestDNSBench(unittest.TestCase): class TestDNSBench(unittest.TestCase):
...@@ -40,17 +50,20 @@ class TestDNSBench(unittest.TestCase): ...@@ -40,17 +50,20 @@ class TestDNSBench(unittest.TestCase):
""" """
Test dns resolution Test dns resolution
""" """
info = dnsbench.resolve( with mock.patch.object(dns.resolver, "query") as query:
"eu.web.vifib.com", DNS_EXPECTED_LIST) query.return_value = MOCK_IP_ADDRESS_LIST
self.assertEqual(info[0], 'DNS')
self.assertEqual(info[1], 'eu.web.vifib.com')
self.assertEqual(info[2], 200)
self.assertLess(info[3], 30) info = dnsbench.resolve(
self.assertEqual(info[4], 'OK', "eu.web.vifib.com", DNS_EXPECTED_LIST)
"%s != OK, full info: %s" % (info[4], info) )
self.assertEqual(set(info[5]), set([u'161.97.166.226', u'176.31.129.213']), self.assertEqual(info[0], 'DNS')
self.assertEqual(info[1], 'eu.web.vifib.com')
self.assertEqual(info[2], 200)
self.assertLess(info[3], 30)
self.assertEqual(info[4], 'OK',
"%s != OK, full info: %s" % (info[4], info) )
self.assertEqual(set(info[5]), set([u'161.97.166.226', u'176.31.129.213']),
"%s != set([u'161.97.166.226', u'176.31.129.213']), full info: %s" % (set(info[5]), info)) "%s != set([u'161.97.166.226', u'176.31.129.213']), full info: %s" % (set(info[5]), info))
def test_dnsbench_fail(self): def test_dnsbench_fail(self):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment