First, FYI, for anyone reading this, but doesn't know what we are talking about:
- the fbc test suite is an important part of FB Dev Team's quality assurance.
- currently about 3500+ tests that make hundreds of thousands of assertions about how the compiler and run-time library is supposed to work
- there are primarily 2 test methods, compile-time tests and run-time tests
- the fbcunit library we are talking about here is responsible for recording and reporting the results of the run-time tests
- the makefiles and build scripts are responsible for recording and reporting the compile time tests.
@St_W
Yeah, there's a number of items to change and/or clean-up.
1) Is AUTO=1 expected to do other automatic things? If not, then we could name the option for what it is and add an XMLOUTPUT=path/file.xml as option to the makefile that is passed to `./fbc-tests.exe --xml path/file.xml' invocation.
2) Aesthetically, I want to use "Unit", "UNITTEST", etc. I will keep the "cunit-tests" target for now, but deprecate it's use. CUNIT, cunit, CUint, CUNITTESTS, etc is used through the makefiles and docs.
3) Does anyone use ALLOW_CUNIT=1 option? I added that because, once upon a time, I was having trouble with DOS builds. It uses a "fake" CUnit include file so that **all** tests get built same way as the log-tests and didn't need the libcunit.a library. It is extremely slow. I hoping to remove the ALLOW_CUNIT stuff completely.
4) I will do my best to keep from breaking stuff. Do expect some changes though.
Alternative to your work-around (there are multiple ways to do this):
Code: Select all
## special.mk
include cunit-tests.mk
.PHONY: stw_tests
stw_tests: make_fbcu $(CUNIT_TESTS_INC) build_tests stw_run
.PHONY: stw_run
stw_run:
./$(MAINEXE) --xml fbc-tests-Results.xml
Then invoke with `make -f special.mk stw_tests'.