Add a self-contained all-round test suite#317
Open
TetzkatLipHoka wants to merge 1 commit into
Open
Conversation
Tests/PascalScriptTestSuite.dpr consolidates the probe programs that were written while triaging issues remobjects#198/remobjects#246/remobjects#255/remobjects#296 and the compatibility, interface, COM, DLL, wide-string, record and p-char work into one console program with PASS/FAIL/SKIP verdicts, a summary line and a CI-friendly exit code. The same source runs against ANY tree state: script-language features are detected at run time by test-compiling snippets, optional host APIs are gated with {$IF DECLARED}, platform differences use plain conditionals, and expectations adapt to SizeOf(TbtChar). Checks for behavioral fixes are probed: on a tree without the fix they report SKIP with the observed misbehavior; with -strict those probe-skips become failures so CI catches regressions on fixed trees. Compiles with Delphi 7 through 12 (Win32/Win64) and FPC 3.2.2 (-Mdelphi, also on Linux). See Tests/README.md for one-liners, the section list, the skip philosophy and current reference numbers per tree. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Tests/PascalScriptTestSuite.dpr consolidates the probe programs that were
written while triaging issues #198/#246/#255/#296 and the compatibility,
interface, COM, DLL, wide-string, record and p-char work into one console
program with PASS/FAIL/SKIP verdicts, a summary line and a CI-friendly exit
code.
The same source runs against ANY tree state: script-language features are
detected at run time by test-compiling snippets, optional host APIs are
gated with {$IF DECLARED}, platform differences use plain conditionals, and
expectations adapt to SizeOf(TbtChar). Checks for behavioral fixes are
probed: on a tree without the fix they report SKIP with the observed
misbehavior; with -strict those probe-skips become failures so CI catches
regressions on fixed trees.
Compiles with Delphi 7 through 12 (Win32/Win64) and FPC 3.2.2 (-Mdelphi,
also on Linux). See Tests/README.md for one-liners, the section list, the
skip philosophy and current reference numbers per tree.
The suite runs against ANY tree state: missing language features are SKIPped (detected by test-compiling snippets), probe-detected broken behavior is reported as SKIP with the observation, and
-strictturns those probe-skips into failures for CI use on a fixed tree. See Tests/README.md for the section list and current reference numbers (this vanilla tree: 93 checks, 70 pass, 23 skip, exit code 0).🤖 Generated with Claude Code