示例#1
0
 def test_no_nesting(self):
     """Test resolving an alias with no nested aliases."""
     data = "Cmnd_Alias SECONDCMDS=/path/to/second/cmd"
     mopen = self.get_mock_open(data)
     with mock.patch(self.open_patch_id, mopen) as _:
         sudoobj = Sudoers(path=self.fake_path)
         res = sudoobj._resolve_aliases("Cmnd_Alias", "SECONDCMDS")
         self.assertEqual(res, ['/path/to/second/cmd'])
示例#2
0
 def test_single_nesting(self):
     """Test resolving an alias with single level of nested aliases."""
     data = """
         Cmnd_Alias CMDALIAS=FIRSTCMDS, SECONDCMDS
         Cmnd_Alias FIRSTCMDS=/path/to/first/cmd,/path/to/first/cmd2
         Cmnd_Alias SECONDCMDS=/path/to/second/cmd
     """
     mopen = self.get_mock_open(data)
     with mock.patch(self.open_patch_id, mopen) as _:
         sudoobj = Sudoers(path=self.fake_path)
         res1 = sudoobj._resolve_aliases("Cmnd_Alias", "CMDALIAS")
         res2 = sudoobj._resolve_aliases("Cmnd_Alias", "FIRSTCMDS")
         res3 = sudoobj._resolve_aliases("Cmnd_Alias", "SECONDCMDS")
         self.assertEqual(res1, [
             '/path/to/first/cmd', '/path/to/first/cmd2',
             '/path/to/second/cmd'
         ])
         self.assertEqual(res2,
                          ['/path/to/first/cmd', '/path/to/first/cmd2'])
         self.assertEqual(res3, ['/path/to/second/cmd'])