tests/helper/token-stream-transformer.js


Log

Author Commit Date CI Message
Michael Schmidt 3c61c8f7 2021-10-14T14:01:11 ESLint: Added `regexp/no-useless-flag` rule (#3150)
Michael Schmidt b03e7eb0 2021-04-17T22:30:39 ESLint: Added semi rule (#2836)
Michael Schmidt 9cae4461 2021-04-17T22:26:40 ESLint: Added quotes rule (#2835)
Michael Schmidt 5bc405e7 2021-04-03T11:30:37 Tests: Fixed pretty print incorrectly calculating print width (#2821)
Michael Schmidt 4c8b855d 2021-04-03T11:06:21 Tests: Added `--insert` and `--update` parameters to language test (#2809)
Michael Schmidt 8bfcc819 2020-11-21T01:17:39 Tests: Better pretty print (#2600) This is a major improvement for the pretty-printer. The main change is that `TokenStreamTransformer.prettyprint` now takes a Prism token stream instead of a simplified token stream. This means that it has a lot more information to work with and it uses that information. It mostly behaves like the old pretty-printer with 3 main differences: 1. Tokens that contain a nested token stream that only contains a single string are printed as one line. Example: `["namespace", ["java"]]` 2. The pretty-printer can now glue tokens together so that they are printed in a single line. Example: `["number", "100"], ["operator", ".."], ["number", "100"]` 3. Line breaks in the input code may now cause empty lines in the output. Previously, only blank strings containing more at least 2 line breaks produce empty lines. This helps readability as it groups tokens together.
Michael Schmidt 681adeef 2020-06-28T03:16:17 Add extra newlines in pretty token streams (#2070) The formatter for the simplified token streams of our test cases will now emit extra (empty) newlines if the tested code also has an empty line at those positions.
Michael Schmidt e864d518 2019-08-29T23:24:17 Core: Fixed greedy targeting bug (#1932) The `target` parameter defines the token which causes rematching. Rematching is done by recursively calling `matchGrammar` where `target` will be the current token name. The rematching is done if either a match was found or we reached the target token, whatever comes first. The bug is that a token is identified by its name. But the name alone doesn't uniquely identify a token in a grammar because many tokens can have the same name (array). This fixes this bug.
Michael Schmidt 832a9643 2019-03-10T21:30:58 Refactored tests (#1795) This refactors all test related JS files.
Michael Schmidt 9ea6d600 2019-03-10T18:55:23 Tests: Pretty-printed token stream (#1801) This adds support for pretty-printed token streams in the output of error messages.
Jannik Zschiesche 1e0b8d9d 2015-07-26T14:08:47 Fixed code style issues
Jannik Zschiesche f05e0797 2015-07-15T20:01:39 Updated simplification of token stream It now strips empty values
Jannik Zschiesche 3a3cd268 2015-07-15T19:35:07 Extract simplification of token stream Pull the token stream transformation out of the test case into its own component.