⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 generate_test_results.py

📁 Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work
💻 PY
字号:
## Generates test test results for testing of boost_wide_report.py#import commonimport xml.sax.saxutilsimport osimport timenum_of_libs = 5num_of_runners = 5num_of_toolsets = 3num_of_tests = 10results_directory = "results/incoming/CVS-HEAD/processed"# Generated results follow the rules:## * odd runners are testing on Win32, even runners are testin on Unix# * the third toolset has 2 variants## Generated expected markup:## * First two toolset are required# * Every fourth library is unusable on event toolsets# * Last two tests are corner-ase tests# * Every 4th test is explicitly marked up as expected-failuredef library_build_failed( library_idx ):    return library_idx % 2def test_run_source( runner_idx ):    if runner_idx % 2: return "tarball"    else:              return "cvs head"def test_run_type( runner_idx ):    if runner_idx % 2: return "incremental"    else:              return "full"def test_type( i ):    types = [ "compile", "compile_fail", "link", "link_fail", "run", "run_fail", "run_pyd" ]    return types[ i % len( types) ]def make_test_results():    if not os.path.exists( results_directory ):        os.makedirs( results_directory )    for i_runner in range( 0, num_of_runners ):        runner_id = "runner %02d" % i_runner        g = xml.sax.saxutils.XMLGenerator( open( os.path.join( results_directory, runner_id + ".xml" ), "w" ), "utf-8" )        g.startDocument()        if i_runner % 2:            platform = "Win32"        else:            platform = "Unix"                    g.startElement( "test-run", { "platform": platform                                      , "runner": runner_id                                      , "timestamp": common.format_timestamp(                                                           time.gmtime( time.time() - i_runner * 24*60*60 )                                                        )                                      , "revision": '%d' % ( 7000 + i_runner )                                      , "source": test_run_source( i_runner )                                      , "run-type": test_run_type( i_runner )                                      } )        g.startElement( "comment", {} )        g.characters( "<b>Runner</b> is who <i>running</i> does." )        g.endElement( "comment" )        for i_lib in range( 0, num_of_libs ):            for i_toolset in range( num_of_toolsets ):                if library_build_failed( i_lib ): test_result = "fail"                else:                             test_result = "success"                                    common.make_test_log( xml_generator = g                                      , library_idx = i_lib                                      , toolset_idx = i_toolset                                       , test_name = ""                                      , test_type = "lib"                                      , test_result = test_result                                      , show_run_output = "false"                                      , variant = None )            for i_lib in range( 0, num_of_libs ):            library_name = "library_%02d" % i_lib            if num_of_runners - 1 == i_runner and  i_lib % 2:                 continue                             for i_toolset in range( num_of_toolsets ):                toolset_name = "toolset %02d" % ( i_toolset )                if num_of_runners - 1 == i_runner and i_toolset % 2:                    continue                                for i_test in range( num_of_tests ):                    test_name = "test_%02d_%02d" % ( i_lib, i_test )                    test_result = ""                    show_run_output = "false"                                        if num_of_runners - 1 == i_runner and i_test % 2:                        continue                                        if i_runner % 2: test_result = "success"                    else:            test_result = "fail"                    if i_runner == 1 and i_toolset == 2 and i_test % 6 == 0:                        test_result = "fail"                                            if test_result == "success" and ( 0 == i_test % 5 ):                        show_run_output = "true"                    if i_toolset == 2:                        variants = [ "static-lib", "shared-lib" ]                    else:                        variants = [ None ]                    for variant in variants:                        common.make_test_log( xml_generator = g                                              , library_idx = i_lib                                              , toolset_idx = i_toolset                                              , test_name = test_name                                              , test_type = test_type( i_test )                                              , test_result = test_result                                              , show_run_output = show_run_output                                              , variant = variant )        g.endElement( "test-run" )        g.endDocument()## <test-log library="algorithm" test-name="container" test-type="run" test-program="libs/algorithm/string/test/container_test.cpp" target-directory="bin/boost/libs/algorithm/string/test/container.test/borland-5.6.4/debug" toolset="borland-5.6.4" show-run-output="false">## <compile result="fail" timestamp="2004-06-29 17:02:27 UTC">##     "C:\Progra~1\Borland\CBuilder6\bin\bcc32"  -j5 -g255 -q -c -P -w -Ve -Vx -a8 -b-   -v -Od -vi- -tWC -tWR -tWC -WM- -DBOOST_ALL_NO_LIB=1  -w-8001  -I"C:\Users\Administrator\boost\main\results\bin\boost\libs\algorithm\string\test"   -I"C:\Users\Administrator\boost\main\boost" -I"C:\Progra~1\Borland\CBuilder6\include"  -o"C:\Users\Administrator\boost\main\results\bin\boost\libs\algorithm\string\test\container.test\borland-5.6.4\debug\container_test.obj"  "..\libs\algorithm\string\test\container_test.cpp" ## ..\libs\algorithm\string\test\container_test.cpp:## Warning W8091 C:\Users\Administrator\boost\main\boost\libs/test/src/unit_test_result.cpp 323: template argument _InputIter passed to 'for_each' is a output iterator: input iterator required in function unit_test_result::~unit_test_result()## Warning W8091 C:\Users\Administrator\boost\main\boost\libs/test/src/unit_test_suite.cpp 63: template argument _InputIter passed to 'find_if' is a output iterator: input iterator required in function test_case::Impl::check_dependencies()## Warning W8091 C:\Users\Administrator\boost\main\boost\libs/test/src/unit_test_suite.cpp 204: template argument _InputIter passed to 'for_each' is a output iterator: input iterator required in function test_suite::~test_suite()## Error E2401 C:\Users\Administrator\boost\main\boost\boost/algorithm/string/finder.hpp 45: Invalid template argument list## Error E2040 C:\Users\Administrator\boost\main\boost\boost/algorithm/string/finder.hpp 46: Declaration terminated incorrectly## Error E2090 C:\Users\Administrator\boost\main\boost\boost/algorithm/string/finder.hpp 277: Qualifier 'algorithm' is not a class or namespace name## Error E2272 C:\Users\Administrator\boost\main\boost\boost/algorithm/string/finder.hpp 277: Identifier expected## Error E2090 C:\Users\Administrator\boost\main\boost\boost/algorithm/string/finder.hpp 278: Qualifier 'algorithm' is not a class or namespace name## Error E2228 C:\Users\Administrator\boost\main\boost\boost/algorithm/string/finder.hpp 278: Too many error or warning messages## *** 6 errors in Compile ***## </compile>## </test-log>            make_test_results()common.make_expicit_failure_markup( num_of_libs, num_of_toolsets, num_of_tests  )

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -