def test_list_products(self): ''' List products test. ''' for filename, test_data in { 'zypper-products-sle12sp1.xml': { 'name': [ 'SLES', 'SLES', 'SUSE-Manager-Proxy', 'SUSE-Manager-Server', 'sle-manager-tools-beta', 'sle-manager-tools-beta-broken-eol', 'sle-manager-tools-beta-no-eol' ], 'vendor': 'SUSE LLC <https://www.suse.com/>', 'release': ['0', '0', '0', '0', '0', '0', '0'], 'productline': [None, None, None, None, None, None, 'sles'], 'eol_t': [ None, 0, 1509408000, 1522454400, 1522454400, 1730332800, 1730332800 ], 'isbase': [False, False, False, False, False, False, True], 'installed': [False, False, False, False, False, False, True], 'registerrelease': [None, None, None, None, None, None, '123'], }, 'zypper-products-sle11sp3.xml': { 'name': [ 'SUSE-Manager-Server', 'SUSE-Manager-Server', 'SUSE-Manager-Server-Broken-EOL', 'SUSE_SLES', 'SUSE_SLES', 'SUSE_SLES', 'SUSE_SLES-SP4-migration' ], 'vendor': 'SUSE LINUX Products GmbH, Nuernberg, Germany', 'release': ['1.138', '1.2', '1.2', '1.2', '1.201', '1.201', '1.4'], 'productline': [None, None, None, None, None, 'manager', 'manager'], 'eol_t': [None, 0, 0, 0, 0, 0, 0], 'isbase': [False, False, False, False, False, True, True], 'installed': [False, False, False, False, False, True, True], 'registerrelease': [None, None, None, None, None, None, "42"], } }.items(): ref_out = {'retcode': 0, 'stdout': get_test_data(filename)} with patch.dict(zypper.__salt__, {'cmd.run_all': MagicMock(return_value=ref_out)}): products = zypper.list_products() self.assertEqual(len(products), 7) self.assertIn(test_data['vendor'], [product['vendor'] for product in products]) for kwd in [ 'name', 'isbase', 'installed', 'release', 'productline', 'eol_t', 'registerrelease' ]: self.assertEqual( test_data[kwd], sorted([prod.get(kwd) for prod in products]))
def test_list_products(self): ''' List products test. ''' ref_out = { 'retcode': 0, 'stdout': get_test_data('zypper-products.xml') } with patch.dict(zypper.__salt__, {'cmd.run_all': MagicMock(return_value=ref_out)}): products = zypper.list_products() self.assertEqual(len(products), 5) self.assertEqual([ 'SLES', 'SLES', 'SUSE-Manager-Proxy', 'SUSE-Manager-Server', 'sle-manager-tools-beta' ], sorted([prod['name'] for prod in products])) self.assertIn('SUSE LLC <https://www.suse.com/>', [product['vendor'] for product in products]) self.assertEqual([False, False, False, False, True], sorted( [product['isbase'] for product in products])) self.assertEqual( [False, False, False, False, True], sorted([product['installed'] for product in products])) self.assertEqual(['0', '0', '0', '0', '0'], sorted( [product['release'] for product in products])) self.assertEqual( [False, False, False, False, u'sles'], sorted([product['productline'] for product in products])) self.assertEqual( [1509408000, 1522454400, 1522454400, 1730332800, 1730332800], sorted([product['eol_t'] for product in products]))
def test_list_products(self): ''' List products test. ''' for filename, test_data in { 'zypper-products-sle12sp1.xml': { 'name': ['SLES', 'SLES', 'SUSE-Manager-Proxy', 'SUSE-Manager-Server', 'sle-manager-tools-beta', 'sle-manager-tools-beta-broken-eol', 'sle-manager-tools-beta-no-eol'], 'vendor': 'SUSE LLC <https://www.suse.com/>', 'release': ['0', '0', '0', '0', '0', '0', '0'], 'productline': [None, None, None, None, None, None, 'sles'], 'eol_t': [None, 0, 1509408000, 1522454400, 1522454400, 1730332800, 1730332800], 'isbase': [False, False, False, False, False, False, True], 'installed': [False, False, False, False, False, False, True], 'registerrelease': [None, None, None, None, None, None, '123'], }, 'zypper-products-sle11sp3.xml': { 'name': ['SUSE-Manager-Server', 'SUSE-Manager-Server', 'SUSE-Manager-Server-Broken-EOL', 'SUSE_SLES', 'SUSE_SLES', 'SUSE_SLES', 'SUSE_SLES-SP4-migration'], 'vendor': 'SUSE LINUX Products GmbH, Nuernberg, Germany', 'release': ['1.138', '1.2', '1.2', '1.2', '1.201', '1.201', '1.4'], 'productline': [None, None, None, None, None, 'manager', 'manager'], 'eol_t': [None, 0, 0, 0, 0, 0, 0], 'isbase': [False, False, False, False, False, True, True], 'installed': [False, False, False, False, False, True, True], 'registerrelease': [None, None, None, None, None, None, "42"], }}.items(): ref_out = { 'retcode': 0, 'stdout': get_test_data(filename) } with patch.dict(zypper.__salt__, {'cmd.run_all': MagicMock(return_value=ref_out)}): products = zypper.list_products() self.assertEqual(len(products), 7) self.assertIn(test_data['vendor'], [product['vendor'] for product in products]) for kwd in ['name', 'isbase', 'installed', 'release', 'productline', 'eol_t', 'registerrelease']: if six.PY3: self.assertCountEqual(test_data[kwd], [prod.get(kwd) for prod in products]) else: self.assertEqual(test_data[kwd], sorted([prod.get(kwd) for prod in products]))