salt/tests/unit/modules/test_pam.py

42 lines
1.1 KiB
Python
Raw Normal View History

2015-03-25 08:16:11 +00:00
# -*- coding: utf-8 -*-
'''
:codeauthor: Jayesh Kariya <jayeshk@saltstack.com>
2015-03-25 08:16:11 +00:00
'''
# Import Python Libs
from __future__ import absolute_import, unicode_literals, print_function
import sys
2015-03-25 08:16:11 +00:00
# Import Salt Testing Libs
from tests.support.unit import TestCase, skipIf
from tests.support.mock import (
2015-03-25 08:16:11 +00:00
patch,
mock_open,
NO_MOCK,
NO_MOCK_REASON
)
# Import Salt Libs
import salt.modules.pam as pam
2015-03-25 08:16:11 +00:00
MOCK_FILE = 'ok ok ignore '
@skipIf(NO_MOCK, NO_MOCK_REASON)
@skipIf(sys.platform.startswith('openbsd'), 'OpenBSD does not use PAM')
2015-03-25 08:16:11 +00:00
class PamTestCase(TestCase):
'''
Test cases for salt.modules.pam
'''
# 'read_file' function tests: 1
def test_read_file(self):
'''
Test if the parsing function works
'''
with patch('os.path.exists', return_value=True), \
patch('salt.utils.files.fopen', mock_open(read_data=MOCK_FILE)):
2015-03-25 08:16:11 +00:00
self.assertListEqual(pam.read_file('/etc/pam.d/login'),
[{'arguments': [], 'control_flag': 'ok',
'interface': 'ok', 'module': 'ignore'}])