Pruebas unitarias de modificaciones de archivos

Una tarea común en los programas en los que he estado trabajando últimamente es modificar un archivo de texto de alguna manera. (Hola, estoy en Linux. Todo es un archivo. Y lo hago administrador de sistemas a gran escala).

Pero el archivo que modifica el código puede no existir en mi caja de escritorio. Y probablemente no quiero modificarlo si está en mi escritorio.

He leído acerca de las pruebas de unidad en Dive Into Python, y está bastante claro lo que quiero hacer al probar una aplicación que convierte decimales en números romanos (el ejemplo en DintoP). La prueba está muy bien autocontenida. No necesita verificar que el programa IMPRIMA lo correcto, solo necesita verificar que las funciones están devolviendo la salida correcta a una entrada determinada.

En mi caso, sin embargo, tenemos que probar que el programa está modificando su entorno correctamente. Esto es lo que he encontrado:

1) Cree el archivo "original" en una ubicación estándar, tal vez / tmp.

2) Ejecute la función que modifica el archivo, pasándole la ruta al archivo en / tmp.

3) Verifique que el archivo en / tmp fue cambiado correctamente; prueba de unidad de aprobado / reprobado en consecuencia

Esto me parece torpe. (Obtiene incluso kludgier si desea verificar que las copias de respaldo del archivo se crean correctamente, etc.) ¿Alguien ha encontrado una mejor manera?

Respuestas a la pregunta(6)

Su respuesta a la pregunta