[ros-diffs] [cfinck] 40147: Big testing system commit rosautotest - Rewrite rosautotest in C++ Should increase maintainability and expandability, since most of the functionality is encapsulated in classes and there exist some abstract classes for further enhancements (i.e. new test types). Furthermore, due to the usage of STL strings, we don't need x lines anymore just for building a string out of several small parts. - The new codebase made it fairly easy to implement a Crash Recovery feature based on a journal. If you start rosautotest with the /r option under ReactOS, it will keep a journal about the tests to run and the tests already ran. In case of a crash, it can just continue with the next test in the list then. - Add some reasonable timeouts to avoid certain hangs in case a test crashes sysreg2 - Make the necessary changes to sysreg2 to restart the VM in case of such a crash in 3rd stage, but set a maximum number of allowed crashes as well. Christoph, please test and review that on the Buildslave :-) - Prepend all sysreg messages with [SYSREG] through a new function SysregPrintf, so the BuildBot aggregator script of testman can distinguish between debug output and sysreg messages. - Put all header includes into the central header file "sysreg.h" - Remove unnecessary libs from the Makefile testman - Change the testman Web Interface to show such crashes as CRASH in the Compare and Detail views.
cfinck at svn.reactos.org
cfinck at svn.reactos.org
Sat Mar 21 02:39:05 CET 2009
Author: cfinck
Date: Sat Mar 21 04:39:04 2009
New Revision: 40147
URL: http://svn.reactos.org/svn/reactos?rev=40147&view=rev
Log:
Big testing system commit
rosautotest
- Rewrite rosautotest in C++
Should increase maintainability and expandability, since most of the functionality is encapsulated in classes and there exist some abstract classes for further enhancements (i.e. new test types).
Furthermore, due to the usage of STL strings, we don't need x lines anymore just for building a string out of several small parts.
- The new codebase made it fairly easy to implement a Crash Recovery feature based on a journal.
If you start rosautotest with the /r option under ReactOS, it will keep a journal about the tests to run and the tests already ran. In case of a crash, it can just continue with the next test in the list then.
- Add some reasonable timeouts to avoid certain hangs in case a test crashes
sysreg2
- Make the necessary changes to sysreg2 to restart the VM in case of such a crash in 3rd stage, but set a maximum number of allowed crashes as well.
Christoph, please test and review that on the Buildslave :-)
- Prepend all sysreg messages with [SYSREG] through a new function SysregPrintf, so the BuildBot aggregator script of testman can distinguish between debug output and sysreg messages.
- Put all header includes into the central header file "sysreg.h"
- Remove unnecessary libs from the Makefile
testman
- Change the testman Web Interface to show such crashes as CRASH in the Compare and Detail views.
Added:
trunk/rostests/rosautotest/CConfiguration.cpp (with props)
trunk/rostests/rosautotest/CConfiguration.h (with props)
trunk/rostests/rosautotest/CFatalException.cpp (with props)
trunk/rostests/rosautotest/CFatalException.h (with props)
trunk/rostests/rosautotest/CInvalidParameterException.cpp (with props)
trunk/rostests/rosautotest/CInvalidParameterException.h (with props)
trunk/rostests/rosautotest/CJournaledTestList.cpp (with props)
trunk/rostests/rosautotest/CJournaledTestList.h (with props)
trunk/rostests/rosautotest/CProcess.cpp (with props)
trunk/rostests/rosautotest/CProcess.h (with props)
trunk/rostests/rosautotest/CSimpleException.cpp (with props)
trunk/rostests/rosautotest/CSimpleException.h (with props)
trunk/rostests/rosautotest/CTest.cpp (with props)
trunk/rostests/rosautotest/CTest.h (with props)
trunk/rostests/rosautotest/CTestInfo.cpp (with props)
trunk/rostests/rosautotest/CTestInfo.h (with props)
trunk/rostests/rosautotest/CTestList.cpp (with props)
trunk/rostests/rosautotest/CTestList.h (with props)
trunk/rostests/rosautotest/CVirtualTestList.cpp (with props)
trunk/rostests/rosautotest/CVirtualTestList.h (with props)
trunk/rostests/rosautotest/CWebService.cpp (with props)
trunk/rostests/rosautotest/CWebService.h (with props)
trunk/rostests/rosautotest/CWineTest.cpp (with props)
trunk/rostests/rosautotest/CWineTest.h (with props)
trunk/rostests/rosautotest/auto_array_ptr.h (with props)
trunk/rostests/rosautotest/main.cpp (contents, props changed)
- copied, changed from r39773, trunk/rostests/rosautotest/main.c
trunk/rostests/rosautotest/shutdown.cpp (contents, props changed)
- copied, changed from r39773, trunk/rostests/rosautotest/shutdown.c
trunk/rostests/rosautotest/tools.cpp (contents, props changed)
- copied, changed from r39773, trunk/rostests/rosautotest/tools.c
Removed:
trunk/rostests/rosautotest/main.c
trunk/rostests/rosautotest/shutdown.c
trunk/rostests/rosautotest/tools.c
trunk/rostests/rosautotest/webservice.c
trunk/rostests/rosautotest/winetests.c
Modified:
trunk/rostests/rosautotest/precomp.h
trunk/rostests/rosautotest/rosautotest.rbuild
trunk/tools/sysreg2/console.c
trunk/tools/sysreg2/makefile
trunk/tools/sysreg2/options.c
trunk/tools/sysreg2/sysreg.h
trunk/tools/sysreg2/sysreg.xml
trunk/tools/sysreg2/utils.c
trunk/tools/sysreg2/virt.c
trunk/web/reactos.org/htdocs/testman/compare.php
trunk/web/reactos.org/htdocs/testman/detail.php
trunk/web/reactos.org/htdocs/testman/js/compare.js.php
trunk/web/reactos.org/htdocs/testman/utils.inc.php
[This mail would be too long, it was shortened to contain the URLs only.]
Added: trunk/rostests/rosautotest/CConfiguration.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CConfiguration.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CConfiguration.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CConfiguration.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CFatalException.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CFatalException.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CFatalException.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CFatalException.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CInvalidParameterException.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CInvalidParameterException.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CInvalidParameterException.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CInvalidParameterException.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CJournaledTestList.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CJournaledTestList.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CJournaledTestList.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CJournaledTestList.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CProcess.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CProcess.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CProcess.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CProcess.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CSimpleException.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CSimpleException.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CSimpleException.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CSimpleException.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CTest.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CTest.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CTest.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CTest.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CTestInfo.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CTestInfo.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CTestInfo.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CTestInfo.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CTestList.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CTestList.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CTestList.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CTestList.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CVirtualTestList.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CVirtualTestList.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CVirtualTestList.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CVirtualTestList.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CWebService.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CWebService.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CWebService.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CWebService.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CWineTest.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CWineTest.cpp?rev=40147&view=auto
Added: trunk/rostests/rosautotest/CWineTest.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/CWineTest.h?rev=40147&view=auto
Added: trunk/rostests/rosautotest/auto_array_ptr.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/auto_array_ptr.h?rev=40147&view=auto
Removed: trunk/rostests/rosautotest/main.c
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/main.c?rev=40146&view=auto
Copied: trunk/rostests/rosautotest/main.cpp (from r39773, trunk/rostests/rosautotest/main.c)
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/main.cpp?p2=trunk/rostests/rosautotest/main.cpp&p1=trunk/rostests/rosautotest/main.c&r1=39773&r2=40147&rev=40147&view=diff
Modified: trunk/rostests/rosautotest/precomp.h
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/precomp.h?rev=40147&r1=40146&r2=40147&view=diff
Modified: trunk/rostests/rosautotest/rosautotest.rbuild
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/rosautotest.rbuild?rev=40147&r1=40146&r2=40147&view=diff
Removed: trunk/rostests/rosautotest/shutdown.c
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/shutdown.c?rev=40146&view=auto
Copied: trunk/rostests/rosautotest/shutdown.cpp (from r39773, trunk/rostests/rosautotest/shutdown.c)
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/shutdown.cpp?p2=trunk/rostests/rosautotest/shutdown.cpp&p1=trunk/rostests/rosautotest/shutdown.c&r1=39773&r2=40147&rev=40147&view=diff
Removed: trunk/rostests/rosautotest/tools.c
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/tools.c?rev=40146&view=auto
Copied: trunk/rostests/rosautotest/tools.cpp (from r39773, trunk/rostests/rosautotest/tools.c)
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/tools.cpp?p2=trunk/rostests/rosautotest/tools.cpp&p1=trunk/rostests/rosautotest/tools.c&r1=39773&r2=40147&rev=40147&view=diff
Removed: trunk/rostests/rosautotest/webservice.c
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/webservice.c?rev=40146&view=auto
Removed: trunk/rostests/rosautotest/winetests.c
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/rosautotest/winetests.c?rev=40146&view=auto
Modified: trunk/tools/sysreg2/console.c
URL: http://svn.reactos.org/svn/reactos/trunk/tools/sysreg2/console.c?rev=40147&r1=40146&r2=40147&view=diff
Modified: trunk/tools/sysreg2/makefile
URL: http://svn.reactos.org/svn/reactos/trunk/tools/sysreg2/makefile?rev=40147&r1=40146&r2=40147&view=diff
Modified: trunk/tools/sysreg2/options.c
URL: http://svn.reactos.org/svn/reactos/trunk/tools/sysreg2/options.c?rev=40147&r1=40146&r2=40147&view=diff
Modified: trunk/tools/sysreg2/sysreg.h
URL: http://svn.reactos.org/svn/reactos/trunk/tools/sysreg2/sysreg.h?rev=40147&r1=40146&r2=40147&view=diff
Modified: trunk/tools/sysreg2/sysreg.xml
URL: http://svn.reactos.org/svn/reactos/trunk/tools/sysreg2/sysreg.xml?rev=40147&r1=40146&r2=40147&view=diff
Modified: trunk/tools/sysreg2/utils.c
URL: http://svn.reactos.org/svn/reactos/trunk/tools/sysreg2/utils.c?rev=40147&r1=40146&r2=40147&view=diff
Modified: trunk/tools/sysreg2/virt.c
URL: http://svn.reactos.org/svn/reactos/trunk/tools/sysreg2/virt.c?rev=40147&r1=40146&r2=40147&view=diff
Modified: trunk/web/reactos.org/htdocs/testman/compare.php
URL: http://svn.reactos.org/svn/reactos/trunk/web/reactos.org/htdocs/testman/compare.php?rev=40147&r1=40146&r2=40147&view=diff
Modified: trunk/web/reactos.org/htdocs/testman/detail.php
URL: http://svn.reactos.org/svn/reactos/trunk/web/reactos.org/htdocs/testman/detail.php?rev=40147&r1=40146&r2=40147&view=diff
Modified: trunk/web/reactos.org/htdocs/testman/js/compare.js.php
URL: http://svn.reactos.org/svn/reactos/trunk/web/reactos.org/htdocs/testman/js/compare.js.php?rev=40147&r1=40146&r2=40147&view=diff
Modified: trunk/web/reactos.org/htdocs/testman/utils.inc.php
URL: http://svn.reactos.org/svn/reactos/trunk/web/reactos.org/htdocs/testman/utils.inc.php?rev=40147&r1=40146&r2=40147&view=diff
More information about the Ros-diffs
mailing list