Commit Graph

71 Commits

Author SHA1 Message Date
Romain Delamare d92f8d545d
rename test case to better describe error 2025-02-25 17:54:55 +01:00
Bram Gotink ee79f9f755
Escape U+200E and U+200F (#506)
Fixes #502
2025-02-18 15:18:18 -08:00
Lars Willighagen 84911feb11
Remove mandatory node-space before slashdash and children block (#499)
* Remove mandatory node-space before slashdash

Fix #495

* Add tests

* Fix more tests

* Fix tests again
2025-01-28 16:48:09 -08:00
Bram Gotink c54ebd9473
Align test formatting (#501)
Other tests don't have quotes around strings if the string
is a valid identifier, this test is the odd one out.
2025-01-28 16:45:14 -08:00
Kat Marchán aab44fcd1b
minor tweaks to wording/clarifications (#484) 2025-01-22 16:52:12 -08:00
Evgeny d76063e8e9
Exclude hex above max Unicode Scalar Value (#456)
* Exclude hex above max Unicode Scalar Value

simplify surrogate regex to use ranges

* allow leading 0s, but still limit max length to 6

* Add explicit regex-set rules to hex unicode

document {1,3} ranges

* add space-separators between sets

* Make test fail *only* for length limits

Previously it failed due to specifying a codepoint past max *as well*, obscuring the intended fail condition.

---------

Co-authored-by: Tab Atkins Jr. <jackalmage@gmail.com>
2025-01-21 09:16:45 -08:00
Tab Atkins-Bittner 7322f37800 Add the compact form of html-standard.kdl as a secondary benchmarking point. 2025-01-20 17:29:13 -08:00
Tab Atkins Jr. 23159696d1
Add the html standard, in kdl format, as a large-document benchmark. (#488)
* Add the html standard, in kdl format, as a large-document benchmark.

* Explain the purpose of the benchmarks
2025-01-18 08:58:43 -08:00
Tab Atkins Jr. 0c2dde6d3c
Support empty multiline strings (#483)
* Support empty multiline strings

Per <https://github.com/kdl-org/kdl/discussions/481>, the grammar doesn't actually allow the first and last newline in a multiline string to be the same (indicating an empty string). This looks like the minimal fix for it.

* Add tests for empty multilines

* remove accidental newline
2025-01-17 16:28:52 -08:00
Evgeny 9c9d2b2445
test: add a fail-test braces in bare ids (#477)
or a child block without space separator

current test is inadequate as it has extra fail that can mask this one
2025-01-12 09:17:44 -08:00
Evgeny 3c1cf4f2a1
test: add a fail-test for escaped non Unicode Scalar Values (#452)
* test: add a fail-test for escaped non Unicode Scalar Values

* test: split multiple codepoints into 1 per file
2024-12-24 00:14:24 -08:00
Bram Gotink 646dafcd35
update vertical tab test (#449) 2024-12-23 11:49:12 -08:00
Kat Marchán 6ceecd85d6
Release KDL 2.0.0 (#434)
* Release KDL 2.0.0

* fix grammar for multiline quoted strings to allow escaped whitespace on closing line

* Add unicode-space to raw string

* Remove nonexistent equals-sign from the grammar (#435)

* fix multiline string tests

* grammar: fix disallowed-keyword-identifiers and string-character (#436)

* Back out "fix multiline string tests"

This backs out commit 0c5604b462.

* add extra javascript implementation (#437)

* reword interaction multiline + whitespace escape (#439)

* More tests for backslash behaviour (#438)

* More tests for baskslash behaviour

* Incorrect example of escaped final newline

* Test with non-literal indent

* Make line-space a superset of node-space (#440)

* Allow escline everywhere

* escline tests

* Always escape \ inside single quotes in the grammar text (#441)

to match the other uses of it and the metalanguage description below

* Add tests for mandatory whitespace between arguments or properties (#442)

* Add an optional version marker (#444)

* Add version marker to the grammer

* Add version marker to the Changelog

* Update SPEC.md

Co-authored-by: eilvelia <hi@eilvelia.cat>

* add a mandatory newline after the version marker

* add mandatory space between version number

---------

Co-authored-by: eilvelia <hi@eilvelia.cat>

* Fix a changelog line erroneously truncated in #444 (#445)

* fix: move vertical tab to the line-breaking whitespace to match Unicode (#446)

* add vertical tab change test

* final tweaks before release

---------

Co-authored-by: eilvelia <hi@eilvelia.cat>
Co-authored-by: Bram Gotink <bram@gotink.me>
Co-authored-by: Thomas Jollans <tjol@tjol.eu>
Co-authored-by: Evgeny <eugenesvk@users.noreply.github.com>
2024-12-21 18:33:50 -08:00
Thomas Jollans b82c924013
More tests for whitespace in multi-line strings (#432)
* More tests for whitespace in multi-line strings

* replace \r\n with \n in slashdash_newline_before_node.kdl
2024-12-12 13:15:04 -08:00
Kat Marchán 717e86cb1c
went over tests and tweaked a few things (#431) 2024-12-11 19:45:25 -08:00
Tab Atkins Jr. ebef8751c0
fix multiline_string_whitespace_only, closes #429
ws-only lines don't contribute *any* content to the string (beyond their existence as a newline)
2024-12-11 18:16:00 -08:00
Kat Marchán 171bc71f42
Allow node-space after slashdash and add a bunch more slashdash tests (#427)
Fixes: https://github.com/kdl-org/kdl/issues/426
2024-12-10 20:43:58 -08:00
Thomas Jollans 75a0869a6c
Clarify raw single-line string grammar (#425) 2024-12-10 16:45:35 -08:00
Tab Atkins Jr. a60d27c99d
KDL documents always end in a newline
In particular, other empty-document tests have an expected result containing one newline, like slashdash_full_node
2024-12-10 15:55:21 -08:00
Thomas Jollans ee41a76357
Additional test cases for slashdash and multi-line strings (#422) 2024-12-08 09:32:21 -08:00
Thomas Jollans 831ecc1d52
Allow quotes in multi-line strings (#419)
Fixes: https://github.com/kdl-org/kdl/issues/415
2024-12-08 01:07:31 -08:00
Tab Atkins Jr. 29ae90e9f5
Indicate expected-fail tests with a _fail suffix. Fixes #365 (#418)
* Indicate expected-fail tests with a _fail suffix. Fixes #365

* Update the README with directions for formatting failing tests

* Add a lint for failing and orphaned tests.
2024-12-06 15:06:28 -08:00
Kat Marchán eaa6c40693
fix more multiline string tests that were missed before 2024-12-04 13:08:37 -08:00
Kat Marchán 5971e61eda
fix up some multiline string tests 2024-12-04 00:48:43 -08:00
Kat Marchán e7b5ec6bf9
unambiguous multiline strings (#414)
Fixes: https://github.com/kdl-org/kdl/issues/413
2024-12-03 23:44:40 -08:00
Emi 40aac6602e
Normalize space in expected output of unicode_silly (#412) 2024-12-02 00:06:46 -08:00
Emi 073d07748a
[tests] [bug] test unicode_silly's input data is a .kd file (#410) 2024-12-01 15:26:00 -08:00
Kat Marchán 8b2a019998
merge kdl-v2 branch into main 2024-11-29 00:11:01 -08:00
Kat Marchán 90e22bc789
[v2] more predictable slashdash (#407)
Fixes: https://github.com/kdl-org/kdl/issues/401
2024-11-28 22:53:42 -08:00
Kat Marchán 1588b1f5fd
get rid of syntactically significant unicode equals signs (#400)
Fixes: #399
2024-11-28 22:39:19 -08:00
Samuel Giddins d8d583a45e
Create test for unterminated_empty_node (#405) 2024-11-07 11:28:06 -08:00
Bram Gotink 9e7b958f0c
Ensure spec allows slashdash right after node separator (#382) 2024-02-18 13:18:50 -08:00
Kat Marchán dadcfdf2ae
Update tests/test_cases/expected_kdl/multiline_raw_string_indented.kdl
Co-authored-by: Dani Smith <danini@hey.com>
2024-02-15 12:03:25 -08:00
Kat Marchán 2fcf6d42d3
Update tests/test_cases/expected_kdl/multiline_string_indented.kdl
Co-authored-by: Dani Smith <danini@hey.com>
2024-02-15 12:03:18 -08:00
Kat Marchán fa816ca6df
add floats
Fixes: https://github.com/kdl-org/kdl/issues/374
2024-02-12 23:17:52 -08:00
Kat Marchán 631ec14059
allow /- at the very beginning of a document 2024-02-12 23:00:50 -08:00
Kat Marchán 522ce8591e
clarify multi-line strings further 2024-02-07 11:33:47 -08:00
Corey Powell 29495006bc
KDL V2 Test Fixes (#368)
* Add newlines to some of the bare ident tests that were missing them

* eof_after_escape.kdl is valid according to spec
2024-01-06 14:50:37 -08:00
Tab Atkins-Bittner af91cc6319 Add tests for .1 and general 'ident ambiguous with a number' cases. 2024-01-04 11:12:10 -08:00
Tab Atkins-Bittner de37e11a29 Comments are now allowed in and around types (along with other types of ws) 2023-12-26 14:58:49 -08:00
Tab Atkins-Bittner 094a615f82 Tests are invalid (contained U+FFFD, not surrogates) and are in general untestable since you can't represent surrogates in UTF-8, which KDL must be encoded in. 2023-12-26 14:36:48 -08:00
Tab Atkins-Bittner 1294f9733d Fix tests about # in an ident string 2023-12-26 14:31:49 -08:00
Tab Atkins-Bittner 935d054d13 Fix more multiline tests 2023-12-26 14:28:25 -08:00
Tab Atkins-Bittner f02ba59c0c Make multi-line ws prefix determined by the last line. 2023-12-26 14:19:45 -08:00
Kat Marchán d53d99ff2e
test fixes 2023-12-17 13:37:37 -08:00
Kat Marchán 511ab6b6ff
missed a spot 2023-12-17 10:01:42 -08:00
Kat Marchán 90cd0b1bb9
make unicodey equals signs valid property assignment characters 2023-12-16 16:09:13 -08:00
Kat Marchán b51859edf3
update tests
Fixes: https://github.com/kdl-org/kdl/issues/359
2023-12-16 14:44:32 -08:00
Kat Marchán 7790505bf9
Merge branch 'main' into kdl-v2 2023-12-12 23:44:10 -08:00
Hannah Kolbeck 6bab316b0f
Remove credit from test suite README (#304) 2022-09-29 09:50:14 -07:00