def test_check_username_invalid_username(self): a = SAMLAuthenticator() a._optional_user_add = MagicMock() assert not a._check_username_and_add_user('bluedata/') a._optional_user_add.assert_not_called()
def test_create_system_users_option(self): a = SAMLAuthenticator() a.create_system_users = False a._optional_user_add = MagicMock() assert a._check_username_and_add_user('bluedata') a._optional_user_add.assert_not_called()
def test_create_existing_user(self, mock_pwd, mock_subprocess): mock_pwd.getpwnam.return_value = True a = SAMLAuthenticator() assert a._optional_user_add('Bluedata') mock_pwd.getpwnam.assert_called_once_with('Bluedata') mock_subprocess.call.assert_not_called()
def test_create_user_fails(self, mock_pwd, mock_subprocess): mock_pwd.getpwnam.side_effect = KeyError('Bad username') mock_subprocess.call.return_value = 1 a = SAMLAuthenticator() assert not a._optional_user_add('Bluedata') mock_pwd.getpwnam.assert_called_once_with('Bluedata') mock_subprocess.call.assert_called_once_with(['useradd', 'Bluedata'])
def test_create_user_alternate_binary_existing_user( self, mock_pwd, mock_subprocess): mock_pwd.getpwnam.return_value = True binary_value = 'test_binary' a = SAMLAuthenticator() a.create_system_user_binary = binary_value assert a._optional_user_add('Bluedata') mock_pwd.getpwnam.assert_called_once_with('Bluedata') mock_subprocess.call.assert_not_called()
def test_create_user_alternate_binary(self, mock_pwd, mock_subprocess): mock_pwd.getpwnam.side_effect = KeyError('Bad username') mock_subprocess.call.return_value = 0 binary_value = 'test_binary' a = SAMLAuthenticator() a.create_system_user_binary = binary_value assert a._optional_user_add('Bluedata') mock_pwd.getpwnam.assert_called_once_with('Bluedata') mock_subprocess.call.assert_called_once_with( [binary_value, 'Bluedata'])
def test_check_username_valid_username_no_white_lists(self): a = SAMLAuthenticator() a._optional_user_add = MagicMock() a._optional_user_add.return_value = True a.blacklist = {'bluedata'} assert not a._check_username_and_add_user('bluedata') a._optional_user_add.assert_not_called() a.blacklist = {'not_bluedata'} assert a._check_username_and_add_user('bluedata') a._optional_user_add.assert_called_once_with('bluedata')