Hallo beste tweakers,
ik ben bezig om in C++ (arm-none-eabi-g++) voor microcontrollers een simpele unittest framework op te zetten. Nu wil ik alleen een manier hebben om alle test functions aan te kunnen roepen. Dit kan natuurlijk heel simpel zijn door elke functie gewoonweg aan te roepen in de main.
Het is dan alleen zo dat wanneer er tientallen van zijn, het veel ruimte in de code kost en er makkelijk een functie over het hoofd geslagen kan worden. Het handigste zou zijn als de compiler dat voor mij deed.
Wat ik in sommige frameworks zie is:
Deze functions hoef je dan niet zelf 'aan te melden', maar zijn blijkbaar toch aan te roepen. Wanneer ik de macros en code ervan inspecteer kan ik niet ontdekken hoe dit werkt.
Ook vele google searches hebben mij weinig bruikbaars gebracht.
In C# zou dit erg makkelijk zijn met reflectie.
Maar dat is natuurlijk niet haalbaar met maar 128kb ROM 
Hopelijk kan iemand me het juiste pad aanwijzen.
Dion Dokter
ik ben bezig om in C++ (arm-none-eabi-g++) voor microcontrollers een simpele unittest framework op te zetten. Nu wil ik alleen een manier hebben om alle test functions aan te kunnen roepen. Dit kan natuurlijk heel simpel zijn door elke functie gewoonweg aan te roepen in de main.
Het is dan alleen zo dat wanneer er tientallen van zijn, het veel ruimte in de code kost en er makkelijk een functie over het hoofd geslagen kan worden. Het handigste zou zijn als de compiler dat voor mij deed.
Wat ik in sommige frameworks zie is:
C++:
1
2
3
4
| TEST_FUNCTION(myfunc) { ASSERT(10 == 10); } |
Deze functions hoef je dan niet zelf 'aan te melden', maar zijn blijkbaar toch aan te roepen. Wanneer ik de macros en code ervan inspecteer kan ik niet ontdekken hoe dit werkt.
Ook vele google searches hebben mij weinig bruikbaars gebracht.
In C# zou dit erg makkelijk zijn met reflectie.
Hopelijk kan iemand me het juiste pad aanwijzen.
Dion Dokter