Example #1
0
    def test6(self):
        parser = OpenVpnConfig(static_config=test6)
        parser.load()
        data = parser.config_data
        self.assertEqual(len(data), 2, 'Number of parsed lines does not match')

        self.assertEqual(data[0].ltype, 3)
        self.assertEqual(data[0].cmd, 'remote')

        self.assertEqual(data[1].ltype, 3)
        self.assertEqual(parser.dump(), test6,
                         'Parser did not return the same data')
Example #2
0
    def test7(self):
        parser = OpenVpnConfig(static_config=test7)
        parser.load()
        data = parser.config_data

        self.assertEqual(parser.dump().strip(), test7.strip(),
                         'Parser did not return the same data')

        testx = parser.dump()
        parser2 = OpenVpnConfig(static_config=testx)
        parser2.load()
        data2 = parser.config_data
        self.assertEqual(data2, data, 'Parser did not return the same data')
Example #3
0
 def test4_add_key(self):
     parser = OpenVpnConfig(static_config=test4)
     parser.load()
     parser.set_config_value('key', 'server.key')
     data = parser.config_data
     self.assertEqual(len(data), 1)
     self.assertEqual(data[0].ltype, 3)
Example #4
0
 def test3_remove_added(self):
     parser = OpenVpnConfig(static_config=test3)
     parser.load()
     parser.set_config_value('persist-tun', remove=True)
     data = parser.config_data
     self.assertEqual(len(data), 1)
     self.assertEqual(data[0].ltype, 2)
Example #5
0
 def test2_add_removed_single(self):
     parser = OpenVpnConfig(static_config=test2)
     parser.load()
     parser.set_config_value('persist-tun')
     data = parser.config_data
     self.assertEqual(len(data), 1)
     self.assertEqual(data[0].ltype, 3)
Example #6
0
    def test1(self):
        parser = OpenVpnConfig(static_config=test1)
        parser.load()
        data = parser.config_data

        # Simple parser test
        self.assertEqual(len(data), 6, 'Number of parsed lines does not match')

        self.assertEqual(data[0].ltype, 3, 'Parsed command has invalid type')
        self.assertEqual(data[0].cmd, 'client-to-client')
        self.assertEqual(data[0].params, None)
        self.assertEqual(data[0].comment, None)

        self.assertEqual(data[1].ltype, 3)
        self.assertEqual(data[1].cmd, 'server')
        self.assertEqual(data[1].params, '10.8.0.0 255.255.255.0')
        self.assertEqual(data[1].comment, None)

        self.assertEqual(data[2].ltype, 2)
        self.assertEqual(data[2].cmd, 'server')
        self.assertEqual(data[2].params, '10.7.0.0 255.255.255.0')
        self.assertEqual(data[2].comment, None)

        self.assertEqual(data[3].ltype, 3)
        self.assertEqual(data[3].cmd, 'key')
        self.assertEqual(data[3].params, 'server.key')
        self.assertEqual(data[3].comment, '# This file should be kept secret')

        self.assertEqual(data[4].ltype, 2)
        self.assertEqual(data[4].cmd, 'key')
        self.assertEqual(data[4].params, 'server.key')
        self.assertEqual(data[4].comment, '# This file should be kept secret')

        self.assertEqual(data[5].ltype, 1)

        test1x = parser.dump()
        parser2 = OpenVpnConfig(static_config=test1x)
        parser2.load()
        data2 = parser.config_data
        self.assertEqual(data2, data, 'Parser did not return the same data')
Example #7
0
    def test1_remove_key(self):
        parser = OpenVpnConfig(static_config=test1)
        parser.load()
        parser.set_config_value('key', remove=True)
        ctr_comm = 0
        for rec in parser.config_data:
            if rec.cmd == 'key':
                self.assertEqual(rec.ltype, 2, 'Directive is still active')

            if rec.ltype == 2 and rec.cmd == 'key':
                ctr_comm += 1

        self.assertLessEqual(ctr_comm, 2,
                             'Commented out value should be max 2')
Example #8
0
    def test5_push_remove(self):
        parser = OpenVpnConfig(static_config=test5)
        parser.load()

        vals = ['alpha', 'secret']
        parser.set_config_value('push', vals, remove=True)

        data = parser.config_data
        self.assertEqual(len(data), 5)

        vals_present = [False] * len(vals)
        for cur in data:
            if cur.ltype == 3 and cur.params in vals:
                vals_present[vals.index(cur.params)] = True
        self.assertEqual(vals_present, [False] * len(vals))
Example #9
0
    def test5_push(self):
        parser = OpenVpnConfig(static_config=test5)
        parser.load()

        vals = ['alpha', 'beta', 'delta', 'secret']
        parser.set_config_value('push', vals)

        data = parser.config_data
        self.assertEqual(len(data), 6)

        vals_present = [False] * len(vals)
        for cur in data:
            if cur.ltype == 3:
                self.assertTrue(cur.params in vals)
                vals_present[vals.index(cur.params)] = True

        self.assertEqual(vals_present, [True] * len(vals))
Example #10
0
    def test8(self):
        parser = OpenVpnConfig(static_config=test8)
        parser.load()
        data = parser.config_data
        self.assertEqual(parser.dump().strip(), test8.strip(),
                         'Parser did not return the same data')

        testx = parser.dump()
        parser2 = OpenVpnConfig(static_config=testx)
        parser2.load()
        data2 = parser.config_data
        self.assertEqual(data2, data, 'Parser did not return the same data')

        parser.set_config_value('proto', 'tcp')
        data = parser.config_data
        self.assertEqual(len(data), 2)
        self.assertEqual(data[0].ltype, 2)
        self.assertEqual(data[1].ltype, 3)