8784: Fix test for latest firefox.
[arvados.git] / sdk / pam / tests / test_pam_sm.py
1 import arvados_pam
2 import mock
3 from . import mocker
4
5 class PamSMTest(mocker.Mocker):
6     def attempt(self):
7         return arvados_pam.pam_sm_authenticate(self.pamh, 0, self.argv)
8
9     def test_success(self):
10         self.assertEqual(self.pamh.PAM_SUCCESS, self.attempt())
11
12     def test_bad_user(self):
13         self.pamh.get_user = mock.MagicMock(return_value='badusername')
14         self.assertEqual(self.pamh.PAM_AUTH_ERR, self.attempt())
15
16     def test_bad_vm(self):
17         self.argv[2] = 'testvm22.shell'
18         self.assertEqual(self.pamh.PAM_AUTH_ERR, self.attempt())
19
20     def setUp(self):
21         super(PamSMTest, self).setUp()
22         self.pamh = mock.MagicMock()
23         self.pamh.get_user = mock.MagicMock(return_value='active')
24         self.pamh.PAM_SUCCESS = 12345
25         self.pamh.PAM_AUTH_ERR = 54321
26         self.argv = [__file__, 'zzzzz.arvadosapi.com', 'testvm2.shell']