parrt
ae1bc4cafe
add new test for all runtimes for issue #1295
2016-11-19 12:48:09 -08:00
parrt
d0620a65f5
Merge branch 'issue#1295' of git://github.com/harriman/antlr4-updates into harriman-issue#1295
2016-11-19 12:05:32 -08:00
parrt
0ffb0310d2
rm dead code
2016-11-17 13:06:20 -08:00
parrt
c5acec19db
Move what used to be AfterGrammar template from a test in legacy runtime tests to tool test and remove from runtime test functionality.
2016-11-17 13:05:34 -08:00
parrt
02a35589fe
check errors before output value in tests
2016-11-17 11:16:37 -08:00
Kurt Harriman
ab8d17472f
ANTLR4 generated incorrect code to access return value of recursive rule
...
Incorrect code was generated for $e.v in a rule like this one:
e returns [int v] ::=
INT {$v = $INT.int;}
| '(' e ')' {$v = $e.v;}
;
After parsing "(99)" the result would have v == 0 instead of 99.
2016-11-16 22:38:11 -08:00
parrt
9675c822a9
update doc, add lock so antlr used atomically in unit tests so we can run in parallel.
2016-11-16 15:42:45 -08:00
Eric Vergnaud
c35aec6ffe
optionally delegate assertEquals to RuntimeTestSupport delegate, to enable target specific assertXxx behaviour
2016-11-17 01:11:24 +08:00
parrt
d534efdf9a
update doc on the runtime test mechanism. change the name of BaseDebugParserTestDescriptor to BaseDiagnosticParserTestDescriptor.
2016-11-15 14:25:28 -08:00
parrt
a7ecf0332f
rename the SingleTest class and and Java doc. make errors="" actually set to null to be more clear.
2016-11-15 13:42:57 -08:00
parrt
08e9776a4a
shift template-based runtime test to legacy, new mechanism uses annotation to get multi-line strings into java. all tests pass minus about 15 in C#
2016-11-15 11:08:19 -08:00
parrt
7f16fe6201
alter test so it works with all targets
2016-11-07 15:02:57 -08:00
parrt
b8ac1ebb3b
unignore 2 tests for Go
2016-11-07 14:24:46 -08:00
parrt
5fc57fb0b2
Go needs to mimic other tests; regenerated.
2016-11-07 14:09:31 -08:00
parrt
01e3ffa7e5
optimize imports.
2016-11-07 14:01:10 -08:00
parrt
b366a8405c
fix some issues with tests after merge
2016-11-07 13:20:16 -08:00
parrt
3ee3093f88
fix some issues with tests after merge
2016-11-07 13:06:16 -08:00
Mike Lischke
92b032820e
Merge branch 'master_upstream'
2016-11-07 11:19:12 +01:00
Mike Lischke
3b3fe3da57
Merge branch 'master_upstream'
...
Had to resolve a number of conflicts + added code required for the C++ target to generate header files, after the recent changes in the main repo.
2016-11-07 11:16:02 +01:00
parrt
e5ec462e22
Fixes #1337 . Add's sync() call back to LL(1) decisions; all targets updated (causing failed test in Go). Altered test for new output of errors. regen'd tests.
2016-11-06 09:45:40 -08:00
Mike Lischke
cd5744b83f
Fixed runtime tests after latest changes.
2016-11-06 11:32:28 +01:00
parrt
95c850e5f8
set version in prep for 4.6
2016-11-05 16:48:36 -07:00
parrt
bcfa70c4e8
test templates were missing visitor-related templates. slight improvement to test generator.
2016-11-05 16:26:01 -07:00
Peter Boyer
fc35818c52
Update import statements after merge
2016-11-05 16:36:53 -04:00
Peter Boyer
37631d1197
Regen runtime-testsuite
2016-11-05 16:27:12 -04:00
parrt
62badff2e8
Pull again from parrt's branch 'model-updates-for-new-targets'. tests pass.
2016-11-05 09:30:46 -07:00
parrt
6d022379bc
Pull in parrt's branch 'model-updates-for-new-targets' which appears to have freshened some non Go stuff as well. Simplify Go filename construction.
2016-11-05 08:48:37 -07:00
Mike Lischke
5e9211b093
Re-enabled all tests again.
2016-11-05 16:35:34 +01:00
Mike Lischke
e71e95080a
Merge branch 'master_upstream'
...
Also updated the list of ignored tests in the Cpp.test.stg file (lke it is done for the other targets).
2016-11-05 15:07:59 +01:00
parrt
95dbf7b44b
look for go in path during tests
2016-11-04 16:06:41 -07:00
Peter Boyer
2444386091
Remove JavaScript PORT_DEBUG, re-enable runtime tests for other language targets ( #69 )
...
* Re-enable runtime tests for other language targets
* Fix typo in js code
* Remove PORT_DEBUG statements
* Fix missing
* Fix testAltNum
2016-10-13 17:06:22 -04:00
parrt
4312b37828
pull test changes in
2016-10-13 10:58:19 -07:00
Christian Gudrian
29c1a9f222
removed reference to local node installation
2016-10-12 15:56:40 +02:00
Peter Boyer
42347c078b
Fix merge failure
2016-10-12 09:53:43 -04:00
Peter Boyer
60662c4b70
Fix remaining tests ( #64 )
...
* Fix pred context typo
* Adjust array lengths
* PositionAdjustLexer test fix first steps
* allow virtual method calls from Lexer
* Hopefully fix issues with dup namedActions
* Make parser members
* Fix testParserProperty
* Fix LeftRecursion test failures
2016-10-12 09:49:42 -04:00
Christian Gudrian
e5bab64e4b
ignoring the visitors tests for Java, C# and Python
...
The template implementations for these languages is pending.
2016-10-06 22:53:25 +02:00
Christian Gudrian
4842e61a06
generated test sources
2016-10-06 22:53:16 +02:00
Christian Gudrian
cb590334bb
the visit methods now return a value
2016-10-06 22:52:19 +02:00
Christian Gudrian
eb292adb18
implemented templates for the JavaScript visitors
2016-10-06 22:52:19 +02:00
Christian Gudrian
a90c9d6669
started work at the Visitors templates by making a copy of the Listener templates
2016-10-06 22:46:54 +02:00
Peter Boyer
499d9d3f89
Print test arrays in java style ( #50 )
...
* Print string rule invocation stack array in java style
* regen runtime tests
* Another array print fix
* Fixes to print array of terminal nodes:
* regen tests
2016-10-05 14:52:42 -04:00
Mike Lischke
a7b9499230
Code generation + Travis CI fixes.
...
- Had to adjust a comparison <= 0 to the new unsigned EOF.
- For testing: extended the runtime tests to all C++ tests.
- Install uuid-dev in Travis CI in order to be able to build the C++ runtime.
2016-10-03 11:25:02 +02:00
Mike Lischke
8280beb564
Refactoring of further int values, mostly converting them to size_t.
...
- Switched most symbolic signed constants to unsigned variants. Redefined EOF in particular to become (size)-1, to avoid having to use signed token type values.
- Introduced INVALID_INDEX for all previous -1 values to indicate e.g. not found indexes etc.
- Added 2 helpers to convert between symbolic and numeric form (mostly for intervals and toString()).
- Removed many no longer needed type casts to size_t.
- Updated templates for these changes.
- Limited runtime tests to C++ tests only, to see how Travis CI copes with that.
2016-10-02 16:51:57 +02:00
Mike Lischke
de4df872fe
Updates to get all tests green again.
...
- Had to take back some of the message beautifying, as this won't match expected runtime test output.
- Updated C++ test stg file for recent runtime changes. Regenerated tests (only one file changed actually).
- Reworked C++ test preparation. The C++ runtime is now built on first invocation of a test. This works only on Linux + OSX/macOS. Windows needs extra handling.
2016-10-01 12:43:31 +02:00
runner
1b2b954500
auto locate go path on the windows
2016-10-01 11:45:28 +08:00
Mike Lischke
3b98c1136e
Merge branch 'master_upstream'
2016-09-25 11:31:51 +02:00
Andreas Jonson
6e780c90bb
update the runtime paths to work in windows
...
the old paths contained a / at the beginning of the path e.g. "/C:/" but the expected path is "C:/" and due to this all test for the targets javascript, python and c# failed on windows.
2016-08-19 23:27:08 +02:00
Peter Boyer
28e013e687
Merge pull request #37 from willfaught/elist
...
Fix LRWithLabelsListener to call EList.String
2016-07-18 09:53:26 -04:00
Peter Boyer
faeb00a682
Merge pull request #38 from willfaught/strings
...
Fix ParserErrors.testContextListGetters to print strings
2016-07-18 09:52:28 -04:00
Will Faught
5feca3e334
Fix ParserErrors.testContextListGetters to print strings
2016-07-06 10:57:37 -07:00
Will Faught
edbf3225ef
Fix LRWithLabelsListener to call EList.String
2016-07-06 10:19:25 -07:00
Will Faught
a05dea54ec
Fix test case build errors
2016-07-06 09:02:42 -07:00
Mike Lischke
f6515e5aaf
A few adjustments in doc + runtime tests for the changed library name + input stream handling.
2016-06-21 17:25:39 +02:00
Mike Lischke
3b5b400d03
A few fixes for the previous listener change.
...
Also fixed runtime tests again.
2016-06-17 11:27:52 +02:00
Mike Lischke
4a7ec859aa
Simplified parse tree listener handling.
...
No need to use shared_ptr for management. Listeners are, like the other main classes (parser, lexer, input stream etc.) provided by the application and hence managed there.
2016-06-17 10:22:19 +02:00
Will Faught
c9ac8a6c61
Generate Go tests
2016-06-16 23:29:10 -07:00
Will Faught
c72ef6383e
Clean up Go test templates
2016-06-16 23:27:47 -07:00
Will Faught
80f99b50da
Fix Property calls in generated Go tests
2016-06-16 23:20:52 -07:00
Will Faught
4e560db250
Fix SetErrorHandler and NewBailErrorStrategy calls in generated Go tests
2016-06-16 23:20:52 -07:00
Will Faught
40b7e1bf12
Fix parser tokens in generated Go tests
2016-06-16 23:20:45 -07:00
Mike Lischke
dd48c0fbd5
A few final touches to make runtime tests passing.
2016-06-16 11:20:42 +02:00
Mike Lischke
4a8010b4eb
Revert "A few more places that no longer pass a shared_ptr around."
...
This reverts commit 728af59528
.
2016-06-15 13:30:37 +02:00
Mike Lischke
728af59528
A few more places that no longer pass a shared_ptr around.
2016-06-14 15:17:23 +02:00
Mike Lischke
b9c28d8c9c
Signficantly simplified Token handling.
...
In order to lower the overhead when passing around Token instances via smart pointers and because the ownership is clear (token streams own them), these instances can be passed as raw pointers.
2016-06-13 13:12:02 +02:00
Mike Lischke
b8fcb5f30d
More performance increase for C++ target (25% now).
...
All shared_ptr<> now use const& for function parameters to avoid constant copies + locks. Ownership and lifetime control is still ensured by the owning containers. Code templates have been updated as well.
2016-06-09 12:02:30 +02:00
Mike Lischke
a4bc611fd5
Changed namespaces + fixed runtime tests.
...
- Changed namespace chain (org::antlr::v4::runtime) to just antlr4 in all files.
- Fixed runtime tests for that.
- Added conversion of the xpath code, which compiles now (no tests, tho, as there are runtime tests for it).
- Removed TestRig stuff. That doesn't work in C++.
2016-06-06 15:55:27 +02:00
Wolfgang Johannes Kohnen
f8f872bfc9
runtime-testsuite/Go: fix recursion
2016-06-06 08:12:50 +02:00
Wolfgang Johannes Kohnen
bf7cc8ce80
runtime-testsuite/Go: Cache Go test environment and make it self-contained.
...
* "go install" the Go runtime inside a temporary GOPATH directory.
* Remove unnecessary GOPATH variable elements.
* Change some instances of stringly typing to strongly typing.
* Remove a few pointless indirections.
* Cleanup erase helper methods, make eraseFiles (eraseDirectory)
static and recursive (used by @AfterClass as well).
* Other minor cleanups.
* => this works on travis now and is about twice as fast! :)
2016-06-05 21:52:53 +02:00
Mike Lischke
73248ac2e3
Some changes in the C++ target doc + a some template fixes.
...
- Avoiding double semicolons is tricky with the kind of rule nesting. Previous changes for that caused the tests to break as there were semicolons missing then.
- VS complained about the shift code generated using 1L as base, which is signed. Changed that to 1ULL, which is what is actually intended.
- Reverted the change to avoid a warning in RuleSempredFunction() in Cpp.stg as the fix didn't work 100%. We need a different solution.
2016-06-05 14:35:11 +02:00
Mike Lischke
ac664a91b8
A few more fixes.
2016-06-02 17:32:19 +02:00
Mike Lischke
b7ade0ade1
TestParseTrees + TestSemPredEvalLexer C++ test groups pass now.
2016-06-02 12:22:24 +02:00
Mike Lischke
be2e71130a
TestListeners C++ tests pass now.
...
- Needed a few adjustments in the test templates for this, which required to change target test templates for all other languages too.
2016-06-02 10:18:19 +02:00
Mike Lischke
28ccc4962b
TestParseTrees passes now.
2016-06-01 15:20:11 +02:00
Mike Lischke
6bf1193839
All tests of TestLeftRecursion.java now pass.
...
- Fixed all disabled tests and enabled them.
- Some more adjustments of the test template + target template was needed.
- Worked on semicolon usage in Cpp.stg to avoid double semicolons. Might need more work, tho.
2016-06-01 12:08:13 +02:00
Mike Lischke
86014ac3a6
TestParserExec tests pass now.
...
- A few more adjustments to make this test group pass.
- Fixed a few issues in C++ runtime as well.
2016-06-01 10:22:48 +02:00
Mike Lischke
814a1821be
TestParserErrors passes now.
...
Fixed a bug in the Cpp.stg file where more input was consumed than should be.
2016-05-30 16:27:12 +02:00
Mike Lischke
08f844af0e
Fixed 2 problems found by runtime tests.
...
- TestLexerExce group passes now.
- Reverted wrong removal of action text output that prevent named actions from showing up properly.
2016-05-29 16:47:51 +02:00
Mike Lischke
815bb95982
TestLeftRecursion passes, but with some disabled tests.
...
There are a number of disabled tests that need extra work (all because of target specific action code).
2016-05-29 12:17:29 +02:00
Wolfgang Johannes Kohnen
4fd4e51810
runtime-testsuite/go: Make path construction slightly more robust.
...
* also piggy back a typo fix.
2016-05-28 11:15:14 +02:00
Wolfgang Johannes Kohnen
f2dc9f476b
runtime-testsuite/Go: timeout tests, honour GOROOT
2016-05-27 22:56:56 +02:00
Mike Lischke
a0665677c1
Lots of fine tuning to get more tests passing.
2016-05-27 22:38:42 +02:00
Will Faught
a0314a8946
Change File.separator to File.pathSeparator
2016-05-27 11:26:38 -07:00
Will Faught
7e8fb7a7f3
Handle empty current GOPATH when setting GOPATH
2016-05-27 11:05:16 -07:00
Will Faught
9562d87d49
Change willfaught/antlr4 to pboyer/antlr4
2016-05-26 23:43:43 -07:00
Will Faught
3434e802be
Fix test GOPATH env var to include current GOPATH
...
Also:
- Change "antlr4" imports to "github.com/antlr/antlr4/runtime/Go/antlr"
- Remove parser prefix from Property and pred calls
- Change TParser.X tokens to TParserX
2016-05-26 23:37:25 -07:00
Will Faught
34877767c1
Change package alias antlr4 to antlr
2016-05-26 23:31:19 -07:00
Mike Lischke
657be5f1ac
Fixed generation code for lexer tests.
2016-05-25 13:36:52 +02:00
David Sisson
b1b8de748a
Fixed a number of issues in the generated tests. Many more to go.
2016-05-24 19:17:50 -07:00
David Sisson
bebb63a126
Updated generation a bit.
2016-05-24 11:44:43 -07:00
David Sisson
3e21e0b6e3
Regenerate all of the tests with the latest test generation template.
2016-05-24 08:30:50 -07:00
David Sisson
b920bb7011
Added run support to the test runner.
2016-05-24 02:00:15 -07:00
David Sisson
b3a17b00a2
Set up so we compile link all of the files in the test directory. Does not run the binary afterwards, but that's because there's still a print being generated somewhere (and I have no idea where it's coming from).
2016-05-24 01:44:17 -07:00
Wolfgang Johannes Kohnen
b6f384bf3c
runtime test/Go: Use $PATH and $GOROOT to find go executable.
2016-05-23 11:11:53 +02:00
Mike Lischke
7d69f24201
Small corrections to make the test module compile.
2016-05-22 19:15:36 +02:00
David Sisson
c8e60b7fe0
Down to one issue -- tree::ParseTree and tree:RuleNode aren't related as they are in some tests. Need to find either the right relationship or come up with an alternative test.
2016-05-21 15:59:22 -07:00
David Sisson
ae4dcbabbd
properly escape templates
2016-05-20 22:15:48 -07:00
David Sisson
6aa03ed9a2
attempts compilation
2016-05-20 22:14:28 -07:00
David Sisson
9920efd353
More updates to the C++ test runner.
2016-05-09 21:45:14 -07:00
David Sisson
db6f3c983d
Added the start of linker support.
2016-05-09 20:53:33 -07:00
David Sisson
a212755734
Cleaned up the test runner.
2016-05-08 21:27:40 -07:00