コード例 #1
0
 def test_without_params(self):
     os.environ.clear()
     sys.argv = ['prog']
     with self.assertRaises(KeyError) as e:
         parse_params()
     self.assertEqual(str(e.exception.args), "('CONFIG',)",
                      'no collector config file provided!')
コード例 #2
0
 def test_with_cli_params_2(self):
     os.environ.clear()
     sys.argv = ['prog', '--port', '1234', '-i', 'inventory.some.url']
     parse_params()
     self.assertEqual(os.getenv('PORT'), '1234', 'The port was not set correctly!')
     self.assertEqual(os.getenv('DEBUG'), '0', 'Debug was not set correctly')
     self.assertEqual(os.getenv('INVENTORY'), 'inventory.some.url', 'Inventory was not set correctly')
コード例 #3
0
 def test_with_bogus_options(self):
     os.environ.clear()
     sys.argv = ['prog', '-z', 'foo', '-a', 'bar', '-w', 'bar']
     with self.assertRaises(SystemExit) as se:
         parse_params()
     self.assertEqual(
         se.exception.code, 2,
         'PORT or INVENTORY are not set properly in ENV or command line!')
コード例 #4
0
 def test_without_params(self):
     os.environ.clear()
     sys.argv = ['prog']
     with self.assertRaises(SystemExit) as se:
         parse_params()
     self.assertEqual(
         se.exception.code, 0,
         'PORT, USER or PASSWORD are not set in ENV or command line!')
コード例 #5
0
 def test_with_cli_and_env_params(self):
     sys.argv = ['prog', '--port', '1234', "--debug", '-i', 'inventory.some.url']
     os.environ['PORT'] = '1123'
     os.environ['INVENTORY'] = 'inventory.wedontwantthis.url'
     parse_params()
     # cli params preferred
     self.assertEqual(os.getenv('PORT'), '1234', 'The port was not set correctly!')
     self.assertEqual(os.getenv('INVENTORY'), 'inventory.some.url', 'Inventory was not set correctly')
コード例 #6
0
 def test_with_cli_params_1(self):
     sys.argv = [
         'prog', '-u', 'testuser', '-p', 'testpw31!', '-o', '1234', '-d'
     ]
     parse_params()
     self.assertEqual(os.getenv('USER'), 'testuser',
                      'The user was not set correctly!')
     self.assertEqual(os.getenv('PASSWORD'), 'testpw31!',
                      'The password was not set correctly!')
     self.assertEqual(os.getenv('PORT'), '1234',
                      'The port was not set correctly!')
     self.assertEqual(os.getenv('DEBUG'), '1',
                      'Debug was not set correctly!')
コード例 #7
0
 def test_with_cli_params_1(self):
     sys.argv = [
         'prog', '-o', '1234', '-d', '-i', 'inventory.some.url', '-m',
         'tests/collector_config.yaml'
     ]
     parse_params()
     self.assertEqual(os.getenv('PORT'), '1234',
                      'The port was not set correctly!')
     self.assertEqual(os.getenv('DEBUG'), '1',
                      'Debug was not set correctly!')
     self.assertEqual(os.getenv('INVENTORY'), 'inventory.some.url',
                      'Inventory was not set correctly')
     self.assertEqual(os.getenv('CONFIG'), 'tests/collector_config.yaml',
                      'Config was not set')
コード例 #8
0
 def test_with_cli_params_1(self):
     sys.argv = [
         'prog', '-o', '1234', '-i', 'inventory.some.url', '-m',
         'tests/collector_config.yaml', '-t', 'testhost.test', '-d'
     ]
     parse_params(logger)
     self.assertEqual(os.getenv('PORT'), '1234',
                      'The port was not set correctly!')
     self.assertEqual(os.getenv('INVENTORY'), 'inventory.some.url',
                      'Inventory was not set correctly')
     self.assertEqual(os.getenv('CONFIG'), 'tests/collector_config.yaml',
                      'Config was not set')
     self.assertEqual(os.getenv('TARGET'), 'testhost.test',
                      'Target was not set')
     self.assertEqual(logger.level, 10)
