[eside-ghost] Unit testing en C++ en tiempo de compilación? (templates)

Jon Valdés juanval en gmail.com
Jue Ene 29 10:17:13 CET 2009


2009/1/29 Alfredo Beaumont <alfredo.beaumont en gmail.com>:
> Hmmm, o se me escapa algo o realmente no necesitas una testsuite en
> tiempo de compilación (testsuite en tiempo de compilación ==
> compilador, ergo necesitarías extendes el compilador).
>
> ¿Que problema hay en crear una testsuite normal y corriente (con
> cppunit por ejemplo) e integrarla en el proceso de
> compilación/desarrollo? E.g. cuando haces un make, te recompile el
> código, la testsuite y lance los tests (o el mítico make test)

Si, si, si estoy usando una, UnitTest++, pero una test suite en
runtime no permite lo que yo quería.

Lo que quería comprobar es que las cosas que no son legales
matemáticamente, la template que he creado no deja que sean
compilables (determinantes de matrices no cuadradas, multiplicaciones
de matrices con tamaños incompatibles, etc). Pero claro, si provoca un
fallo en compilación, el programa no termina de compilarse. Y sin el
programa compilado y linkado, no puedo pasarle ningún test en runtime
:-S

Por ahora creo que me doy por vencido, aunque cuando llegue a la
facultad echaré un vistazo a este paper:
http://portal.acm.org/citation.cfm?id=1173746 llamado "Debugging C++
template metaprograms", que con un poco de suerte tendrá algo parecido
a lo que necesito.

Enga, muchas gracias

Taluegooo


Más información sobre la lista de distribución eside-ghost