def test_to_string_full(self): vhost = VHost('test vhost', 80, 'HTTP', '/www', '/system', [Log('ACCESSLOG'), Log('WARNINGLOG')], ['127.0.0.0/8', '192.168.0.0/16'], {'host.domain': True, 'test.domain': None}, 'private_key', 'certificate') copy = VHost.from_string(str(vhost)) self.assertEqual(vhost, copy)
def test_equality(self): vhost_0 = VHost('test vhost', 80, 'HTTP', '/www', '/system', [Log('ACCESSLOG'), Log('WARNINGLOG')], ['127.0.0.0/8', '192.168.0.0/16'], {'host.domain': None}, 'private_key', 'certificate') vhost_1 = VHost('test vhost', 80, 'HTTP', '/www', '/system', [Log('ACCESSLOG'), Log('WARNINGLOG')], ['127.0.0.0/8', '192.168.0.0/16'], {'host.domain': None}, 'private_key', 'certificate') self.assertEqual(vhost_0, vhost_1) vhost_1 = VHost.from_string(str(vhost_0)) vhost_1.set_name('different') self.assertNotEqual(vhost_0, vhost_1) vhost_1 = VHost.from_string(str(vhost_0)) vhost_1.set_port(81) self.assertNotEqual(vhost_0, vhost_1) vhost_1 = VHost.from_string(str(vhost_0)) vhost_1.set_protocol('HTTPS') self.assertNotEqual(vhost_0, vhost_1) vhost_1 = VHost.from_string(str(vhost_0)) vhost_1.set_doc_root('/var/www') self.assertNotEqual(vhost_0, vhost_1) vhost_1 = VHost.from_string(str(vhost_0)) vhost_1.set_sys_root('/var/system') self.assertNotEqual(vhost_0, vhost_1) vhost_1 = VHost.from_string(str(vhost_0)) vhost_1.add_log(Log('NEWLOG')) self.assertNotEqual(vhost_0, vhost_1) vhost_1 = VHost.from_string(str(vhost_0)) vhost_1.add_ip('10.0.0.0/8') self.assertNotEqual(vhost_0, vhost_1) vhost_1 = VHost.from_string(str(vhost_0)) vhost_1.add_host('newhost', None) self.assertNotEqual(vhost_0, vhost_1) vhost_1 = VHost.from_string(str(vhost_0)) vhost_1.set_private_key('new_key') self.assertNotEqual(vhost_0, vhost_1) vhost_1 = VHost.from_string(str(vhost_0)) vhost_1.set_certificate('new certificate') self.assertNotEqual(vhost_0, vhost_1) self.assertNotEqual(vhost_0, [])
def test_vhost(self): text = ''' <VHOST custom="unknown"> <PORT>123</PORT> <UNKNOWN> <CUSTOM /> </UNKNOWN> </VHOST>''' vhost = VHost.from_string(text) tree = vhost.to_lxml_element() self.assertEqual('unknown', tree.get('custom')) unknown = tree.findall('UNKNOWN') self.assertEqual(1, len(unknown)) unknown = unknown[0] custom = list(unknown) self.assertEqual(1, len(custom)) custom = custom[0] self.assertEqual('CUSTOM', custom.tag)
def test_from_string_full(self): text = '''<VHOST> <NAME>test vhost</NAME> <PORT>80</PORT> <PROTOCOL>HTTP</PROTOCOL> <DOCROOT>/www</DOCROOT> <SYSROOT>/system</SYSROOT> <ACCESSLOG /> <WARNINGLOG /> <IP>127.0.0.0/8</IP> <IP>192.168.0.0/16</IP> <HOST useRegex="YES">host.domain</HOST> <HOST>test.domain</HOST> <SSL_PRIVATEKEY>private_key</SSL_PRIVATEKEY> <SSL_CERTIFICATE>certificate</SSL_CERTIFICATE> </VHOST>''' vhost = VHost.from_string(text) right = VHost('test vhost', 80, 'HTTP', '/www', '/system', [Log('ACCESSLOG'), Log('WARNINGLOG')], ['127.0.0.0/8', '192.168.0.0/16'], {'host.domain': True, 'test.domain': None}, 'private_key', 'certificate') self.assertEqual(vhost, right)
def test_from_string(self): text = '<VHOST />' vhost = VHost.from_string(text) right = VHost() self.assertEqual(vhost, right)
def test_from_string_private_key(self): text = '<VHOST><SSL_PRIVATEKEY>private_key</SSL_PRIVATEKEY></VHOST>' vhost = VHost.from_string(text) right = VHost(private_key='private_key') self.assertEqual(vhost, right)
def test_from_string_ip(self): text = '<VHOST><IP>127.0.0.0/8</IP></VHOST>' vhost = VHost.from_string(text) right = VHost(ip=['127.0.0.0/8']) self.assertEqual(vhost, right)
def test_from_string_sys_root(self): text = '<VHOST><SYSROOT>/system</SYSROOT></VHOST>' vhost = VHost.from_string(text) right = VHost(sys_root='/system') self.assertEqual(vhost, right)
def test_from_string_doc_root(self): text = '<VHOST><DOCROOT>/www</DOCROOT></VHOST>' vhost = VHost.from_string(text) right = VHost(doc_root = '/www') self.assertEqual(vhost, right)
def test_from_string_name(self): text = '<VHOST><NAME>test vhost</NAME></VHOST>' vhost = VHost.from_string(text) right = VHost('test vhost') self.assertEqual(vhost, right)
def test_to_string_private_key(self): vhost = VHost(private_key = 'private_key') copy = VHost.from_string(str(vhost)) self.assertEqual(vhost, copy)
def test_from_string_certificate(self): text = '<VHOST><SSL_CERTIFICATE>certificate</SSL_CERTIFICATE></VHOST>' vhost = VHost.from_string(text) right = VHost(certificate = 'certificate') self.assertEqual(vhost, right)
def test_from_string_private_key(self): text = '<VHOST><SSL_PRIVATEKEY>private_key</SSL_PRIVATEKEY></VHOST>' vhost = VHost.from_string(text) right = VHost(private_key = 'private_key') self.assertEqual(vhost, right)
def test_from_string_host(self): text = '<VHOST><HOST useRegex="YES">.*</HOST><HOST>a.org</HOST></VHOST>' vhost = VHost.from_string(text) right = VHost(host = {'.*': True, 'a.org': None}) self.assertEqual(vhost, right)
def test_from_string_ip(self): text = '<VHOST><IP>127.0.0.0/8</IP></VHOST>' vhost = VHost.from_string(text) right = VHost(ip = ['127.0.0.0/8']) self.assertEqual(vhost, right)
def test_from_string_logs(self): text = '<VHOST><ACCESSLOG /><SOMELOG /></VHOST>' vhost = VHost.from_string(text) right = VHost(logs = [Log('ACCESSLOG'), Log('SOMELOG')]) self.assertEqual(vhost, right)
def test_from_string_sys_root(self): text = '<VHOST><SYSROOT>/system</SYSROOT></VHOST>' vhost = VHost.from_string(text) right = VHost(sys_root = '/system') self.assertEqual(vhost, right)
def test_to_string_ip(self): vhost = VHost(ip = ['127.0.0.0/8']) copy = VHost.from_string(str(vhost)) self.assertEqual(vhost, copy)
def test_to_string_host(self): vhost = VHost(host = {'.*': True, 'a.org': None}) copy = VHost.from_string(str(vhost)) self.assertEqual(vhost, copy)
def test_from_string_port(self): text = '<VHOST><PORT>80</PORT></VHOST>' vhost = VHost.from_string(text) right = VHost(port = 80) self.assertEqual(vhost, right)
def test_to_string_certificate(self): vhost = VHost(certificate = 'certificate') copy = VHost.from_string(str(vhost)) self.assertEqual(vhost, copy)
def test_from_string_protocol(self): text = '<VHOST><PROTOCOL>HTTP</PROTOCOL></VHOST>' vhost = VHost.from_string(text) right = VHost(protocol='HTTP') self.assertEqual(vhost, right)
def test_from_string_protocol(self): text = '<VHOST><PROTOCOL>HTTP</PROTOCOL></VHOST>' vhost = VHost.from_string(text) right = VHost(protocol = 'HTTP') self.assertEqual(vhost, right)
def test_to_string_name(self): vhost = VHost('test vhost') copy = VHost.from_string(str(vhost)) self.assertEqual(vhost, copy)
def test_from_string_port(self): text = '<VHOST><PORT>80</PORT></VHOST>' vhost = VHost.from_string(text) right = VHost(port=80) self.assertEqual(vhost, right)
def test_to_string_port(self): vhost = VHost(port = 80) copy = VHost.from_string(str(vhost)) self.assertEqual(vhost, copy)
def test_from_string_doc_root(self): text = '<VHOST><DOCROOT>/www</DOCROOT></VHOST>' vhost = VHost.from_string(text) right = VHost(doc_root='/www') self.assertEqual(vhost, right)
def test_to_string_protocol(self): vhost = VHost(protocol = 'HTTP') copy = VHost.from_string(str(vhost)) self.assertEqual(vhost, copy)
def test_from_string_logs(self): text = '<VHOST><ACCESSLOG /><SOMELOG /></VHOST>' vhost = VHost.from_string(text) right = VHost(logs=[Log('ACCESSLOG'), Log('SOMELOG')]) self.assertEqual(vhost, right)
def test_to_string_doc_root(self): vhost = VHost(doc_root = '/www') copy = VHost.from_string(str(vhost)) self.assertEqual(vhost, copy)
def test_from_string_host(self): text = '<VHOST><HOST useRegex="YES">.*</HOST><HOST>a.org</HOST></VHOST>' vhost = VHost.from_string(text) right = VHost(host={'.*': True, 'a.org': None}) self.assertEqual(vhost, right)
def test_to_string_sys_root(self): vhost = VHost(sys_root = '/system') copy = VHost.from_string(str(vhost)) self.assertEqual(vhost, copy)
def test_from_string_certificate(self): text = '<VHOST><SSL_CERTIFICATE>certificate</SSL_CERTIFICATE></VHOST>' vhost = VHost.from_string(text) right = VHost(certificate='certificate') self.assertEqual(vhost, right)
def test_to_string_logs(self): vhost = VHost(logs = [Log('ACCESSLOG'), Log('SOMELOG')]) copy = VHost.from_string(str(vhost)) self.assertEqual(vhost, copy)