示例#1
0
    def _run_test(self, params, expected):
        regex, path = params
        parsed_regex = re.compile(convert_regexp(regex))
        self.assertEqual(bool(parsed_regex.search(path)), expected, 'Incorrectly Parsed regex: %s' %regex)

        aare_obj = AARE(regex, True)
        self.assertEqual(aare_obj.match(path), expected, 'Incorrectly parsed AARE object: %s' % regex)
        if not ('*' in path or '{' in path or '}' in path or '?' in path):
            self.assertEqual(aare_obj.match(AARE(path, False)), expected, 'Incorrectly parsed AARE object: AARE(%s)' % regex)
示例#2
0
文件: file.py 项目: youngker/apparmor
    def validate_edit(self, newpath):
        if self.all_paths:
            raise AppArmorBug('Attemp to edit bare file rule')

        newpath = AARE(
            newpath, True
        )  # might raise AppArmorException if the new path doesn't start with / or a variable
        return newpath.match(self.path)
    def _run_test(self, params, expected):
        regex, path = params
        parsed_regex = re.compile(convert_regexp(regex))
        self.assertEqual(bool(parsed_regex.search(path)), expected,
                         'Incorrectly Parsed regex: %s' % regex)

        aare_obj = AARE(regex, True)
        self.assertEqual(aare_obj.match(path), expected,
                         'Incorrectly parsed AARE object: %s' % regex)
示例#4
0
 def _run_test(self, params, expected):
     regex, is_path, check_for = params
     aare_obj = AARE(regex, is_path)
     self.assertEqual(expected, aare_obj.match(check_for))
示例#5
0
 def _run_test(self, params, expected):
     regex, log_event = params
     aare_obj_1 = AARE(regex, True)
     aare_obj_2 = AARE(log_event, True, log_event=True)
     self.assertEqual(aare_obj_1.match(aare_obj_2), expected)
示例#6
0
 def test_match_invalid_1(self):
     aare_obj = AARE('@{foo}/[a-d]**', True)
     with self.assertRaises(AppArmorBug):
         aare_obj.match(set())
示例#7
0
 def test_match_against_AARE_2(self):
     aare_obj_1 = AARE('@{foo}/[a-d]**', True)
     aare_obj_2 = AARE('@{foo}/*[a-d]*', True)
     self.assertFalse(aare_obj_1.match(aare_obj_2))
     self.assertFalse(aare_obj_1.is_equal(aare_obj_2))
示例#8
0
 def test_multi_usage(self):
     aare_obj = AARE('/foo/*', True)
     self.assertTrue(aare_obj.match('/foo/bar'))
     self.assertFalse(aare_obj.match('/foo/bar/'))
     self.assertTrue(aare_obj.match('/foo/asdf'))