Beispiel #1
0
 def parse_grub(self):
     LOG.debug('--- Parse grub settings ---')
     grub = objects.Grub()
     LOG.debug('Appending kernel parameters: %s',
               self.data['ks_meta']['pm_data']['kernel_params'])
     grub.append_kernel_params(
         self.data['ks_meta']['pm_data']['kernel_params'])
     if 'centos' in self.data['profile'].lower() and \
             not self.data['ks_meta'].get('kernel_lt'):
         LOG.debug('Prefered kernel version is 2.6')
         grub.kernel_regexp = r'^vmlinuz-2\.6.*'
         grub.initrd_regexp = r'^initramfs-2\.6.*'
     return grub
#    License for the specific language governing permissions and limitations
#    under the License.
import mock
import requests_mock
import unittest2

from fuel_agent.drivers import simple
from fuel_agent import objects
from fuel_agent.tests import base


@mock.patch.multiple(
    simple.NailgunSimpleDriver,
    parse_operating_system=lambda x: objects.OperatingSystem(None, None),
    parse_image_meta=lambda x: {},
    parse_grub=lambda x: objects.Grub(),
    parse_configdrive_scheme=lambda x: objects.ConfigDriveScheme(),
    parse_image_scheme=lambda x: objects.ImageScheme())
class TestObjectDeserialization(unittest2.TestCase):
    def test_driver_always_has_correct_objects(self):
        driver = simple.NailgunSimpleDriver({})
        assert isinstance(driver.partition_scheme, objects.PartitionScheme)

    def test_lv_data_is_loaded(self):
        lv_data = {
            'partitioning': {
                'lvs': [
                    {
                        'name': 'lv-name',
                        'size': 12345,
                        'vgname': 'vg-name',