class TestLvmParser(CiTestCase): def setUp(self): super(TestLvmParser, self).setUp() self.probe_data = _get_data('probert_storage_lvm.json') self.lvmp = LvmParser(self.probe_data) def test_lvm_parser(self): """ LvmParser 'class_data' on instance matches input. """ self.assertDictEqual(self.probe_data['lvm'], self.lvmp.class_data) def test_lvm_parser_blockdev_data(self): """ LvmParser has blockdev_data attr matches input. """ self.assertDictEqual(self.probe_data['blockdev'], self.lvmp.blockdev_data) def test_lvm_parser_lvm_partition_asdict(self): """ LvmParser returns expected dict for known lvm partition.""" lv_name = "ubuntu-vg/my-storage" lv_config = self.lvmp.class_data['logical_volumes'][lv_name] expected_dict = { 'type': 'lvm_partition', 'name': 'my-storage', 'id': 'lvm-partition-my-storage', 'size': '1073741824B', 'volgroup': 'lvm-volgroup-ubuntu-vg', } self.assertDictEqual( expected_dict, self.lvmp.lvm_partition_asdict(lv_name, lv_config)) def test_lvm_parser_lvm_volgroup_asdict(self): """ LvmParser returns expected dict for known lvm volgroup.""" vg_name = "vg1" lv_config = self.lvmp.class_data['volume_groups'][vg_name] expected_dict = { 'type': 'lvm_volgroup', 'name': 'vg1', 'id': 'lvm-volgroup-vg1', 'devices': ['partition-vda5', 'partition-vda6'], } self.assertDictEqual(expected_dict, self.lvmp.lvm_volgroup_asdict(vg_name, lv_config)) @skipUnlessJsonSchema() def test_lvm_parser_parses_all_lvs_vgs(self): """ LvmParser returns expected dicts for known lvm probe data.""" configs, errors = self.lvmp.parse() self.assertEqual(5, len(configs)) self.assertEqual(0, len(errors))
def setUp(self): super(TestLvmParser, self).setUp() self.probe_data = _get_data('probert_storage_lvm.json') self.lvmp = LvmParser(self.probe_data)