예제 #1
0
 def test_write_grub_config_no_grub_settings_file(self):
     grubcfg = {
         'probe_additional_os': True,
         'terminal': 'unmodified',
     }
     new_params = []
     install_grub.write_grub_config(self.target, grubcfg, self.grubconf,
                                    new_params)
     self.assertTrue(os.path.exists(self.target_grubdefault))
     self.assertFalse(os.path.exists(self.target_grubconf))
예제 #2
0
    def test_write_grub_config_terminal_unmodified(self):
        grubcfg = {'terminal': 'unmodified'}
        new_params = ['foo=bar', 'wark=1']
        expected_default = "\n".join(
            ['GRUB_CMDLINE_LINUX_DEFAULT="foo=bar wark=1"', ''])
        expected_curtin = "\n".join([
            ("# Curtin disable grub os prober that might find "
             "other OS installs."), 'GRUB_DISABLE_OS_PROBER="true"', ''
        ])

        install_grub.write_grub_config(self.target, grubcfg, self.grubconf,
                                       new_params)

        self._verify_expected(expected_default, expected_curtin)
예제 #3
0
    def test_write_grub_config_enable_probe(self):
        grubcfg = {'probe_additional_os': True}  # DISABLE_OS_PROBER=0, default
        new_params = ['foo=bar', 'wark=1']
        expected_default = "\n".join(
            ['GRUB_CMDLINE_LINUX_DEFAULT="foo=bar wark=1"', ''])
        expected_curtin = "\n".join([
            '# Curtin configured GRUB_TERMINAL value',
            'GRUB_TERMINAL="console"'
        ])

        install_grub.write_grub_config(self.target, grubcfg, self.grubconf,
                                       new_params)

        self._verify_expected(expected_default, expected_curtin)
예제 #4
0
    def test_write_grub_config_no_replace(self):
        grubcfg = {'replace_linux_default': False}
        new_params = ['foo=bar', 'wark=1']
        expected_default = "\n".join([])
        expected_curtin = "\n".join([
            ("# Curtin disable grub os prober that might find "
             "other OS installs."), 'GRUB_DISABLE_OS_PROBER="true"',
            '# Curtin configured GRUB_TERMINAL value',
            'GRUB_TERMINAL="console"'
        ])

        install_grub.write_grub_config(self.target, grubcfg, self.grubconf,
                                       new_params)

        self._verify_expected(expected_default, expected_curtin)
예제 #5
0
    def test_write_grub_config_disable_probe(self):
        grubcfg = {'probe_additional_os': False}  # DISABLE_OS_PROBER=1
        new_params = ['foo=bar', 'wark=1']
        expected_default = "\n".join(
            ['GRUB_CMDLINE_LINUX_DEFAULT="foo=bar wark=1"', ''])
        expected_curtin = "\n".join([
            ("# Curtin disable grub os prober that might find "
             "other OS installs."), 'GRUB_DISABLE_OS_PROBER="true"',
            '# Curtin configured GRUB_TERMINAL value',
            'GRUB_TERMINAL="console"'
        ])

        install_grub.write_grub_config(self.target, grubcfg, self.grubconf,
                                       new_params)

        self._verify_expected(expected_default, expected_curtin)
예제 #6
0
 def test_write_grub_config_invalid_terminal(self):
     grubcfg = {'terminal': ['color-tv']}
     new_params = ['foo=bar', 'wark=1']
     with self.assertRaises(ValueError):
         install_grub.write_grub_config(self.target, grubcfg, self.grubconf,
                                        new_params)