Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Update Eagle in externals to pre-beta 18. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
b2c0bb521fcd8de15349d35c60ec76bb |
User & Date: | mistachkin 2011-09-02 15:35:23 |
Context
2011-09-02
| ||
15:56 | Documentation updates for the upcoming 1.0.75.0 release. check-in: 4bd374a253 user: mistachkin tags: trunk | |
15:35 | Update Eagle in externals to pre-beta 18. check-in: b2c0bb521f user: mistachkin tags: trunk | |
15:05 | Update all version numbers to 1.0.75.0 and update the SQLite core to the latest trunk. check-in: 092d06ea5b user: mistachkin tags: trunk | |
Changes
Changes to Externals/Eagle/bin/Eagle.dll.
cannot compute difference between binary files
Changes to Externals/Eagle/bin/EagleShell.exe.
cannot compute difference between binary files
Changes to Externals/Eagle/lib/Eagle1.0/init.eagle.
215 216 217 218 219 220 221 222 223 224 225 226 227 228 ... 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 ... 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 .... 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 |
# set file_id [open $fileName RDONLY] fconfigure $file_id -encoding binary -translation binary; # BINARY DATA set result [read $file_id] close $file_id return $result } proc writeFile { fileName data } { # # NOTE: This should work properly in both Tcl and Eagle. # set file_id [open $fileName {WRONLY CREAT TRUNC}] fconfigure $file_id -encoding binary -translation binary; # BINARY DATA ................................................................................ if {[llength $options] > 0} then {eval lappend command $options} lappend command -- # # HACK: Assume that Mono is somewhere along the PATH. # if {[isMono]} then { lappend command mono } lappend command [info nameofexecutable] eval lappend command $args return [uplevel 1 $command] } proc ldifference { list1 list2 } { set result [list] ................................................................................ foreach item $list { set result [uplevel 1 $script [list $result] [list $item]] } return $result } proc testShim { args } { # # NOTE: Call the original (saved) [test] command, wrapping it in # our standard test wrapper. # uplevel 1 [list runTest [concat ::savedTest $args]] } proc tsource { fileName {prologue true} {epilogue true} } { # # NOTE: At this point, we need to require the test package so that # we can run the test prologue. Besides, the contained test(s) # will almost certainly require access to procedures defined in # our test package. # package require EagleTest # # NOTE: Run the test prologue in the context of the caller (which # must be global)? # if {$prologue} then { uplevel 1 runTestPrologue } # # NOTE: Save the original [test] command and setup our test shim in # its place. # rename test ::savedTest interp alias {} test {} testShim # # NOTE: Source the specified test file in the context of the # caller (which should be global). # set code [catch {uplevel 1 [list source $fileName]} result] set error [expr {$code == 0 ? false : true}] # # NOTE: Remove our test shim and restore the original (saved) # [test] command. # interp alias {} test {} rename ::savedTest test # # NOTE: Run the test epilogue in the context of the caller (which # must be global)? # if {$epilogue} then { uplevel 1 runTestEpilogue } # # NOTE: If the test raised an error, re-raise it now; otherwise, # just return the result. # if {$error} then { error $result } else { return $result } } if {[isEagle]} then { ########################################################################### ############################ BEGIN Eagle ONLY ############################# ########################################################################### proc isAdministrator {} { # ................................................................................ # # NOTE: Exports the necessary commands from this package and import # them into the global namespace. # exportAndImportPackageCommands [namespace current] [list \ exportAndImportPackageCommands isEagle isMono getEnvironmentVariable \ getPluginPath getDictionaryValue getColumnValue getRowColumnValue \ appendArgs haveGaruda lappendArgs readFile filter map reduce tsource \ getPlatformInfo testShim] false false ########################################################################### ############################## END Tcl ONLY ############################### ########################################################################### } # # NOTE: Provide the Eagle library package to the interpreter. # package provide EagleLibrary \ [expr {[isEagle] ? [info engine PatchLevel] : 1.0}] } |
> > > > > > > > > > > > > > > > > > > > > > > > > > > | < > > | > > < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < | | |
215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 ... 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 ... 617 618 619 620 621 622 623 624 625 626 627 628 629 630 .... 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 |
# set file_id [open $fileName RDONLY] fconfigure $file_id -encoding binary -translation binary; # BINARY DATA set result [read $file_id] close $file_id return $result } proc readSharedFile { fileName } { # # NOTE: This should work properly in both Tcl and Eagle. # set command [list open $fileName RDONLY] # # HACK: Tcl appears to do this by default; however Eagle does not and # will not. Therefore, manually add the -share option to the # command if running in Eagle. # if {[isEagle]} then { lappend command 0 file -share readWrite } # # NOTE: Open the file using the command constructed above, configure # the channel for binary data, and output the data to it. # set file_id [eval $command] fconfigure $file_id -encoding binary -translation binary; # BINARY DATA set result [read $file_id] close $file_id return $result } proc writeFile { fileName data } { # # NOTE: This should work properly in both Tcl and Eagle. # set file_id [open $fileName {WRONLY CREAT TRUNC}] fconfigure $file_id -encoding binary -translation binary; # BINARY DATA ................................................................................ if {[llength $options] > 0} then {eval lappend command $options} lappend command -- # # HACK: Assume that Mono is somewhere along the PATH. # if {[isMono]} then { lappend command mono \ [appendArgs \" [file nativename [info nameofexecutable]] \"] } else { lappend command [info nameofexecutable] } eval lappend command $args return [uplevel 1 $command] } proc ldifference { list1 list2 } { set result [list] ................................................................................ foreach item $list { set result [uplevel 1 $script [list $result] [list $item]] } return $result } if {[isEagle]} then { ########################################################################### ############################ BEGIN Eagle ONLY ############################# ########################################################################### proc isAdministrator {} { # ................................................................................ # # NOTE: Exports the necessary commands from this package and import # them into the global namespace. # exportAndImportPackageCommands [namespace current] [list \ exportAndImportPackageCommands isEagle isMono getEnvironmentVariable \ getPluginPath getDictionaryValue getColumnValue getRowColumnValue \ appendArgs haveGaruda lappendArgs readFile filter map reduce \ getPlatformInfo] false false ########################################################################### ############################## END Tcl ONLY ############################### ########################################################################### } # # NOTE: Provide the Eagle library package to the interpreter. # package provide EagleLibrary \ [expr {[isEagle] ? [info engine PatchLevel] : 1.0}] } |
Changes to Externals/Eagle/lib/Eagle1.0/test.eagle.
197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 ... 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 ... 525 526 527 528 529 530 531 532 533 534 535 536 537 538 ... 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 ... 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 ... 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 ... 843 844 845 846 847 848 849 850 851 852 853 854 855 856 ... 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 ... 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 .... 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 .... 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 |
# upvar 1 $varName array # # TODO: Add more support for standard tcltest options here. # set options [list -configuration -suffix -file -notFile -match -skip \ -constraints -logFile -threshold -stopOnFailure -exitOnComplete] foreach {name value} $args { if {[lsearch -exact $options $name] != -1} then { set array($name) $value tputs $::test_channel [appendArgs \ "---- overrode test option \"" $name "\" with value \"" $value \ ................................................................................ # BUGBUG: Tcl 8.4 does not like this expression (and Tcl tries to # compile it even though it will only actually ever be # evaluated in Eagle). # set expr {random()} # # HACK: Mono does not currently support calling the String.Format # overload that takes a variable number of arguments via # reflection (Mono bug #636939). # if {![isMono]} then { return [string format "{0:X16}{1:X16}{2:X16}" \ [clock now] [clock clicks] [expr $expr]] } else { # # NOTE: Strip any leading minus signs for cleanliness. # return [appendArgs \ [string trimleft [clock now] -] \ [string trimleft [clock clicks] -] \ [string trimleft [expr $expr] -]] } } else { set seconds [clock seconds]; set clicks [clock clicks] binary scan [binary format d* [expr {rand()}]] w* random return [format [appendArgs % [getLengthModifier $seconds] X% \ [getLengthModifier $clicks] X% [getLengthModifier $random] X] \ $seconds $clicks $random] } } proc getTestLogId {} { return [expr {[info exists ::test_log_id] ? \ [append result . $::test_log_id] : ""}] } ................................................................................ if {$error} then { tputs $::test_channel [appendArgs "ERROR (runTest): " $result \n] } unhookPuts } } proc recordTestStatistics { varName index } { # # NOTE: Record counts of all object types that we track. # upvar 1 $varName array ................................................................................ } else { lappend result $fileName } } return $result } proc runAllTests { channel path fileNames skipFileNames } { # # NOTE: Show the exact arguments we received since they may not # have been displayed by the caller (or anybody else). # tputs $::test_channel [appendArgs "---- test run path: \"" $path \"\n] tputs $::test_channel [appendArgs "---- test run file names: " \ [list [removePathFromFileNames $path $fileNames]] \n] tputs $::test_channel [appendArgs "---- test run skip file names: " \ [list $skipFileNames] \n] # # NOTE: Keep going unless this becomes true (i.e. if one of the # test files signals us to stop). # set stop false ................................................................................ # NOTE: So far, no files have had no files with failing tests. # set failed [list] # # NOTE: Process each file name we have been given by the caller... # foreach fileName $fileNames { # # NOTE: Skipping over any file name that matches a pattern in the # list of file names to skip. # if {[inverseLsearchGlob false $skipFileNames \ [file tail $fileName]] == -1} then { # ................................................................................ # if {[catch {uplevel 1 [list source $fileName]} error]} then { # # NOTE: Most likely, this error was caused by malformed or # incorrect code in-between the tests themselves. We # need to report this. # tputs $::test_channel [appendArgs "==== \"" $fileName \ "\" ERROR \"" $error \"\n] # # NOTE: Stop further processing after this loop iteration? # if {[isStopOnFailure]} then { # # NOTE: This will terminate the loop right after the test ................................................................................ } } # # NOTE: We evaluated another test file. # incr count # # NOTE: Record failed test count after this file. # if {[isEagle]} then { set after $::eagle_tests(failed) } else { ................................................................................ # # NOTE: Determine if any resource leaks have occurred and # output diagnostics as necessary if they have. # reportTestStatistics $channel $fileName leaks } } # # NOTE: If the test file raised an error (i.e. to indicate a # test failure with the stop-on-failure flag enabled), # break out of the test loop now. # if {$stop} then { break } } } tputs $::test_channel [appendArgs "---- sourced " \ $count " test " [expr {$count > 1 ? "files" : "file"}] \n] # # NOTE: Show the files that had failing tests. # if {[llength $failed] > 0} then { tputs $::test_channel [appendArgs "---- files with failing tests: " \ $failed \n] } } proc configureTcltest { imports force } { if {[isEagle]} then { # # NOTE: Fake having the tcltest package. ................................................................................ if {[info exists test_flags(-skip)]} then { set eagle_tests(skipNames) $test_flags(-skip); # skip these tests. } else { set eagle_tests(skipNames) [list]; # default to skipping no tests. } # # NOTE: What tests have failed, if any? # set eagle_tests(failedNames) [list] # # NOTE: Initialize the list of active test constraints from the ................................................................................ } } default { return unknown } } } proc cleanupExcel {} { # # TODO: These may need to be changed in later Excel versions. # object undeclare -declarepattern Microsoft.Office.Interop.Excel* object unimport -importpattern Microsoft.Office.Interop.Excel ................................................................................ # exportAndImportPackageCommands [namespace current] [list addConstraint \ calculateRelativePerformance haveConstraint haveOrAddConstraint \ processTestArguments getTemporaryPath getTestLog getTestLogId getFiles \ getConstraints getTestFiles getTestRunId execTestShell runTestPrologue \ runTestEpilogue runTest runAllTests fixConstraints sourceIfValid \ isExitOnComplete getPassPercentage getSkipPercentage testExec tlog \ tputs formatList configureTcltest] false false ########################################################################### ############################## END Tcl ONLY ############################### ########################################################################### } # # NOTE: Provide the Eagle test package to the interpreter. # package provide EagleTest \ [expr {[isEagle] ? [info engine PatchLevel] : 1.0}] } |
> | | | < > > | > > > | > > > | < > | | | < > > > > > > > > > > > > > > > > > > > | | | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | | | > > > > > > > > > > > > > | | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | | > > > > > > > > > > > > > > > > > | | | < > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | |
197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 ... 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 ... 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 ... 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 ... 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 ... 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 ... 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 .... 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 .... 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 .... 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 .... 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 |
# upvar 1 $varName array # # TODO: Add more support for standard tcltest options here. # set options [list -configuration -suffix -file -notFile -match -skip \ -constraints -logFile -preTest -postTest -threshold -stopOnFailure \ -exitOnComplete] foreach {name value} $args { if {[lsearch -exact $options $name] != -1} then { set array($name) $value tputs $::test_channel [appendArgs \ "---- overrode test option \"" $name "\" with value \"" $value \ ................................................................................ # BUGBUG: Tcl 8.4 does not like this expression (and Tcl tries to # compile it even though it will only actually ever be # evaluated in Eagle). # set expr {random()} # # NOTE: Include the host name to make the result more unique in both # time and space. Also, hash the entire constructed string. # if {![isMono]} then { # # NOTE: When running on the .NET Framework, we can simply use the # [string format] command. # return [hash normal sha256 [string format \ "{0}{1:X8}{2:X8}{3:X16}{4:X16}{5:X16}" [info host] [pid] \ [info tid] [clock now] [clock clicks] [expr $expr]]] } else { # # HACK: Mono does not currently support calling the String.Format # overload that takes a variable number of arguments via # reflection (Mono bug #636939). Also, strip any leading # minus signs for cleanliness. # return [hash normal sha256 [appendArgs [info host] [string trimleft \ [pid] -] [string trimleft [info tid] -] [string trimleft \ [clock now] -] [string trimleft [clock clicks] -] [string trimleft \ [expr $expr] -]]] } } else { # # NOTE: Generate a random number using [expr] and then convert it # to hexadecimal. # binary scan [binary format d* [expr {rand()}]] w* random # # NOTE: Convert the host name to a hexadecimal string and include # it in the result in an attempt to make it more unique in # both time and space. # binary scan [info host] c* host set host [eval [list format [string repeat %X [llength $host]]] $host] # # NOTE: Build the final result with the [format] command, converting # all the pieces to hexadecimal (except the host, which is # already hexadecimal). # set pid [pid]; set seconds [clock seconds]; set clicks [clock clicks] return [appendArgs $host [format [appendArgs % [getLengthModifier $pid] \ X% [getLengthModifier $seconds] X% [getLengthModifier $clicks] X% \ [getLengthModifier $random] X] $pid $seconds $clicks $random]] } } proc getTestLogId {} { return [expr {[info exists ::test_log_id] ? \ [append result . $::test_log_id] : ""}] } ................................................................................ if {$error} then { tputs $::test_channel [appendArgs "ERROR (runTest): " $result \n] } unhookPuts } } proc testShim { args } { # # NOTE: Call the original (saved) [test] command, wrapping it in # our standard test wrapper. # uplevel 1 [list runTest [concat ::savedTest $args]] } proc tsource { fileName {prologue true} {epilogue true} } { # # NOTE: Run the test prologue in the context of the caller (which # must be global)? # if {$prologue} then { uplevel 1 runTestPrologue } # # NOTE: Save the original [test] command and setup our test shim in # its place. # rename ::test ::savedTest interp alias {} ::test {} testShim # # NOTE: Source the specified test file in the context of the caller # (which should be global). # set code [catch {uplevel 1 [list source $fileName]} result] set error [expr {$code == 0 ? false : true}] # # NOTE: Remove our test shim and restore the original (saved) [test] # command. # interp alias {} ::test {} rename ::savedTest ::test # # NOTE: Run the test epilogue in the context of the caller (which # must be global)? # if {$epilogue} then { uplevel 1 runTestEpilogue } # # NOTE: If the test raised an error, re-raise it now; otherwise, # just return the result. # if {$error} then { error $result } else { return $result } } proc recordTestStatistics { varName index } { # # NOTE: Record counts of all object types that we track. # upvar 1 $varName array ................................................................................ } else { lappend result $fileName } } return $result } proc formatDecimal { value {places 4} } { if {[isEagle]} then { # # HACK: This works; however, in order to do this kind of thing cleanly, # we really need the Tcl [format] command. # set result [object invoke String Format [appendArgs "{0:0." \ [string repeat # $places] "}"] [set object [object invoke \ -create Double Parse $value]]] unset object; # dispose } else { # # NOTE: See, nice and clean when done in Tcl? # set result [format [appendArgs %. $places f] $value] } return $result } proc clearTestPercent { channel } { if {[isEagle]} then { host title "" } } proc reportTestPercent { channel percent } { set status [appendArgs "---- test suite running, about " $percent \ "% complete..."] tputs $channel [appendArgs $status \n] if {[isEagle]} then { host title $status } } proc runAllTests { channel path fileNames skipFileNames } { # # NOTE: Show the exact arguments we received since they may not # have been displayed by the caller (or anybody else). # tputs $channel [appendArgs "---- test run path: \"" $path \"\n] tputs $channel [appendArgs "---- test run file names: " \ [list [removePathFromFileNames $path $fileNames]] \n] tputs $channel [appendArgs "---- test run skip file names: " \ [list $skipFileNames] \n] # # NOTE: Keep going unless this becomes true (i.e. if one of the # test files signals us to stop). # set stop false ................................................................................ # NOTE: So far, no files have had no files with failing tests. # set failed [list] # # NOTE: Process each file name we have been given by the caller... # set total [llength $fileNames]; set lastPercent -1 foreach fileName $fileNames { # # NOTE: In terms of files, not tests, what percent done are we now? # set percent [formatDecimal \ [expr {100.0 * ($count / double($total))}]] if {$percent != $lastPercent} then { reportTestPercent $channel $percent set lastPercent $percent } # # NOTE: Skipping over any file name that matches a pattern in the # list of file names to skip. # if {[inverseLsearchGlob false $skipFileNames \ [file tail $fileName]] == -1} then { # ................................................................................ # if {[catch {uplevel 1 [list source $fileName]} error]} then { # # NOTE: Most likely, this error was caused by malformed or # incorrect code in-between the tests themselves. We # need to report this. # tputs $channel [appendArgs "==== \"" $fileName "\" ERROR \"" \ $error \"\n] # # NOTE: Stop further processing after this loop iteration? # if {[isStopOnFailure]} then { # # NOTE: This will terminate the loop right after the test ................................................................................ } } # # NOTE: We evaluated another test file. # incr count # # NOTE: In terms of files, not tests, what percent done are we now? # set percent [formatDecimal \ [expr {100.0 * ($count / double($total))}]] if {$percent != $lastPercent} then { reportTestPercent $channel $percent set lastPercent $percent } # # NOTE: Record failed test count after this file. # if {[isEagle]} then { set after $::eagle_tests(failed) } else { ................................................................................ # # NOTE: Determine if any resource leaks have occurred and # output diagnostics as necessary if they have. # reportTestStatistics $channel $fileName leaks } } else { # # NOTE: This file does not actually count towards the total (i.e. # it contains no actual tests). # incr total -1 } # # NOTE: In terms of files, not tests, what percent done are we now? # set percent [formatDecimal \ [expr {100.0 * ($count / double($total))}]] if {$percent != $lastPercent} then { reportTestPercent $channel $percent set lastPercent $percent } # # NOTE: If the test file raised an error (i.e. to indicate a # test failure with the stop-on-failure flag enabled), # break out of the test loop now. # if {$stop} then { break } } else { # # NOTE: This file does not actually count towards the total (i.e. # it is part of the test suite infrastructure). # incr total -1 } # # NOTE: In terms of files, not tests, what percent done are we now? # set percent [formatDecimal \ [expr {100.0 * ($count / double($total))}]] if {$percent != $lastPercent} then { reportTestPercent $channel $percent set lastPercent $percent } } # # NOTE: Reset the host title because we may have changed it in the for # loop (above). # clearTestPercent $channel tputs $channel [appendArgs "---- sourced " $count " test " \ [expr {$count > 1 ? "files" : "file"}] \n] # # NOTE: Show the files that had failing tests. # if {[llength $failed] > 0} then { tputs $channel [appendArgs "---- files with failing tests: " $failed \n] } } proc configureTcltest { imports force } { if {[isEagle]} then { # # NOTE: Fake having the tcltest package. ................................................................................ if {[info exists test_flags(-skip)]} then { set eagle_tests(skipNames) $test_flags(-skip); # skip these tests. } else { set eagle_tests(skipNames) [list]; # default to skipping no tests. } # # NOTE: What tests have been skipped, if any? # set eagle_tests(skippedNames) [list] # # NOTE: What tests have failed, if any? # set eagle_tests(failedNames) [list] # # NOTE: Initialize the list of active test constraints from the ................................................................................ } } default { return unknown } } } proc getGarudaDll {} { # # NOTE: Get the Garuda DLL of the same platform (i.e. machine type) # as the native Tcl shell. # if {[info exists ::base_path] && \ [info exists ::eagle_platform(configuration)]} then { # # NOTE: Build the full path and file name of the Garuda DLL, using # the Eagle base path. Currently, this will only work # correctly if the test suite is being run from inside the # source tree. # return [file join $::base_path bin \ [machineToPlatform [getMachineForTclShell]] [appendArgs \ $::eagle_platform(configuration) Dll] [appendArgs Garuda \ [info sharedlibextension]]] } else { # # NOTE: We are missing necessary global variables, return nothing. # return "" } } proc cleanupExcel {} { # # TODO: These may need to be changed in later Excel versions. # object undeclare -declarepattern Microsoft.Office.Interop.Excel* object unimport -importpattern Microsoft.Office.Interop.Excel ................................................................................ # exportAndImportPackageCommands [namespace current] [list addConstraint \ calculateRelativePerformance haveConstraint haveOrAddConstraint \ processTestArguments getTemporaryPath getTestLog getTestLogId getFiles \ getConstraints getTestFiles getTestRunId execTestShell runTestPrologue \ runTestEpilogue runTest runAllTests fixConstraints sourceIfValid \ isExitOnComplete getPassPercentage getSkipPercentage testExec tlog \ tputs formatDecimal formatList configureTcltest tsource testShim] \ false false ########################################################################### ############################## END Tcl ONLY ############################### ########################################################################### } # # NOTE: Provide the Eagle test package to the interpreter. # package provide EagleTest \ [expr {[isEagle] ? [info engine PatchLevel] : 1.0}] } |
Changes to Externals/Eagle/lib/Test1.0/constraints.eagle.
179 180 181 182 183 184 185 186 187 188 189 190 191 192 ... 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 ... 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 .... 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 .... 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 .... 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 .... 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 |
addConstraint debug tputs $channel yes\n } else { tputs $channel no\n } } proc checkForVersion { channel } { tputs $channel "---- checking for language version... " if {[info exists ::tcl_version]} then { # # TODO: Cleanup the semantics for adding test ................................................................................ # NOTE: Yes, it appears that we trust our software updates. # Since this setting is off by default, the user (or # a script evaluated by the user) must have manually # turned it on. # addConstraint softwareUpdate tputs $channel "trusted\n" } else { tputs $channel "untrusted\n" } } proc checkForAdministrator { channel } { tputs $channel "---- checking for administrator... " if {[isAdministrator]} then { ................................................................................ set result yes } else { set result no } tputs $channel [appendArgs $result ", " $::tcl_platform(osBits) -bit \ " " $::tcl_platform(machine)\n] } else { tputs $channel "no, unknown\n" } } proc checkForGarudaDll { channel } { # # NOTE: Check for the Garuda DLL of the same platform (i.e. machine # type) as the native Tcl shell. # return [checkForFile $channel [file join $::base_path bin \ [machineToPlatform [getMachineForTclShell]] \ [appendArgs $::eagle_platform(configuration) Dll] \ [appendArgs Garuda [info sharedlibextension]]]] } proc checkForCulture { channel } { tputs $channel "---- checking for culture... " # # NOTE: Grab the current culture. ................................................................................ sql close $connection tputs $channel yes\n } else { tputs $channel no\n } } else { tputs $channel "disabled\n" } } proc checkForAssembly { channel name } { tputs $channel [appendArgs "---- checking for assembly \"" $name \ "\"... "] ................................................................................ tputs $channel yes\n } else { tputs $channel no\n } } proc checkForObjectMember { channel object member } { tputs $channel [appendArgs "---- checking for object member \"" \ $object . $member "\"... "] if {[catch {object members -flags +NonPublic -pattern $member $object} \ members] == 0 && [llength $members] > 0} then { # # NOTE: Yes, it appears that it is available. # addConstraint $object.[string trim $member *?] tputs $channel yes\n } else { tputs $channel no\n } } ................................................................................ if {[catch {getMachineForTclShell} result] == 0 && \ $result ne "error"} then { # # NOTE: Yes, a native Tcl shell appears to be available. # addConstraint tclShell tputs $channel "---- checking for Tcl shell... yes\n" } else { tputs $channel "---- checking for Tcl shell... no\n" } } proc checkForPowerShell { channel } { tputs $channel "---- checking for PowerShell... " ................................................................................ ########################################################################### # # NOTE: We need several of our test constraint related commands in the # global namespace. # exportAndImportPackageCommands [namespace current] [list checkForPlatform \ checkForEagle checkForGaruda checkForShell checkForDebug \ checkForVersion checkForCommand checkForFile checkForNativeCode \ checkForTip127 checkForTip194 checkForTip241 checkForTip285 \ checkForPerformance checkForTiming checkForInteractive \ checkForUserInteraction checkForNetwork] false false ########################################################################### ############################## END Tcl ONLY ############################### |
> > > > > > > > > > > > > > > | | | | < < < | | > > > | > | > | |
179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 ... 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 ... 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 .... 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 .... 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 .... 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 .... 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 |
addConstraint debug tputs $channel yes\n } else { tputs $channel no\n } } proc checkForTk { channel } { tputs $channel "---- checking for Tk... " # # HACK: For now, disable testing Tk 8.4/8.5 when running in Eagle. # if {![isEagle] || [haveConstraint tclLibrary86]} then { addConstraint tk tputs $channel yes\n } else { tputs $channel no\n } } proc checkForVersion { channel } { tputs $channel "---- checking for language version... " if {[info exists ::tcl_version]} then { # # TODO: Cleanup the semantics for adding test ................................................................................ # NOTE: Yes, it appears that we trust our software updates. # Since this setting is off by default, the user (or # a script evaluated by the user) must have manually # turned it on. # addConstraint softwareUpdate tputs $channel trusted\n } else { tputs $channel untrusted\n } } proc checkForAdministrator { channel } { tputs $channel "---- checking for administrator... " if {[isAdministrator]} then { ................................................................................ set result yes } else { set result no } tputs $channel [appendArgs $result ", " $::tcl_platform(osBits) -bit \ " " $::tcl_platform(machine) \n] } else { tputs $channel "no, unknown\n" } } proc checkForGarudaDll { channel } { # # NOTE: Check for the Garuda DLL of the same platform (i.e. machine # type) as the native Tcl shell. # return [checkForFile $channel [getGarudaDll]] } proc checkForCulture { channel } { tputs $channel "---- checking for culture... " # # NOTE: Grab the current culture. ................................................................................ sql close $connection tputs $channel yes\n } else { tputs $channel no\n } } else { tputs $channel disabled\n } } proc checkForAssembly { channel name } { tputs $channel [appendArgs "---- checking for assembly \"" $name \ "\"... "] ................................................................................ tputs $channel yes\n } else { tputs $channel no\n } } proc checkForObjectMember { channel object member {constraint ""} } { tputs $channel [appendArgs "---- checking for object member \"" \ $object . $member "\"... "] if {[catch {object members -flags +NonPublic -pattern $member $object} \ members] == 0 && [llength $members] > 0} then { # # NOTE: Yes, it appears that it is available. # if {[string length $constraint] > 0} then { addConstraint member_$constraint } else { addConstraint $object.[string trim $member *?] } tputs $channel yes\n } else { tputs $channel no\n } } ................................................................................ if {[catch {getMachineForTclShell} result] == 0 && \ $result ne "error"} then { # # NOTE: Yes, a native Tcl shell appears to be available. # addConstraint tclShell tputs $channel [appendArgs "---- checking for Tcl shell... yes (" \ $result ")\n"] } else { tputs $channel "---- checking for Tcl shell... no\n" } } proc checkForPowerShell { channel } { tputs $channel "---- checking for PowerShell... " ................................................................................ ########################################################################### # # NOTE: We need several of our test constraint related commands in the # global namespace. # exportAndImportPackageCommands [namespace current] [list checkForPlatform \ checkForEagle checkForGaruda checkForShell checkForDebug checkForTk \ checkForVersion checkForCommand checkForFile checkForNativeCode \ checkForTip127 checkForTip194 checkForTip241 checkForTip285 \ checkForPerformance checkForTiming checkForInteractive \ checkForUserInteraction checkForNetwork] false false ########################################################################### ############################## END Tcl ONLY ############################### |
Changes to Externals/Eagle/lib/Test1.0/epilogue.eagle.
40 41 42 43 44 45 46 47 48 49 50 51 52 53 .. 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 ... 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 ... 251 252 253 254 255 256 257 258 259 260 261 262 263 264 |
# # NOTE: Show when the tests actually ended (now). # tputs $test_channel [appendArgs "---- tests ended at " \ [clock format [clock seconds]] \n] if {[isEagle]} then { tputs $test_channel \n; # NOTE: Blank line. if {$eagle_tests(passed) > 0} then { host result Ok [appendArgs "PASSED: " $eagle_tests(passed) \n] tlog [appendArgs "PASSED: " $eagle_tests(passed) \n] } ................................................................................ tlog [appendArgs "FAILED: " $eagle_tests(failedNames) \n] } } if {$eagle_tests(skipped) > 0} then { host result Break [appendArgs "SKIPPED: " $eagle_tests(skipped) \n] tlog [appendArgs "SKIPPED: " $eagle_tests(skipped) \n] } if {$eagle_tests(total) > 0} then { host result Return [appendArgs "TOTAL: " $eagle_tests(total) \n] tlog [appendArgs "TOTAL: " $eagle_tests(total) \n] # # HACK: Temporarily modify the floating point precision so that the # pass percentage does not end up with excessive detail. In # theory, we could use [string format] here; however, that # would fail under Mono. # if {$tcl_precision != 4} then { set tcl_precision_save $tcl_precision set tcl_precision 4 } if {$eagle_tests(skipped) > 0} then { set percent [getSkipPercentage] host result Break [appendArgs "SKIP PERCENTAGE: " $percent %\n] tlog [appendArgs "SKIP PERCENTAGE: " $percent %\n] } set percent [getPassPercentage] host result Return [appendArgs "PASS PERCENTAGE: " $percent %\n] tlog [appendArgs "PASS PERCENTAGE: " $percent% \n] # # NOTE: Restore the saved floating point precision. # if {[info exists tcl_precision_save]} then { set tcl_precision $tcl_precision_save unset tcl_precision_save } } else { # # NOTE: No tests. # set percent 0 } ................................................................................ if {$::tcltest::numTests(Total) > 0} then { tputs $test_channel \ [appendArgs "TOTAL: " $::tcltest::numTests(Total) \n] if {$::tcltest::numTests(Skipped) > 0} then { set percent [getSkipPercentage] tputs $test_channel [appendArgs "SKIP PERCENTAGE: " \ [format "%.4f" $percent] %\n] } set percent [getPassPercentage] tputs $test_channel [appendArgs "PASS PERCENTAGE: " \ [format "%.4f" $percent] %\n] } else { # # NOTE: No tests. # set percent 0 } ................................................................................ } # # NOTE: Check for and process any custom test epilogue script that may # be set in the environment. # sourceIfValid epilogue [getEnvironmentVariable testEpilogue] # # NOTE: Do we need to exit now? # if {[isExitOnComplete]} then { # # NOTE: Exit now. In Eagle, this will not exit the entire process. |
> > > > > > > > > > > > > > > > > > > > > > > > < < < < < < < < < < < | > > | | | < < < < < < < > | | > > > > > > > > > > > > |
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 .. 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 ... 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 ... 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 |
# # NOTE: Show when the tests actually ended (now). # tputs $test_channel [appendArgs "---- tests ended at " \ [clock format [clock seconds]] \n] if {[isEagle]} then { # # NOTE: Check for and display any duplicate test names that we found. In # theory, this checking may produce false positives if a test file # (or the entire test suite) is run multiple times without resetting # the test statistics and/or restarting Eagle; however, duplicate # test names must be avoided and this is considered a good trade-off. # foreach {name count} $eagle_tests(counts) { if {$count > 1} then { tputs $test_channel [appendArgs \ "==== test name \"" $name "\" DUPLICATED (" $count ")\n"] } elseif {$count <= 0} then { tputs $test_channel [appendArgs \ "==== test name \"" $name "\" BAD COUNT (" $count ")\n"] } } unset -nocomplain name count tputs $test_channel \n; # NOTE: Blank line. if {$eagle_tests(passed) > 0} then { host result Ok [appendArgs "PASSED: " $eagle_tests(passed) \n] tlog [appendArgs "PASSED: " $eagle_tests(passed) \n] } ................................................................................ tlog [appendArgs "FAILED: " $eagle_tests(failedNames) \n] } } if {$eagle_tests(skipped) > 0} then { host result Break [appendArgs "SKIPPED: " $eagle_tests(skipped) \n] tlog [appendArgs "SKIPPED: " $eagle_tests(skipped) \n] if {[llength $eagle_tests(skippedNames)] > 0} then { host result Break [appendArgs "SKIPPED: " $eagle_tests(skippedNames) \n] tlog [appendArgs "SKIPPED: " $eagle_tests(skippedNames) \n] } } if {$eagle_tests(total) > 0} then { host result Return [appendArgs "TOTAL: " $eagle_tests(total) \n] tlog [appendArgs "TOTAL: " $eagle_tests(total) \n] if {$eagle_tests(skipped) > 0} then { set percent [getSkipPercentage] host result Break [appendArgs "SKIP PERCENTAGE: " \ [formatDecimal $percent] %\n] tlog [appendArgs "SKIP PERCENTAGE: " [formatDecimal $percent] %\n] } set percent [getPassPercentage] host result Return [appendArgs "PASS PERCENTAGE: " \ [formatDecimal $percent] %\n] tlog [appendArgs "PASS PERCENTAGE: " [formatDecimal $percent] %\n] } else { # # NOTE: No tests. # set percent 0 } ................................................................................ if {$::tcltest::numTests(Total) > 0} then { tputs $test_channel \ [appendArgs "TOTAL: " $::tcltest::numTests(Total) \n] if {$::tcltest::numTests(Skipped) > 0} then { set percent [getSkipPercentage] tputs $test_channel [appendArgs "SKIP PERCENTAGE: " \ [formatDecimal $percent] %\n] } set percent [getPassPercentage] tputs $test_channel [appendArgs "PASS PERCENTAGE: " \ [formatDecimal $percent] %\n] } else { # # NOTE: No tests. # set percent 0 } ................................................................................ } # # NOTE: Check for and process any custom test epilogue script that may # be set in the environment. # sourceIfValid epilogue [getEnvironmentVariable testEpilogue] # # NOTE: Evaluate the specified post-test script now, if any. # if {[info exists test_flags(-postTest)] && \ [string length $test_flags(-postTest)] > 0} then { # # TODO: Perhaps use [uplevel] here instead of [eval]. For now, it does not # matter since we enforce this file being evaluated at the top-level. # eval $test_flags(-postTest) } # # NOTE: Do we need to exit now? # if {[isExitOnComplete]} then { # # NOTE: Exit now. In Eagle, this will not exit the entire process. |
Changes to Externals/Eagle/lib/Test1.0/prologue.eagle.
182 183 184 185 186 187 188 189 190 191 192 193 194 195 ... 257 258 259 260 261 262 263 264 265 266 267 268 269 270 ... 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 ... 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 .... 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 |
set test_flags(-match) [list *]; # default to running all tests. set test_flags(-skip) [list]; # default to skipping no tests. set test_flags(-constraints) [list]; # default to no manual constraints. set test_flags(-logFile) ""; # default to using standard log file naming. set test_flags(-threshold) ""; # default to requiring all tests to pass. set test_flags(-stopOnFailure) ""; # default to continue on failure. set test_flags(-exitOnComplete) ""; # default to not exit after complete. # # NOTE: Check for and process any command line arguments. # if {[info exists argv]} then { eval processTestArguments test_flags $argv ................................................................................ # NOTE: Set the log to use for test output, if necessary. # if {![info exists test_log]} then { set test_log [file join [getTemporaryPath] [file tail [info \ nameofexecutable]][getTestLogId].test.[pid].log] } } # # NOTE: Check for and process any custom test prologue script that may be set # in the environment. This must be done after the Eagle test package # has been made available and after the log file has been setup. # sourceIfValid prologue [getEnvironmentVariable testPrologue] ................................................................................ # NOTE: For test "function-1.1". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestAddFunction* checkForObjectMember $test_channel Eagle._Tests.Default \ *TestRemoveFunction* } # # NOTE: Has write-box testing support been disabled? # if {![info exists no(testWriteBox)]} then { # # NOTE: For tests "debug-5.*". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestWriteBox* } # # NOTE: Has core marshaller testing support been disabled? # if {![info exists no(testMarshaller)]} then { # # NOTE: For test "object-2.1". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestComplexMethod* # ................................................................................ checkForObjectMember $test_channel Eagle._Tests.Default \ *TestStringListArrayReturnValue* checkForObjectMember $test_channel Eagle._Tests.Default \ *TestByRefStringListArray* # # NOTE: For tests "object-14.4" and "object-14.5". # checkForObjectMember $test_channel Eagle._Tests.Default \ *StaticObjectProperty* # # NOTE: For test "object-14.6". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TypeProperty* # # NOTE: For test "basic-1.29". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestExecuteStaticDelegates* # # NOTE: For tests "basic-1.30" and "basic-1.31". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestExecuteDelegateCommands* # # NOTE: For test "object-7.2" and "object-7.4". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestNullArray* checkForObjectMember $test_channel Eagle._Tests.Default \ *TestOutArray* } } # # NOTE: Has Excel testing support been disabled? # if {![info exists no(excel)]} then { ................................................................................ if {![info exists no(shell)]} then { checkForShell $test_channel } if {![info exists no(debug)]} then { checkForDebug $test_channel } # # NOTE: Has native code detection support been disabled? # if {![info exists no(native)]} then { checkForNativeCode $test_channel } |
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > < < < < < < < < < < < < < < < < < < < < < > > > > > > > |
182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 ... 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 ... 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 ... 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 .... 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 |
set test_flags(-match) [list *]; # default to running all tests. set test_flags(-skip) [list]; # default to skipping no tests. set test_flags(-constraints) [list]; # default to no manual constraints. set test_flags(-logFile) ""; # default to using standard log file naming. set test_flags(-threshold) ""; # default to requiring all tests to pass. set test_flags(-stopOnFailure) ""; # default to continue on failure. set test_flags(-exitOnComplete) ""; # default to not exit after complete. set test_flags(-preTest) ""; # default to not evaluating anything. set test_flags(-postTest) ""; # default to not evaluating anything. # # NOTE: Check for and process any command line arguments. # if {[info exists argv]} then { eval processTestArguments test_flags $argv ................................................................................ # NOTE: Set the log to use for test output, if necessary. # if {![info exists test_log]} then { set test_log [file join [getTemporaryPath] [file tail [info \ nameofexecutable]][getTestLogId].test.[pid].log] } } # # NOTE: Evaluate the specified pre-test script now, if any. # if {[info exists test_flags(-preTest)] && \ [string length $test_flags(-preTest)] > 0} then { # # TODO: Perhaps use [uplevel] here instead of [eval]. For now, it does not # matter since we enforce this file being evaluated at the top-level. # eval $test_flags(-preTest) } # # NOTE: Check for and process any custom test prologue script that may be set # in the environment. This must be done after the Eagle test package # has been made available and after the log file has been setup. # sourceIfValid prologue [getEnvironmentVariable testPrologue] ................................................................................ # NOTE: For test "function-1.1". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestAddFunction* checkForObjectMember $test_channel Eagle._Tests.Default \ *TestRemoveFunction* # # NOTE: For tests "function-5.*". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestAddNamedFunction* checkForObjectMember $test_channel Eagle._Tests.Default \ *TestRemoveNamedFunction* } # # NOTE: Has write-box testing support been disabled? # if {![info exists no(testWriteBox)]} then { # # NOTE: For tests "debug-5.*". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestWriteBox* } # # NOTE: Has shell testing support been disabled? # if {![info exists no(testShell)]} then { # # NOTE: For test "debug-1.3". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestShellMainCore* } # # NOTE: Has IDisposable testing support been disabled? # if {![info exists no(testDisposable)]} then { # # NOTE: For test "object-2.8". # checkForObjectMember $test_channel Eagle._Tests.Default+Disposable \ *ToString* Eagle._Tests.Default.Disposable.ToString } # # NOTE: Has core marshaller testing support been disabled? # if {![info exists no(testMarshaller)]} then { # # NOTE: For test "basic-1.29". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestExecuteStaticDelegates* # # NOTE: For tests "basic-1.30" and "basic-1.31". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestExecuteDelegateCommands* # # NOTE: For test "object-2.1". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestComplexMethod* # ................................................................................ checkForObjectMember $test_channel Eagle._Tests.Default \ *TestStringListArrayReturnValue* checkForObjectMember $test_channel Eagle._Tests.Default \ *TestByRefStringListArray* # # NOTE: For tests "object-7.2" and "object-7.4". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestNullArray* checkForObjectMember $test_channel Eagle._Tests.Default \ *TestOutArray* # # NOTE: For test "object-7.5". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TestEnum* checkForObjectMember $test_channel Eagle._Tests.Default \ *TestByRefEnum* checkForObjectMember $test_channel Eagle._Tests.Default \ *TestNullableEnum* checkForObjectMember $test_channel Eagle._Tests.Default \ *TestByRefNullableEnum* # # NOTE: For tests "object-14.4" and "object-14.5". # checkForObjectMember $test_channel Eagle._Tests.Default \ *StaticObjectProperty* # # NOTE: For test "object-14.6". # checkForObjectMember $test_channel Eagle._Tests.Default \ *TypeProperty* } } # # NOTE: Has Excel testing support been disabled? # if {![info exists no(excel)]} then { ................................................................................ if {![info exists no(shell)]} then { checkForShell $test_channel } if {![info exists no(debug)]} then { checkForDebug $test_channel } # # NOTE: Has Tk testing support been disabled? # if {![info exists no(tk)]} then { checkForTk $test_channel } # # NOTE: Has native code detection support been disabled? # if {![info exists no(native)]} then { checkForNativeCode $test_channel } |