123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- # -*- coding: utf-8 -*-
- """
- :codeauthor: Pedro Algarvio (pedro@algarvio.me)
- tests.integration.states.match
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- """
- from __future__ import absolute_import, print_function, unicode_literals
- import os
- import pytest
- import salt.utils.files
- import salt.utils.stringutils
- from tests.support.case import ModuleCase
- from tests.support.runtests import RUNTIME_VARS
- class StateMatchTest(ModuleCase):
- """
- Validate the file state
- """
- @pytest.mark.skip_if_not_root
- @pytest.mark.slow_test(seconds=10) # Test takes >5 and <=10 seconds
- def test_issue_2167_ipcidr_no_AttributeError(self):
- subnets = self.run_function("network.subnets")
- self.assertTrue(len(subnets) > 0)
- top_filename = "issue-2167-ipcidr-match.sls"
- top_file = os.path.join(RUNTIME_VARS.BASE_FILES, top_filename)
- try:
- with salt.utils.files.fopen(top_file, "w") as fp_:
- fp_.write(
- salt.utils.stringutils.to_str(
- "base:\n"
- " {0}:\n"
- " - match: ipcidr\n"
- " - test\n".format(subnets[0])
- )
- )
- ret = self.run_function("state.top", [top_filename])
- self.assertNotIn(
- "AttributeError: 'Matcher' object has no attribute " "'functions'", ret
- )
- finally:
- os.remove(top_file)
|