Plantear una excepción desde un nivel superior, a la advertencia

En el módulo de advertencias (https://docs.python.org/3.5/library/warnings.html) existe la posibilidad de generar una advertencia que parece provenir de algún lugar anterior en la pila:

warnings.warn('This is a test', stacklevel=2)

¿Existe un equivalente para generar errores? Sé que puedo generar un error con un rastreo alternativo, pero no puedo crear ese rastreo dentro del módulo, ya que debe provenir de antes. Me imagino algo como:

tb = magic_create_traceback_right_here()
raise ValueError('This is a test').with_traceback(tb.tb_next)

La razón es que estoy desarrollando un módulo que tiene una funciónmodule.check_raise que quiero generar un error que parece originarse desde donde se llama la función. Si levanto un error dentro delmodule.check_raise función, parece originarse desde dentromodule.check_raise, que no es deseado.

Además, he intentado trucos como generar una excepción ficticia, atraparla y pasar el rastreo, pero de alguna manera tb_next se convierte enNone. Estoy sin ideas.

Editar:

Me gustaría la salida de este ejemplo mínimo (llamado tb2.py):

import check_raise

check_raise.raise_if_string_is_true('True')

ser solo esto:

Traceback (most recent call last):
  File "tb2.py", line 10, in <module>
    check_raise.raise_if_string_is_true(string)
RuntimeError: An exception was raised.

Respuestas a la pregunta(3)

Su respuesta a la pregunta