コード例 #9
0
 def test_with_cli_params_2(self):
     os.environ.clear()
     sys.argv = [
         'prog', '--user', 'testuser', '--password', 'testpw31!', '--port',
         '1234'
     ]
     parse_params()
     self.assertEqual(os.getenv('USER'), 'testuser',
                      'The user was not set correctly!')
     self.assertEqual(os.getenv('PASSWORD'), 'testpw31!',
                      'The password was not set correctly!')
     self.assertEqual(os.getenv('PORT'), '1234',
                      'The port was not set correctly!')
     self.assertEqual(os.getenv('DEBUG'), '0',
                      'Debug was not set correctly')
コード例 #10
0
 def test_with_cli_and_env_params(self):
     sys.argv = [
         'prog', '--user', 'cli_testuser', '--password', 'testpw31!',
         '--port', '1234', "--debug"
     ]
     os.environ['USER'] = '******'
     os.environ['PASSWORD'] = '******'
     os.environ['PORT'] = '1123'
     parse_params()
     # cli params preferred
     self.assertEqual(os.getenv('USER'), 'cli_testuser',
                      'The user was not set correctly!')
     self.assertEqual(os.getenv('PASSWORD'), 'testpw31!',
                      'The password was not set correctly!')
     self.assertEqual(os.getenv('PORT'), '1234',
                      'The port was not set correctly!')
コード例 #11
0
 def test_with_no_collector(self):
     sys.argv = [
         'prog', '--port', '1234', "--debug", '-i', 'inventory.some.url',
         '-m', 'tests/collector_config.yaml', '-t', 'testhost.test'
     ]
     options = parse_params()
     self.assertEqual(options.collectors, default_collectors(),
                      'Default collector list does not match the default')
コード例 #12
0
 def test_with_cli_params_2(self):
     os.environ.clear()
     sys.argv = [
         'prog', '--port', '1234', '-i', 'inventory.some.url', '-m',
         'tests/collector_config.yaml', '-t', 'testhost.test'
     ]
     parse_params()
     self.assertEqual(os.getenv('PORT'), '1234',
                      'The port was not set correctly!')
     self.assertEqual(os.getenv('DEBUG'), '0',
                      'Debug was not set correctly')
     self.assertEqual(os.getenv('INVENTORY'), 'inventory.some.url',
                      'Inventory was not set correctly')
     self.assertEqual(os.getenv('CONFIG'), 'tests/collector_config.yaml',
                      'Config was not set')
     self.assertEqual(os.getenv('TARGET'), 'testhost.test',
                      'Target was not set')
コード例 #13
0
 def test_with_one_collector(self):
     sys.argv = [
         'prog', '--port', '1234', '-i', 'inventory.some.url', '-c',
         'VMStatsCollector', '-m', 'collector_config.yaml'
     ]
     options = parse_params()
     self.assertEqual(
         options.collectors, ['VMStatsCollector'],
         'Collector list does not match given single collector')
コード例 #14
0
 def test_with_multiple_collector(self):
     sys.argv = [
         'prog', '--port', '1234', '-i', 'inventory.some.url', '-c',
         'VMStatsCollector', '-m', 'tests/collector_config.yaml', '-c',
         'VMPropertiesCollector', '-t', 'testhost.test'
     ]
     options = parse_params()
     self.assertEqual(
         options.collectors, ['VMStatsCollector', 'VMPropertiesCollector'],
         'Collector list does not match given multiple collectors')
コード例 #15
0
 def test_with_cli_and_env_params(self):
     sys.argv = [
         'prog', '--port', '1234', "--debug", '-i', 'inventory.some.url',
         '-m', 'tests/collector_config.yaml', '-t', 'testhost.test'
     ]
     os.environ['PORT'] = '1123'
     os.environ['INVENTORY'] = 'inventory.wedontwantthis.url'
     os.environ['CONFIG'] = 'tests/other_config.yaml'
     os.environ['TARGET'] = 'Othertesthost.test'
     parse_params()
     # cli params preferred
     self.assertEqual(os.getenv('PORT'), '1234',
                      'The port was not set correctly!')
     self.assertEqual(os.getenv('INVENTORY'), 'inventory.some.url',
                      'Inventory was not set correctly')
     self.assertEqual(os.getenv('CONFIG'), 'tests/collector_config.yaml',
                      'Config was not set')
     self.assertEqual(os.getenv('TARGET'), 'testhost.test',
                      'Target was not set')
コード例 #16
0
 def test_without_params(self):
     os.environ.clear()
     sys.argv = ['prog']
     with self.assertRaises(SystemExit) as se:
         parse_params()
     self.assertEqual(se.exception.code, 0, 'PORT or INVENTORY are not set properly in ENV or command line!')