From 5267d35f4bb57cfa90daf3eb4d82271d2b48a493 Mon Sep 17 00:00:00 2001 From: pommicket Date: Tue, 9 Sep 2025 01:06:37 -0400 Subject: Improve schema API, more tests --- tests/errors/bad_escape1.pom | 1 + tests/errors/bad_escape2.pom | 1 + tests/errors/bad_escape_surrogate_half.pom | 1 + tests/errors/bad_escape_unicode_empty.pom | 1 + tests/errors/bad_escape_unicode_too_long.pom | 1 + tests/errors/bad_hex_escape.pom | 1 + tests/errors/bad_key6.pom | 1 + tests/errors/bad_key7.pom | 1 + tests/errors/bad_section1.pom | 2 ++ tests/errors/bad_section2.pom | 2 ++ tests/errors/bad_section3.pom | 2 ++ tests/errors/bad_section4.pom | 2 ++ tests/errors/bad_section5.pom | 2 ++ tests/errors/bad_section6.pom | 2 ++ tests/errors/missing_equals.pom | 1 + tests/errors/no_closing_backtick.pom | 1 + tests/errors/no_closing_bracket.pom | 1 + tests/errors/no_closing_quote.pom | 1 + tests/errors/stray_chars_backtick.pom | 1 + tests/errors/stray_chars_quote.pom | 1 + tests/errors/stray_cr.pom | 1 + tests/parsing/long_key.flat.pom | 2 ++ tests/parsing/long_key.pom | 3 +++ 23 files changed, 32 insertions(+) create mode 100644 tests/errors/bad_escape1.pom create mode 100644 tests/errors/bad_escape2.pom create mode 100644 tests/errors/bad_escape_surrogate_half.pom create mode 100644 tests/errors/bad_escape_unicode_empty.pom create mode 100644 tests/errors/bad_escape_unicode_too_long.pom create mode 100644 tests/errors/bad_hex_escape.pom create mode 100644 tests/errors/bad_key6.pom create mode 100644 tests/errors/bad_key7.pom create mode 100644 tests/errors/bad_section1.pom create mode 100644 tests/errors/bad_section2.pom create mode 100644 tests/errors/bad_section3.pom create mode 100644 tests/errors/bad_section4.pom create mode 100644 tests/errors/bad_section5.pom create mode 100644 tests/errors/bad_section6.pom create mode 100644 tests/errors/missing_equals.pom create mode 100644 tests/errors/no_closing_backtick.pom create mode 100644 tests/errors/no_closing_bracket.pom create mode 100644 tests/errors/no_closing_quote.pom create mode 100644 tests/errors/stray_chars_backtick.pom create mode 100644 tests/errors/stray_chars_quote.pom create mode 100644 tests/errors/stray_cr.pom create mode 100644 tests/parsing/long_key.flat.pom create mode 100644 tests/parsing/long_key.pom (limited to 'tests') diff --git a/tests/errors/bad_escape1.pom b/tests/errors/bad_escape1.pom new file mode 100644 index 0000000..f02020b --- /dev/null +++ b/tests/errors/bad_escape1.pom @@ -0,0 +1 @@ +no_trigraph = "a?\?=b" diff --git a/tests/errors/bad_escape2.pom b/tests/errors/bad_escape2.pom new file mode 100644 index 0000000..ae183cb --- /dev/null +++ b/tests/errors/bad_escape2.pom @@ -0,0 +1 @@ +vtab = "\v" diff --git a/tests/errors/bad_escape_surrogate_half.pom b/tests/errors/bad_escape_surrogate_half.pom new file mode 100644 index 0000000..d208923 --- /dev/null +++ b/tests/errors/bad_escape_surrogate_half.pom @@ -0,0 +1 @@ +x = "\u{D812}" diff --git a/tests/errors/bad_escape_unicode_empty.pom b/tests/errors/bad_escape_unicode_empty.pom new file mode 100644 index 0000000..eacd36d --- /dev/null +++ b/tests/errors/bad_escape_unicode_empty.pom @@ -0,0 +1 @@ +x = "\u{}" diff --git a/tests/errors/bad_escape_unicode_too_long.pom b/tests/errors/bad_escape_unicode_too_long.pom new file mode 100644 index 0000000..7a3374a --- /dev/null +++ b/tests/errors/bad_escape_unicode_too_long.pom @@ -0,0 +1 @@ +x = "\u{0000030}" diff --git a/tests/errors/bad_hex_escape.pom b/tests/errors/bad_hex_escape.pom new file mode 100644 index 0000000..c40ba2f --- /dev/null +++ b/tests/errors/bad_hex_escape.pom @@ -0,0 +1 @@ +capital_beta = "\xCE\x92" diff --git a/tests/errors/bad_key6.pom b/tests/errors/bad_key6.pom new file mode 100644 index 0000000..b690d02 --- /dev/null +++ b/tests/errors/bad_key6.pom @@ -0,0 +1 @@ +test key = 5 diff --git a/tests/errors/bad_key7.pom b/tests/errors/bad_key7.pom new file mode 100644 index 0000000..7647aca --- /dev/null +++ b/tests/errors/bad_key7.pom @@ -0,0 +1 @@ + = 4 diff --git a/tests/errors/bad_section1.pom b/tests/errors/bad_section1.pom new file mode 100644 index 0000000..310e60b --- /dev/null +++ b/tests/errors/bad_section1.pom @@ -0,0 +1,2 @@ +[ foo ] +x = 5 diff --git a/tests/errors/bad_section2.pom b/tests/errors/bad_section2.pom new file mode 100644 index 0000000..54f44c9 --- /dev/null +++ b/tests/errors/bad_section2.pom @@ -0,0 +1,2 @@ +[.foo] +x = 5 diff --git a/tests/errors/bad_section3.pom b/tests/errors/bad_section3.pom new file mode 100644 index 0000000..1e98c39 --- /dev/null +++ b/tests/errors/bad_section3.pom @@ -0,0 +1,2 @@ +[+] +x = 5 diff --git a/tests/errors/bad_section4.pom b/tests/errors/bad_section4.pom new file mode 100644 index 0000000..820d148 --- /dev/null +++ b/tests/errors/bad_section4.pom @@ -0,0 +1,2 @@ +[foo.] +x = 5 diff --git a/tests/errors/bad_section5.pom b/tests/errors/bad_section5.pom new file mode 100644 index 0000000..9b4815d --- /dev/null +++ b/tests/errors/bad_section5.pom @@ -0,0 +1,2 @@ +[foo..bar] +x = 5 diff --git a/tests/errors/bad_section6.pom b/tests/errors/bad_section6.pom new file mode 100644 index 0000000..4d97247 --- /dev/null +++ b/tests/errors/bad_section6.pom @@ -0,0 +1,2 @@ +[.] +x = 5 diff --git a/tests/errors/missing_equals.pom b/tests/errors/missing_equals.pom new file mode 100644 index 0000000..7e0466a --- /dev/null +++ b/tests/errors/missing_equals.pom @@ -0,0 +1 @@ +music is on diff --git a/tests/errors/no_closing_backtick.pom b/tests/errors/no_closing_backtick.pom new file mode 100644 index 0000000..09f5dde --- /dev/null +++ b/tests/errors/no_closing_backtick.pom @@ -0,0 +1 @@ +foo = `x diff --git a/tests/errors/no_closing_bracket.pom b/tests/errors/no_closing_bracket.pom new file mode 100644 index 0000000..2abea67 --- /dev/null +++ b/tests/errors/no_closing_bracket.pom @@ -0,0 +1 @@ +[foo diff --git a/tests/errors/no_closing_quote.pom b/tests/errors/no_closing_quote.pom new file mode 100644 index 0000000..42d51a4 --- /dev/null +++ b/tests/errors/no_closing_quote.pom @@ -0,0 +1 @@ +foo = "x diff --git a/tests/errors/stray_chars_backtick.pom b/tests/errors/stray_chars_backtick.pom new file mode 100644 index 0000000..7463874 --- /dev/null +++ b/tests/errors/stray_chars_backtick.pom @@ -0,0 +1 @@ +name = `Andy` B diff --git a/tests/errors/stray_chars_quote.pom b/tests/errors/stray_chars_quote.pom new file mode 100644 index 0000000..d384fd8 --- /dev/null +++ b/tests/errors/stray_chars_quote.pom @@ -0,0 +1 @@ +name = "Andy" B diff --git a/tests/errors/stray_cr.pom b/tests/errors/stray_cr.pom new file mode 100644 index 0000000..858e526 --- /dev/null +++ b/tests/errors/stray_cr.pom @@ -0,0 +1 @@ +# Two CRs: diff --git a/tests/parsing/long_key.flat.pom b/tests/parsing/long_key.flat.pom new file mode 100644 index 0000000..21739bd --- /dev/null +++ b/tests/parsing/long_key.flat.pom @@ -0,0 +1,2 @@ +A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z = 50 +A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = a diff --git a/tests/parsing/long_key.pom b/tests/parsing/long_key.pom new file mode 100644 index 0000000..4168306 --- /dev/null +++ b/tests/parsing/long_key.pom @@ -0,0 +1,3 @@ +[A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z] +a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z = 50 +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = a -- cgit v1.2.3