Pruebas unitarias de malloc fallido ()

¿Cuál es la mejor manera de probar unidades en las rutas de código que involucran una falla?malloc()? En la mayoría de los casos, probablemente no importa porque estás haciendo algo como

thingy *my_thingy = malloc(sizeof(thingy));
if (my_thingy == NULL) {
  fprintf(stderr, "We're so screwed!\n");
  exit(EXIT_FAILURE);
} 

pero en algunos casos tiene otras opciones además de morir, porque ha asignado algunas cosas adicionales para el almacenamiento en caché o lo que sea, y puede reclamar esa memoria.

Sin embargo, en aquellos casos en los que puede intentar recuperarse de un errormalloc() que estás haciendo algo complicado y propenso a errores en una ruta de código que es bastante inusual, lo que hace que las pruebas sean especialmente importantes. ¿Cómo realmente haces esto?

Respuestas a la pregunta(6)

Su respuesta a la pregunta