~rackspace-ozone/openstack-guest-agents/trunk

« back to all changes in this revision

Viewing changes to unix/tests/test_resetnetwork_interfaces.py

  • Committer: Johannes Erdfelt
  • Date: 2011-10-21 16:50:41 UTC
  • mfrom: (88.3.17 networking-refactor)
  • Revision ID: johannes.erdfelt@rackspace.com-20111021165041-smmnytu2xezh2751
MergeĀ lp:~johannes.erdfelt/openstack-guest-agents/networking-refactor

Show diffs side-by-side

added added

removed removed

Lines of Context:
33
33
 
34
34
class TestInterfacesUpdates(agent_test.TestCase):
35
35
 
36
 
    def _run_test(self, dist, infiles=None, version=None, **config):
37
 
        interfaces = []
38
 
        for label, options in config.iteritems():
39
 
            interface = {'label': label, 'mac': options['hwaddr']}
 
36
    def _run_test(self, dist, infiles=None, version=None, **configs):
 
37
        interfaces = {}
 
38
        for ifname, options in configs.iteritems():
 
39
            interface = {'mac': options['hwaddr']}
40
40
 
41
41
            ip4s = []
42
42
            for ip, netmask in options.get('ipv4', []):
43
 
                ip4s.append({'enabled': '1', 'ip': ip, 'netmask': netmask})
44
 
            interface['ips'] = ip4s
 
43
                ip4s.append({'address': ip,
 
44
                             'netmask': netmask})
 
45
            interface['ip4s'] = ip4s
45
46
 
46
 
            if options.get('gateway4'):
47
 
                interface['gateway'] = options['gateway4']
 
47
            interface['gateway4'] = options.get('gateway4')
48
48
 
49
49
            ip6s = []
50
50
            for ip, netmask in options.get('ipv6', []):
51
 
                ip6s.append({'enabled': '1',
52
 
                    'address': ip,
53
 
                    'netmask': netmask})
 
51
                ip6s.append({'address': ip,
 
52
                             'prefixlen': netmask})
54
53
            interface['ip6s'] = ip6s
55
54
 
56
 
            if options.get('gateway6'):
57
 
                interface['gateway6'] = options['gateway6']
 
55
            interface['gateway6'] = options.get('gateway6')
58
56
 
59
57
            if options.get('dns'):
60
58
                interface['dns'] = options['dns']
61
59
 
62
 
            interfaces.append(interface)
 
60
            interface['routes'] = []
 
61
 
 
62
            interfaces[ifname] = interface
63
63
 
64
64
        kwargs = {}
65
65
        if version:
79
79
            'gateway4': '192.0.2.1',
80
80
            'dns': ['192.0.2.2'],
81
81
        }
82
 
        outfiles = self._run_test('redhat', public=interface)
 
82
        outfiles = self._run_test('redhat', eth0=interface)
83
83
        self.assertTrue('ifcfg-eth0' in outfiles)
