2012-10-06 00:05:04 +00:00
|
|
|
# -*- coding: utf-8 -*-
|
2012-12-11 10:23:37 +00:00
|
|
|
'''
|
|
|
|
:codeauthor: :email:`Pedro Algarvio (pedro@algarvio.me)`
|
2013-09-16 16:24:00 +00:00
|
|
|
|
|
|
|
|
|
|
|
tests.integration.states.match
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
2012-12-11 10:23:37 +00:00
|
|
|
'''
|
2012-10-06 00:05:04 +00:00
|
|
|
|
2012-11-18 18:57:10 +00:00
|
|
|
# Import python libs
|
2014-11-21 19:05:13 +00:00
|
|
|
from __future__ import absolute_import
|
2012-10-06 00:05:04 +00:00
|
|
|
import os
|
2012-11-18 18:57:10 +00:00
|
|
|
|
2013-06-24 22:53:59 +00:00
|
|
|
# Import Salt Testing libs
|
|
|
|
from salttesting import skipIf
|
2013-06-27 12:43:26 +00:00
|
|
|
from salttesting.helpers import ensure_in_syspath
|
|
|
|
ensure_in_syspath('../../')
|
|
|
|
|
|
|
|
# Import salt libs
|
|
|
|
import integration
|
|
|
|
import salt.utils
|
2012-12-19 01:39:16 +00:00
|
|
|
|
2012-10-06 00:05:04 +00:00
|
|
|
STATE_DIR = os.path.join(integration.FILES, 'file', 'base')
|
|
|
|
|
2012-11-18 18:57:10 +00:00
|
|
|
|
2012-10-06 00:05:04 +00:00
|
|
|
class StateMatchTest(integration.ModuleCase):
|
|
|
|
'''
|
|
|
|
Validate the file state
|
|
|
|
'''
|
|
|
|
|
2013-04-30 17:32:21 +00:00
|
|
|
@skipIf(os.geteuid() != 0, 'you must be root to run this test')
|
2012-10-06 00:05:04 +00:00
|
|
|
def test_issue_2167_ipcidr_no_AttributeError(self):
|
|
|
|
subnets = self.run_function('network.subnets')
|
2012-12-19 01:39:16 +00:00
|
|
|
self.assertTrue(len(subnets) > 0)
|
2012-10-06 00:05:04 +00:00
|
|
|
top_filename = 'issue-2167-ipcidr-match.sls'
|
|
|
|
top_file = os.path.join(STATE_DIR, top_filename)
|
|
|
|
try:
|
2012-11-18 18:57:10 +00:00
|
|
|
salt.utils.fopen(top_file, 'w').write(
|
2012-10-06 00:05:04 +00:00
|
|
|
'base:\n'
|
|
|
|
' {0}:\n'
|
|
|
|
' - match: ipcidr\n'
|
|
|
|
' - test\n'.format(subnets[0])
|
|
|
|
)
|
|
|
|
ret = self.run_function('state.top', [top_filename])
|
|
|
|
self.assertNotIn(
|
2012-11-18 18:57:10 +00:00
|
|
|
'AttributeError: \'Matcher\' object has no attribute '
|
|
|
|
'\'functions\'',
|
2012-10-06 00:05:04 +00:00
|
|
|
ret
|
|
|
|
)
|
|
|
|
finally:
|
|
|
|
os.remove(top_file)
|
2013-06-24 22:53:59 +00:00
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
from integration import run_tests
|
|
|
|
run_tests(StateMatchTest)
|