~jameinel/maas/land-kernel-opts-in-trunk

« back to all changes in this revision

Viewing changes to src/maasserver/tests/test_api.py

  • Committer: John Arbash Meinel
  • Date: 2012-11-08 06:34:48 UTC
  • mfrom: (1264.2.27 1.2)
  • Revision ID: john@arbash-meinel.com-20121108063448-8yaj5b3nzhum9wfj
Merge 1.2 into trunk, resolve conflicts.

Show diffs side-by-side

added added

removed removed

Lines of Context:
3137
3137
            % (invalid,))
3138
3138
        self.assertFalse(Tag.objects.filter(name=invalid).exists())
3139
3139
 
 
3140
    def test_POST_new_kernel_opts(self):
 
3141
        self.become_admin()
 
3142
        name = factory.getRandomString()
 
3143
        definition = '//node'
 
3144
        comment = factory.getRandomString()
 
3145
        kernel_opts = factory.getRandomString()
 
3146
        response = self.client.post(
 
3147
            self.get_uri('tags/'),
 
3148
            {
 
3149
                'op': 'new',
 
3150
                'name': name,
 
3151
                'comment': comment,
 
3152
                'definition': definition,
 
3153
                'kernel_opts': kernel_opts,
 
3154
            })
 
3155
        self.assertEqual(httplib.OK, response.status_code)
 
3156
        parsed_result = json.loads(response.content)
 
3157
        self.assertEqual(name, parsed_result['name'])
 
3158
        self.assertEqual(comment, parsed_result['comment'])
 
3159
        self.assertEqual(definition, parsed_result['definition'])
 
3160
        self.assertEqual(kernel_opts, parsed_result['kernel_opts'])
 
3161
        self.assertEqual(
 
3162
            kernel_opts, Tag.objects.filter(name=name)[0].kernel_opts)
 
3163
 
3140
3164
    def test_POST_new_populates_nodes(self):
3141
3165
        self.become_admin()
3142
3166
        node1 = factory.make_node()
3500
3524
        kernel_params = KernelParameters(**self.get_pxeconfig(params))
3501
3525
        self.assertEqual(params["local"], kernel_params.fs_host)
3502
3526
 
 
3527
    def test_pxeconfig_returns_extra_kernel_options(self):
 
3528
        node = factory.make_node()
 
3529
        kernel_opts = factory.getRandomString()
 
3530
        Config.objects.set_config('kernel_opts', kernel_opts)
 
3531
        mac = factory.make_mac_address(node=node)
 
3532
        params = self.get_default_params()
 
3533
        params['mac'] = mac.mac_address
 
3534
        pxe_config = self.get_pxeconfig(params)
 
3535
        self.assertEqual(kernel_opts, pxe_config['extra_opts'])
 
3536
 
 
3537
    def test_pxeconfig_returns_None_for_extra_kernel_opts(self):
 
3538
        mac = factory.make_mac_address()
 
3539
        params = self.get_default_params()
 
3540
        params['mac'] = mac.mac_address
 
3541
        pxe_config = self.get_pxeconfig(params)
 
3542
        self.assertEqual(None, pxe_config['extra_opts'])
 
3543
 
3503
3544
 
3504
3545
class TestNodeGroupsAPI(APIv10TestMixin, MultipleUsersScenarios, TestCase):
3505
3546
    scenarios = [