"""Lambda test module.""" import pytest from src import app as index @pytest.fixture() def patch_iam_client(iam_client, monkeypatch): """Patch the global IAM client with a mocked one.""" monkeypatch.setattr(index, 'client', iam_client) return iam_client def test_list_access_keys_exist(patch_iam_client, sample_data_for_user_access_keys): # noqa: E501 """Test to check get_access_keys function.""" result = index.get_access_keys('user1') assert result[0]['UserName'] == 'user1' def test_list_access_keys_nonexistent(patch_iam_client, sample_data_for_user_profile): # noqa: E501 """Test to check get_access_keys function.""" result = index.get_access_keys('user2') assert result == [] def test_delete_user_login_profile(patch_iam_client, sample_data_for_user_profile): # noqa: E501 """Test to check delete_user_login_profile function.""" index.delete_user_login_profile('user2') with pytest.raises(patch_iam_client.exceptions.NoSuchEntityException): patch_iam_client.get_login_profile(UserName='user2') def test_add_deactivated_tag(patch_iam_client, sample_data_for_user_to_tag): """Test to check add_deactivated_tag function.""" index.add_deactivated_tag('user3') tags = patch_iam_client.list_user_tags(UserName='user3')['Tags'] assert tags[0]['Key'] == 'Deactivated' def test_update_user_access_keys(patch_iam_client): """Test to check update_access_keys function.""" patch_iam_client.create_user(UserName='user4') key_data = patch_iam_client.create_access_key( UserName='user4' ) key = key_data['AccessKey'] index.update_access_keys('user4', [key]) keys = patch_iam_client.list_access_keys(UserName='user4')['AccessKeyMetadata'] # noqa: E501 assert keys[0]['Status'] == 'Inactive'