def METHOD_NAME(func, **overrides):
    """
    Override specific variables within a function's global context.
    """
    # recognize methods
    if hasattr(func, "im_func") and func.im_func:
        func = func.__func__
    # Get a reference to the function globals dictionary
    func_globals = func.__globals__
    # Save the current function globals dictionary state values for the
    # overridden objects
    injected_func_globals = []
    overridden_func_globals = {}
    for override in overrides:
        if override in func_globals:
            overridden_func_globals[override] = func_globals[override]
        else:
            injected_func_globals.append(override)
    # Override the function globals with what's passed in the above overrides
    func_globals.update(overrides)
    # The context is now ready to be used
    try:
        yield
    finally:
        # We're now done with the context
        # Restore the overwritten function globals
        func_globals.update(overridden_func_globals)
        # Remove any entry injected in the function globals
        for injected in injected_func_globals:
            del func_globals[injected]