def METHOD_NAME(make_stubber, make_unique_name, error_code):
    lambda_client = boto3.client('lambda')
    lambda_stubber = make_stubber(lambda_client)
    wrapper = LambdaWrapper(lambda_client, None)
    func_name = make_unique_name('func-')
    handler_name = make_unique_name('handler-')
    iam_role = unittest.mock.MagicMock(arn='arn:aws:iam:::role/test-role')
    test_package = 'test-package'
    func_arn = f'arn:aws:lambda:::function/{func_name}'
    lambda_stubber.stub_create_function(
        func_name, func_arn, iam_role.arn, handler_name, test_package,
        error_code=error_code)
    if error_code is None:
        lambda_stubber.stub_get_function(func_name, 'Active')
    if error_code is None:
        got_arn = wrapper.create_function(func_name, handler_name, iam_role, test_package)
        assert got_arn == func_arn
    else:
        with pytest.raises(ClientError) as exc_info:
            wrapper.create_function(
                func_name, handler_name, iam_role, test_package)
        assert exc_info.value.response['Error']['Code'] == error_code