salt/tests/integration/modules/grains.py

112 lines
2.6 KiB
Python
Raw Normal View History

2012-02-14 18:00:35 +00:00
'''
Test the grains module
'''
# Import python libs
import time
2013-06-20 04:45:26 +00:00
import os
# Import salt libs
try:
import integration
except ImportError:
if __name__ == '__main__':
import sys
sys.path.insert(
0, os.path.abspath(
os.path.join(
os.path.dirname(__file__), '../../'
)
)
)
import integration
from salttesting import skipIf
2012-02-14 18:00:35 +00:00
class TestModulesGrains(integration.ModuleCase):
2012-02-14 18:00:35 +00:00
'''
Test the grains module
'''
def test_items(self):
'''
grains.items
'''
opts = self.minion_opts
2012-06-30 20:10:34 +00:00
self.assertEqual(
self.run_function('grains.items')['test_grain'],
opts['grains']['test_grain']
)
2012-02-14 18:00:35 +00:00
def test_item(self):
'''
grains.item
'''
opts = self.minion_opts
2012-06-30 20:10:34 +00:00
self.assertEqual(
self.run_function('grains.item', ['test_grain'])['test_grain'],
2012-06-30 20:10:34 +00:00
opts['grains']['test_grain']
)
2012-02-14 18:00:35 +00:00
def test_ls(self):
'''
grains.ls
'''
2012-05-10 04:39:49 +00:00
check_for = (
'cpuarch',
'cpu_flags',
'cpu_model',
'domain',
'fqdn',
'host',
'kernel',
'kernelrelease',
'localhost',
'mem_total',
'num_cpus',
'os',
'os_family',
2012-05-10 04:39:49 +00:00
'path',
'ps',
'pythonpath',
'pythonversion',
'saltpath',
'saltversion',
'virtual',
)
2012-02-14 18:00:35 +00:00
lsgrains = self.run_function('grains.ls')
2012-05-10 04:39:49 +00:00
for grain_name in check_for:
self.assertTrue(grain_name in lsgrains)
@skipIf(os.environ.get('TRAVIS_PYTHON_VERSION', None) is not None,
'Travis environment can\'t keep up with salt refresh')
2013-05-26 10:11:42 +00:00
def test_set_val(self):
'''
test grains.set_val
'''
self.assertEqual(
self.run_function(
'grains.setval',
['setgrain', 'grainval']),
{'setgrain': 'grainval'})
time.sleep(1)
2013-05-26 10:11:42 +00:00
self.assertTrue(
self.run_function(
'grains.item', ['setgrain']
)
)
2013-05-26 12:11:59 +00:00
def test_get(self):
'''
test grains.get
'''
self.assertEqual(
self.run_function(
'grains.get',
['level1:level2']),
'foo')
2013-05-26 10:11:42 +00:00
if __name__ == '__main__':
from integration import run_tests
run_tests(TestModulesGrains)