84
84
        self.assertEqual(outfiles['ifcfg-eth0'], '\n'.join([
85
85
            '# Automatically generated, do not edit',
102
102
            'gateway6': '2001:db8::1',
103
103
            'dns': ['2001:db8::2'],
104
104
        }
105
 
        outfiles = self._run_test('redhat', public=interface)
 
105
        outfiles = self._run_test('redhat', eth0=interface)
106
106
        self.assertTrue('ifcfg-eth0' in outfiles)
107
107
        self.assertEqual(outfiles['ifcfg-eth0'], '\n'.join([
108
108
            '# Automatically generated, do not edit',
125
125
            'gateway4': '192.0.2.1',
126
126
            'dns': ['192.0.2.2'],
127
127
        }
128
 
        outfiles = self._run_test('debian', public=interface)
 
128
        outfiles = self._run_test('debian', eth0=interface)
129
129
        self.assertTrue('interfaces' in outfiles)
130
130
        self.assertEqual(outfiles['interfaces'], '\n'.join([
131
131
            '# Used by ifup(8) and ifdown(8). See the interfaces(5) '
150
150
            'gateway6': '2001:db8::1',
151
151
            'dns': ['2001:db8::2'],
152
152
        }
153
 
        outfiles = self._run_test('debian', public=interface)
 
153
        outfiles = self._run_test('debian', eth0=interface)
154
154
        self.assertTrue('interfaces' in outfiles)
155
155
        self.assertEqual(outfiles['interfaces'], '\n'.join([
156
156
            '# Used by ifup(8) and ifdown(8). See the interfaces(5) '
182
182
            'gateway4': '192.0.2.1',
183
183
            'dns': ['192.0.2.2'],
184
184
        }
185
 
        outfiles = self._run_test('arch', infiles, public=interface,
 
185
        outfiles = self._run_test('arch', infiles, eth0=interface,
186
186
                                  version='legacy')
187
187
        self.assertTrue('/etc/rc.conf' in outfiles)
188
188
        self.assertEqual(outfiles['/etc/rc.conf'], '\n'.join([
206
206
            'gateway6': '2001:db8::1',
207
207
            'dns': ['2001:db8::2'],
208
208
        }
209
 
        outfiles = self._run_test('arch', infiles, public=interface,
 
209
        outfiles = self._run_test('arch', infiles, eth0=interface,
210
210
                                  version='legacy')
211
211
        self.assertTrue('/etc/rc.conf' in outfiles)
212
212
        self.assertEqual(outfiles['/etc/rc.conf'], '\n'.join([
228
228
            'gateway4': '192.0.2.1',
229
229
            'dns': ['192.0.2.2'],
230
230
        }
231
 
        outfiles = self._run_test('arch', infiles, public=interface,
 
231
        outfiles = self._run_test('arch', infiles, eth0=interface,
232
232
                                  version='netcfg')
233
233
        self.assertTrue('/etc/rc.conf' in outfiles)
234
234
        self.assertEqual(outfiles['/etc/rc.conf'], '\n'.join([
257
257
            'gateway6': '2001:db8::1',
258
258
            'dns': ['2001:db8::2'],
259
259
        }
260
 
        outfiles = self._run_test('arch', infiles, public=interface,
 
260
        outfiles = self._run_test('arch', infiles, eth0=interface,
261
261
                                  version='netcfg')
262
262
        self.assertTrue('/etc/rc.conf' in outfiles)
263
263
        self.assertEqual(outfiles['/etc/rc.conf'], '\n'.join([
279
279
            'gateway4': '192.0.2.1',
280
280
            'dns': ['192.0.2.2'],
281
281
        }
282
 
        outfiles = self._run_test('gentoo', public=interface, version='legacy')
 
282
        outfiles = self._run_test('gentoo', eth0=interface, version='legacy')
283
283
        self.assertTrue('net' in outfiles)
284
284
        self.assertEqual(outfiles['net'], '\n'.join([
285
285
            '# Automatically generated, do not edit',
300
300
            'gateway6': '2001:db8::1',
301
301
            'dns': ['2001:db8::2'],
302
302
        }
303
 
        outfiles = self._run_test('gentoo', public=interface, version='legacy')
 
303
        outfiles = self._run_test('gentoo', eth0=interface, version='legacy')
304
304
        self.assertTrue('net' in outfiles)
305
305
        self.assertEqual(outfiles['net'], '\n'.join([
306
306
            '# Automatically generated, do not edit',
321
321
            'gateway4': '192.0.2.1',
322
322
            'dns': ['192.0.2.2'],
323
323
        }
324
 
        outfiles = self._run_test('gentoo', public=interface, version='openrc')
 
324
        outfiles = self._run_test('gentoo', eth0=interface, version='openrc')
325
325
        self.assertTrue('net' in outfiles)
326
326
        self.assertEqual(outfiles['net'], '\n'.join([
327
327
            '# Automatically generated, do not edit',
338
338
            'gateway6': '2001:db8::1',
339
339
            'dns': ['2001:db8::2'],
340
340
        }
341
 
        outfiles = self._run_test('gentoo', public=interface, version='openrc')
 
341
        outfiles = self._run_test('gentoo', eth0=interface, version='openrc')
342
342
        self.assertTrue('net' in outfiles)
343
343
        self.assertEqual(outfiles['net'], '\n'.join([
344
344
            '# Automatically generated, do not edit',
355
355
            'gateway4': '192.0.2.1',
356
356
            'dns': ['192.0.2.2'],
357
357
        }
358
 
        outfiles = self._run_test('suse', public=interface)
 
358
        outfiles = self._run_test('suse', eth0=interface)
359
359
        self.assertTrue('ifcfg-eth0' in outfiles)
360
360
        self.assertEqual(outfiles['ifcfg-eth0'], '\n'.join([
361
361
            "# Automatically generated, do not edit",
373
373
            'gateway6': '2001:db8::1',
374
374
            'dns': ['2001:db8::2'],
375
375
        }
376
 
        outfiles = self._run_test('suse', public=interface)
 
376
        outfiles = self._run_test('suse', eth0=interface)
377
377
        self.assertTrue('ifcfg-eth0' in outfiles)
378
378
        self.assertEqual(outfiles['ifcfg-eth0'], '\n'.join([
379
379
            "# Automatically generated, do not edit",