mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Don't test modules that aren't present.
Also account for path difference in sleep in different distributions.
This commit is contained in:
parent
9e0b7ee629
commit
6f09b41eb5
1 changed files with 14 additions and 1 deletions
|
@ -14,6 +14,15 @@ try:
|
|||
except:
|
||||
import simplejson as json
|
||||
|
||||
from nose.plugins.skip import SkipTest
|
||||
|
||||
def get_binary(name):
|
||||
for directory in os.environ["PATH"].split(os.pathsep):
|
||||
path = os.path.join(directory, name)
|
||||
if os.path.isfile(path) and os.access(path, os.X_OK):
|
||||
return path
|
||||
return None
|
||||
|
||||
class TestRunner(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
|
@ -73,6 +82,8 @@ class TestRunner(unittest.TestCase):
|
|||
assert "ping" in result
|
||||
|
||||
def test_facter(self):
|
||||
if not get_binary("facter"):
|
||||
raise SkipTest
|
||||
result = self._run('facter',[])
|
||||
assert "hostname" in result
|
||||
|
||||
|
@ -172,7 +183,7 @@ class TestRunner(unittest.TestCase):
|
|||
def test_async(self):
|
||||
# test async launch and job status
|
||||
# of any particular module
|
||||
result = self._run('command', [ "/bin/sleep", "3" ], background=20)
|
||||
result = self._run('command', [ get_binary("sleep"), "3" ], background=20)
|
||||
assert 'ansible_job_id' in result
|
||||
assert 'started' in result
|
||||
jid = result['ansible_job_id']
|
||||
|
@ -197,6 +208,8 @@ class TestRunner(unittest.TestCase):
|
|||
assert open(input).read() == open(output).read()
|
||||
|
||||
def test_yum(self):
|
||||
if not get_binary("yum"):
|
||||
raise SkipTest
|
||||
result = self._run('yum', [ "list=repos" ])
|
||||
assert 'failed' not in result
|
||||
|
||||
|
|
Loading…
Reference in a new issue