aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2024-02-07 12:10:49 -0500
committerDavid Robillard <d@drobilla.net>2024-03-08 17:19:41 -0500
commit66adb6e1cea6e1231723a41c60f0b9e650e20448 (patch)
tree7e762dda62b6b5c31c2510f2014bd09f8765b827
parent37723be4c8b49b785c40fe5ccd34edbc7c018e1b (diff)
downloadserd-66adb6e1cea6e1231723a41c60f0b9e650e20448.tar.gz
serd-66adb6e1cea6e1231723a41c60f0b9e650e20448.tar.bz2
serd-66adb6e1cea6e1231723a41c60f0b9e650e20448.zip
Add more exhaustive NTriples and NQuads test cases
-rw-r--r--test/extra/bad/bad-eof-in-utf8-character.ttl3
-rw-r--r--test/extra/bad/bad-nt-eof-after-blank.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-after-lang-hyphen.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-after-lang-subtag.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-after-lang.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-after-object.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-after-predicate.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-after-string-escape.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-after-string.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-after-subject.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-after-underscore.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-before-blank.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-before-iri.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-before-lang.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-before-string-escape.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-before-string.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-in-iri-path.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-in-iri-scheme.nt1
-rw-r--r--test/extra/bad/bad-nt-eof-in-string.nt1
-rw-r--r--test/extra/bad/bad-nt-syntax-blank-u00F7.nt1
-rw-r--r--test/extra/bad/bad-nt-syntax-blank-u037E.nt1
-rw-r--r--test/extra/bad/bad-nt-syntax-blank-u200B.nt1
-rw-r--r--test/extra/bad/bad-nt-syntax-blank-u200E.nt1
-rw-r--r--test/extra/bad/bad-nt-syntax-blank-u203E.nt1
-rw-r--r--test/extra/bad/bad-nt-syntax-blank-u2041.nt1
-rw-r--r--test/extra/bad/bad-nt-syntax-blank-u206F.nt1
-rw-r--r--test/extra/bad/bad-nt-syntax-blank-u2190.nt1
-rw-r--r--test/extra/bad/bad-nt-syntax-blank-u2BFF.nt1
-rw-r--r--test/extra/bad/bad-nt-syntax-blank-u2FF0.nt2
-rw-r--r--test/extra/bad/bad-nt-syntax-cr-in-string.nt2
-rw-r--r--test/extra/bad/bad-nt-syntax-lf-in-string.nt3
-rw-r--r--test/extra/bad/bad-nt-syntax-uri-bar.nt2
-rw-r--r--test/extra/bad/bad-nt-syntax-uri-caret.nt2
-rw-r--r--test/extra/bad/bad-nt-syntax-uri-closing-brace.nt2
-rw-r--r--test/extra/bad/bad-nt-syntax-uri-double-quotes.nt2
-rw-r--r--test/extra/bad/bad-nt-syntax-uri-grave.nt2
-rw-r--r--test/extra/bad/bad-nt-syntax-uri-less-than.nt2
-rw-r--r--test/extra/bad/bad-nt-syntax-uri-opening-brace.nt2
-rw-r--r--test/extra/bad/manifest.ttl228
-rw-r--r--test/extra/good/manifest.ttl66
-rw-r--r--test/extra/good/test-nq-syntax-eof-after-blank-dot.nq1
-rw-r--r--test/extra/good/test-nq-syntax-eol-cr.nq1
-rw-r--r--test/extra/good/test-nq-syntax-eol-crlf.nq7
-rw-r--r--test/extra/good/test-nq-syntax-eol-lf.nq7
-rw-r--r--test/extra/good/test-nq-syntax-eol-lfcr.nq8
-rw-r--r--test/extra/good/test-nt-syntax-blank-dot.nt1
-rw-r--r--test/extra/good/test-nt-syntax-eof-after-blank-dot.nt1
-rw-r--r--test/extra/good/test-nt-syntax-eol-cr.nt1
-rw-r--r--test/extra/good/test-nt-syntax-eol-crlf.nt7
-rw-r--r--test/extra/good/test-nt-syntax-eol-lf.nt7
-rw-r--r--test/extra/good/test-nt-syntax-eol-lfcr.nt8
51 files changed, 394 insertions, 0 deletions
diff --git a/test/extra/bad/bad-eof-in-utf8-character.ttl b/test/extra/bad/bad-eof-in-utf8-character.ttl
new file mode 100644
index 00000000..16784e88
--- /dev/null
+++ b/test/extra/bad/bad-eof-in-utf8-character.ttl
@@ -0,0 +1,3 @@
+@prefix eg: <http://example.org/> .
+
+<> eg:comment """Forgot something Ć \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-after-blank.nt b/test/extra/bad/bad-nt-eof-after-blank.nt
new file mode 100644
index 00000000..bc66ca37
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-after-blank.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:blank \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-after-lang-hyphen.nt b/test/extra/bad/bad-nt-eof-after-lang-hyphen.nt
new file mode 100644
index 00000000..9e885d80
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-after-lang-hyphen.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> "Cheers"@en- \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-after-lang-subtag.nt b/test/extra/bad/bad-nt-eof-after-lang-subtag.nt
new file mode 100644
index 00000000..f8158aec
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-after-lang-subtag.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> "Cheers"@en-UK \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-after-lang.nt b/test/extra/bad/bad-nt-eof-after-lang.nt
new file mode 100644
index 00000000..7ab04b06
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-after-lang.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> "Cheers"@en \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-after-object.nt b/test/extra/bad/bad-nt-eof-after-object.nt
new file mode 100644
index 00000000..e796f2b0
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-after-object.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> <http://example.org/o> \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-after-predicate.nt b/test/extra/bad/bad-nt-eof-after-predicate.nt
new file mode 100644
index 00000000..ea47bfbe
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-after-predicate.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-after-string-escape.nt b/test/extra/bad/bad-nt-eof-after-string-escape.nt
new file mode 100644
index 00000000..869907e8
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-after-string-escape.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> "s\t \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-after-string.nt b/test/extra/bad/bad-nt-eof-after-string.nt
new file mode 100644
index 00000000..32dda36d
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-after-string.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> "string" \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-after-subject.nt b/test/extra/bad/bad-nt-eof-after-subject.nt
new file mode 100644
index 00000000..21fa07f4
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-after-subject.nt
@@ -0,0 +1 @@
+<http://example.org/s> \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-after-underscore.nt b/test/extra/bad/bad-nt-eof-after-underscore.nt
new file mode 100644
index 00000000..4b05f2ac
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-after-underscore.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _ \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-before-blank.nt b/test/extra/bad/bad-nt-eof-before-blank.nt
new file mode 100644
index 00000000..99f70844
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-before-blank.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _: \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-before-iri.nt b/test/extra/bad/bad-nt-eof-before-iri.nt
new file mode 100644
index 00000000..c5fa7845
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-before-iri.nt
@@ -0,0 +1 @@
+< \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-before-lang.nt b/test/extra/bad/bad-nt-eof-before-lang.nt
new file mode 100644
index 00000000..f1a9d0df
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-before-lang.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> "Cheers"@ \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-before-string-escape.nt b/test/extra/bad/bad-nt-eof-before-string-escape.nt
new file mode 100644
index 00000000..30443488
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-before-string-escape.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> "s\ \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-before-string.nt b/test/extra/bad/bad-nt-eof-before-string.nt
new file mode 100644
index 00000000..6a2a7543
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-before-string.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> " \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-in-iri-path.nt b/test/extra/bad/bad-nt-eof-in-iri-path.nt
new file mode 100644
index 00000000..e8555e2b
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-in-iri-path.nt
@@ -0,0 +1 @@
+<http://example.org/p \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-in-iri-scheme.nt b/test/extra/bad/bad-nt-eof-in-iri-scheme.nt
new file mode 100644
index 00000000..2c071547
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-in-iri-scheme.nt
@@ -0,0 +1 @@
+<ht \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-eof-in-string.nt b/test/extra/bad/bad-nt-eof-in-string.nt
new file mode 100644
index 00000000..98944654
--- /dev/null
+++ b/test/extra/bad/bad-nt-eof-in-string.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> "s \ No newline at end of file
diff --git a/test/extra/bad/bad-nt-syntax-blank-u00F7.nt b/test/extra/bad/bad-nt-syntax-blank-u00F7.nt
new file mode 100644
index 00000000..0452b30e
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-blank-u00F7.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:inĆ·valid .
diff --git a/test/extra/bad/bad-nt-syntax-blank-u037E.nt b/test/extra/bad/bad-nt-syntax-blank-u037E.nt
new file mode 100644
index 00000000..22a5845c
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-blank-u037E.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:inĶ¾valid .
diff --git a/test/extra/bad/bad-nt-syntax-blank-u200B.nt b/test/extra/bad/bad-nt-syntax-blank-u200B.nt
new file mode 100644
index 00000000..5be4e0de
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-blank-u200B.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:inā€‹valid .
diff --git a/test/extra/bad/bad-nt-syntax-blank-u200E.nt b/test/extra/bad/bad-nt-syntax-blank-u200E.nt
new file mode 100644
index 00000000..69aec42c
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-blank-u200E.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:inā€Žvalid .
diff --git a/test/extra/bad/bad-nt-syntax-blank-u203E.nt b/test/extra/bad/bad-nt-syntax-blank-u203E.nt
new file mode 100644
index 00000000..3a19319c
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-blank-u203E.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:inā€¾valid .
diff --git a/test/extra/bad/bad-nt-syntax-blank-u2041.nt b/test/extra/bad/bad-nt-syntax-blank-u2041.nt
new file mode 100644
index 00000000..7d29d777
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-blank-u2041.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:ināvalid .
diff --git a/test/extra/bad/bad-nt-syntax-blank-u206F.nt b/test/extra/bad/bad-nt-syntax-blank-u206F.nt
new file mode 100644
index 00000000..c702dbd2
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-blank-u206F.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:ināÆvalid .
diff --git a/test/extra/bad/bad-nt-syntax-blank-u2190.nt b/test/extra/bad/bad-nt-syntax-blank-u2190.nt
new file mode 100644
index 00000000..d2b81287
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-blank-u2190.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:inā†valid .
diff --git a/test/extra/bad/bad-nt-syntax-blank-u2BFF.nt b/test/extra/bad/bad-nt-syntax-blank-u2BFF.nt
new file mode 100644
index 00000000..f88f5a18
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-blank-u2BFF.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:ināÆævalid .
diff --git a/test/extra/bad/bad-nt-syntax-blank-u2FF0.nt b/test/extra/bad/bad-nt-syntax-blank-u2FF0.nt
new file mode 100644
index 00000000..eb19059c
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-blank-u2FF0.nt
@@ -0,0 +1,2 @@
+<http://example.org/s> <http://example.org/p> _:ināæ°valid .
+
diff --git a/test/extra/bad/bad-nt-syntax-cr-in-string.nt b/test/extra/bad/bad-nt-syntax-cr-in-string.nt
new file mode 100644
index 00000000..7d4871f6
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-cr-in-string.nt
@@ -0,0 +1,2 @@
+<http://example.org/s> <http://example.org/p> "multi line" .
+
diff --git a/test/extra/bad/bad-nt-syntax-lf-in-string.nt b/test/extra/bad/bad-nt-syntax-lf-in-string.nt
new file mode 100644
index 00000000..841928dd
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-lf-in-string.nt
@@ -0,0 +1,3 @@
+<http://example.org/s> <http://example.org/p> "multi
+line" .
+
diff --git a/test/extra/bad/bad-nt-syntax-uri-bar.nt b/test/extra/bad/bad-nt-syntax-uri-bar.nt
new file mode 100644
index 00000000..7dce40e2
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-uri-bar.nt
@@ -0,0 +1,2 @@
+# Bad IRI : bar.
+<http://example/|oops|> <http://example/p> <http://example/o> .
diff --git a/test/extra/bad/bad-nt-syntax-uri-caret.nt b/test/extra/bad/bad-nt-syntax-uri-caret.nt
new file mode 100644
index 00000000..710b26ed
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-uri-caret.nt
@@ -0,0 +1,2 @@
+# Bad IRI : caret.
+<http://example/^_^> <http://example/p> <http://example/o> .
diff --git a/test/extra/bad/bad-nt-syntax-uri-closing-brace.nt b/test/extra/bad/bad-nt-syntax-uri-closing-brace.nt
new file mode 100644
index 00000000..bcc5bd0f
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-uri-closing-brace.nt
@@ -0,0 +1,2 @@
+# Bad IRI : closing brace.
+<http://example/}oops> <http://example/p> <http://example/o> .
diff --git a/test/extra/bad/bad-nt-syntax-uri-double-quotes.nt b/test/extra/bad/bad-nt-syntax-uri-double-quotes.nt
new file mode 100644
index 00000000..fe0e4abb
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-uri-double-quotes.nt
@@ -0,0 +1,2 @@
+# Bad IRI : double quotes.
+<http://example/"quoted"> <http://example/p> <http://example/o> .
diff --git a/test/extra/bad/bad-nt-syntax-uri-grave.nt b/test/extra/bad/bad-nt-syntax-uri-grave.nt
new file mode 100644
index 00000000..d340675b
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-uri-grave.nt
@@ -0,0 +1,2 @@
+# Bad IRI : grave.
+<http://example/`oops`> <http://example/p> <http://example/o> .
diff --git a/test/extra/bad/bad-nt-syntax-uri-less-than.nt b/test/extra/bad/bad-nt-syntax-uri-less-than.nt
new file mode 100644
index 00000000..73592ea0
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-uri-less-than.nt
@@ -0,0 +1,2 @@
+# Bad IRI : less-than.
+<http://example/<oops>> <http://example/p> <http://example/o> .
diff --git a/test/extra/bad/bad-nt-syntax-uri-opening-brace.nt b/test/extra/bad/bad-nt-syntax-uri-opening-brace.nt
new file mode 100644
index 00000000..f5aa2fd2
--- /dev/null
+++ b/test/extra/bad/bad-nt-syntax-uri-opening-brace.nt
@@ -0,0 +1,2 @@
+# Bad IRI : opening brace.
+<http://example/{oops> <http://example/p> <http://example/o> .
diff --git a/test/extra/bad/manifest.ttl b/test/extra/bad/manifest.ttl
index 0ea3ccac..b2094258 100644
--- a/test/extra/bad/manifest.ttl
+++ b/test/extra/bad/manifest.ttl
@@ -24,6 +24,43 @@
<#bad-dot-after-subject>
<#bad-dot-in-collection>
<#bad-empty-blank-predicate>
+ <#bad-nt-eof-after-blank>
+ <#bad-nt-eof-after-lang>
+ <#bad-nt-eof-after-lang-hyphen>
+ <#bad-nt-eof-after-lang-subtag>
+ <#bad-nt-eof-after-object>
+ <#bad-nt-eof-after-predicate>
+ <#bad-nt-eof-after-string>
+ <#bad-nt-eof-after-string-escape>
+ <#bad-nt-eof-after-subject>
+ <#bad-nt-eof-after-underscore>
+ <#bad-nt-eof-before-blank>
+ <#bad-nt-eof-before-iri>
+ <#bad-nt-eof-before-lang>
+ <#bad-nt-eof-before-string>
+ <#bad-nt-eof-before-string-escape>
+ <#bad-nt-eof-in-iri-path>
+ <#bad-nt-eof-in-iri-scheme>
+ <#bad-nt-eof-in-string>
+ <#bad-nt-syntax-blank-u00F7.nt>
+ <#bad-nt-syntax-blank-u037E.nt>
+ <#bad-nt-syntax-blank-u200B.nt>
+ <#bad-nt-syntax-blank-u200E.nt>
+ <#bad-nt-syntax-blank-u203E.nt>
+ <#bad-nt-syntax-blank-u2041.nt>
+ <#bad-nt-syntax-blank-u206F.nt>
+ <#bad-nt-syntax-blank-u2190.nt>
+ <#bad-nt-syntax-blank-u2BFF.nt>
+ <#bad-nt-syntax-blank-u2FF0.nt>
+ <#bad-nt-syntax-cr-in-string>
+ <#bad-nt-syntax-lf-in-string>
+ <#bad-nt-syntax-uri-bar>
+ <#bad-nt-syntax-uri-caret>
+ <#bad-nt-syntax-uri-closing-brace>
+ <#bad-nt-syntax-uri-double-quotes>
+ <#bad-nt-syntax-uri-grave>
+ <#bad-nt-syntax-uri-less-than>
+ <#bad-nt-syntax-uri-opening-brace>
<#bad-eof-after-quotes>
<#bad-eof-at-string-start>
<#bad-eof-in-blank>
@@ -41,6 +78,7 @@
<#bad-eof-in-uri>
<#bad-eof-in-uri-character>
<#bad-eof-in-uri-scheme>
+ <#bad-eof-in-utf8-character>
<#bad-equivalence>
<#bad-escape>
<#bad-ext-namedblank-op>
@@ -178,6 +216,191 @@
mf:action <bad-empty-blank-predicate.ttl> ;
mf:name "bad-empty-blank-predicate" .
+<#bad-nt-eof-after-blank>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-after-blank.nt> ;
+ mf:name "bad-nt-eof-after-blank" .
+
+<#bad-nt-eof-after-lang>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-after-lang.nt> ;
+ mf:name "bad-nt-eof-after-lang" .
+
+<#bad-nt-eof-after-lang-hyphen>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-after-lang-hyphen.nt> ;
+ mf:name "bad-nt-eof-after-lang-hyphen" .
+
+<#bad-nt-eof-after-lang-subtag>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-after-lang-subtag.nt> ;
+ mf:name "bad-nt-eof-after-lang-subtag" .
+
+<#bad-nt-eof-after-object>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-after-object.nt> ;
+ mf:name "bad-nt-eof-after-object" .
+
+<#bad-nt-eof-after-predicate>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-after-predicate.nt> ;
+ mf:name "bad-nt-eof-after-predicate" .
+
+<#bad-nt-eof-after-string>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-after-string.nt> ;
+ mf:name "bad-nt-eof-after-string" .
+
+<#bad-nt-eof-after-string-escape>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-after-string-escape.nt> ;
+ mf:name "bad-nt-eof-after-string-escape" .
+
+<#bad-nt-eof-after-subject>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-after-subject.nt> ;
+ mf:name "bad-nt-eof-after-subject" .
+
+<#bad-nt-eof-after-underscore>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-after-underscore.nt> ;
+ mf:name "bad-nt-eof-after-underscore" .
+
+<#bad-nt-eof-before-blank>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-before-blank.nt> ;
+ mf:name "bad-nt-eof-before-blank" .
+
+<#bad-nt-eof-before-iri>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-before-iri.nt> ;
+ mf:name "bad-nt-eof-before-iri" .
+
+<#bad-nt-eof-before-lang>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-before-lang.nt> ;
+ mf:name "bad-nt-eof-before-lang" .
+
+<#bad-nt-eof-before-string>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-before-string.nt> ;
+ mf:name "bad-nt-eof-before-string" .
+
+<#bad-nt-eof-before-string-escape>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-before-string-escape.nt> ;
+ mf:name "bad-nt-eof-before-string-escape" .
+
+<#bad-nt-eof-in-iri-path>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-in-iri-path.nt> ;
+ mf:name "bad-nt-eof-in-iri-path" .
+
+<#bad-nt-eof-in-iri-scheme>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-in-iri-scheme.nt> ;
+ mf:name "bad-nt-eof-in-iri-scheme" .
+
+<#bad-nt-eof-in-string>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-eof-in-string.nt> ;
+ mf:name "bad-nt-eof-in-string" .
+
+<#bad-nt-syntax-blank-u00F7>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-blank-u00F7.nt> ;
+ mf:name "bad-nt-syntax-blank-u00F7" .
+
+<#bad-nt-syntax-blank-u037E>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-blank-u037E.nt> ;
+ mf:name "bad-nt-syntax-blank-u037E" .
+
+<#bad-nt-syntax-blank-u200B>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-blank-u200B.nt> ;
+ mf:name "bad-nt-syntax-blank-u200B" .
+
+<#bad-nt-syntax-blank-u200E>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-blank-u200E.nt> ;
+ mf:name "bad-nt-syntax-blank-u200E" .
+
+<#bad-nt-syntax-blank-u203E>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-blank-u203E.nt> ;
+ mf:name "bad-nt-syntax-blank-u203E" .
+
+<#bad-nt-syntax-blank-u2041>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-blank-u2041.nt> ;
+ mf:name "bad-nt-syntax-blank-u2041" .
+
+<#bad-nt-syntax-blank-u206F>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-blank-u206F.nt> ;
+ mf:name "bad-nt-syntax-blank-u206F" .
+
+<#bad-nt-syntax-blank-u2190>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-blank-u2190.nt> ;
+ mf:name "bad-nt-syntax-blank-u2190" .
+
+<#bad-nt-syntax-blank-u2BFF>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-blank-u2BFF.nt> ;
+ mf:name "bad-nt-syntax-blank-u2BFF" .
+
+<#bad-nt-syntax-blank-u2FF0>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-blank-u2FF0.nt> ;
+ mf:name "bad-nt-syntax-blank-u2FF0" .
+
+<#bad-nt-syntax-cr-in-string>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-cr-in-string.nt> ;
+ mf:name "bad-nt-syntax-cr-in-string" .
+
+<#bad-nt-syntax-lf-in-string>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-lf-in-string.nt> ;
+ mf:name "bad-nt-syntax-lf-in-string" .
+
+<#bad-nt-syntax-uri-bar>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-uri-bar.nt> ;
+ mf:name "bad-nt-syntax-uri-bar" .
+
+<#bad-nt-syntax-uri-caret>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-uri-caret.nt> ;
+ mf:name "bad-nt-syntax-uri-caret" .
+
+<#bad-nt-syntax-uri-closing-brace>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-uri-closing-brace.nt> ;
+ mf:name "bad-nt-syntax-uri-closing-brace" .
+
+<#bad-nt-syntax-uri-double-quotes>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-uri-double-quotes.nt> ;
+ mf:name "bad-nt-syntax-uri-double-quotes" .
+
+<#bad-nt-syntax-uri-grave>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-uri-grave.nt> ;
+ mf:name "bad-nt-syntax-uri-grave" .
+
+<#bad-nt-syntax-uri-less-than>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-uri-less-than.nt> ;
+ mf:name "bad-nt-syntax-uri-less-than" .
+
+<#bad-nt-syntax-uri-opening-brace>
+ a rdft:TestNTriplesNegativeSyntax ;
+ mf:action <bad-nt-syntax-uri-opening-brace.nt> ;
+ mf:name "bad-nt-syntax-uri-opening-brace" .
+
<#bad-eof-after-quotes>
a rdft:TestTurtleNegativeSyntax ;
mf:action <bad-eof-after-quotes.ttl> ;
@@ -263,6 +486,11 @@
mf:action <bad-eof-in-uri-scheme.nt> ;
mf:name "bad-eof-in-uri-scheme" .
+<#bad-eof-in-utf8-character>
+ a rdft:TestTurtleNegativeSyntax ;
+ mf:action <bad-eof-in-utf8-character.ttl> ;
+ mf:name "bad-eof-in-utf8-character" .
+
<#bad-equivalence>
a rdft:TestTurtleNegativeSyntax ;
mf:action <bad-equivalence.ttl> ;
diff --git a/test/extra/good/manifest.ttl b/test/extra/good/manifest.ttl
index 5f4e8761..efef7f54 100644
--- a/test/extra/good/manifest.ttl
+++ b/test/extra/good/manifest.ttl
@@ -32,7 +32,18 @@
<#test-no-spaces>
<#test-non-curie-uri>
<#test-nq-syntax-dot-end>
+ <#test-nq-syntax-eof-after-blank-dot>
+ <#test-nq-syntax-eol-cr>
+ <#test-nq-syntax-eol-crlf>
+ <#test-nq-syntax-eol-lf>
+ <#test-nq-syntax-eol-lfcr>
+ <#test-nt-syntax-blank-dot>
<#test-nt-syntax-dot-end>
+ <#test-nt-syntax-eof-after-blank-dot>
+ <#test-nt-syntax-eol-cr>
+ <#test-nt-syntax-eol-crlf>
+ <#test-nt-syntax-eol-lf>
+ <#test-nt-syntax-eol-lfcr>
<#test-out-of-range-unicode>
<#test-prefix>
<#test-quote-escapes>
@@ -193,16 +204,71 @@
mf:name "test-non-curie-uri" ;
mf:result <test-non-curie-uri.nt> .
+<#test-nq-syntax-eof-after-blank-dot>
+ a rdft:TestNTriplesPositiveSyntax ;
+ mf:action <test-nq-syntax-eof-after-blank-dot.nq> ;
+ mf:name "test-nq-syntax-eof-after-blank-dot" .
+
<#test-nq-syntax-dot-end>
a rdft:TestNQuadsPositiveSyntax ;
mf:action <test-nq-syntax-dot-end.nq> ;
mf:name "test-nq-syntax-dot-end" .
+<#test-nq-syntax-eol-cr>
+ a rdft:TestNTriplesPositiveSyntax ;
+ mf:action <test-nq-syntax-eol-cr.nq> ;
+ mf:name "test-nq-syntax-eol-cr" .
+
+<#test-nq-syntax-eol-crlf>
+ a rdft:TestNTriplesPositiveSyntax ;
+ mf:action <test-nq-syntax-eol-crlf.nq> ;
+ mf:name "test-nq-syntax-eol-crlf" .
+
+<#test-nq-syntax-eol-lf>
+ a rdft:TestNTriplesPositiveSyntax ;
+ mf:action <test-nq-syntax-eol-lf.nq> ;
+ mf:name "test-nq-syntax-eol-lf" .
+
+<#test-nq-syntax-eol-lfcr>
+ a rdft:TestNTriplesPositiveSyntax ;
+ mf:action <test-nq-syntax-eol-lfcr.nq> ;
+ mf:name "test-nq-syntax-eol-lfcr" .
+
+<#test-nt-syntax-blank-dot>
+ a rdft:TestNTriplesPositiveSyntax ;
+ mf:action <test-nt-syntax-blank-dot.nt> ;
+ mf:name "test-nt-syntax-blank-dot" .
+
<#test-nt-syntax-dot-end>
a rdft:TestNQuadsPositiveSyntax ;
mf:action <test-nt-syntax-dot-end.nt> ;
mf:name "test-nt-syntax-dot-end" .
+<#test-nt-syntax-eof-after-blank-dot>
+ a rdft:TestNTriplesPositiveSyntax ;
+ mf:action <test-nt-syntax-eof-after-blank-dot.nt> ;
+ mf:name "test-nt-syntax-eof-after-blank-dot" .
+
+<#test-nt-syntax-eol-cr>
+ a rdft:TestNTriplesPositiveSyntax ;
+ mf:action <test-nt-syntax-eol-cr.nt> ;
+ mf:name "test-nt-syntax-eol-cr" .
+
+<#test-nt-syntax-eol-crlf>
+ a rdft:TestNTriplesPositiveSyntax ;
+ mf:action <test-nt-syntax-eol-crlf.nt> ;
+ mf:name "test-nt-syntax-eol-crlf" .
+
+<#test-nt-syntax-eol-lf>
+ a rdft:TestNTriplesPositiveSyntax ;
+ mf:action <test-nt-syntax-eol-lf.nt> ;
+ mf:name "test-nt-syntax-eol-lf" .
+
+<#test-nt-syntax-eol-lfcr>
+ a rdft:TestNTriplesPositiveSyntax ;
+ mf:action <test-nt-syntax-eol-lfcr.nt> ;
+ mf:name "test-nt-syntax-eol-lfcr" .
+
<#test-out-of-range-unicode>
a rdft:TestTurtleEval ;
mf:action <test-out-of-range-unicode.ttl> ;
diff --git a/test/extra/good/test-nq-syntax-eof-after-blank-dot.nq b/test/extra/good/test-nq-syntax-eof-after-blank-dot.nq
new file mode 100644
index 00000000..96bc144f
--- /dev/null
+++ b/test/extra/good/test-nq-syntax-eof-after-blank-dot.nq
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> <http://example.org/g> _:blank. \ No newline at end of file
diff --git a/test/extra/good/test-nq-syntax-eol-cr.nq b/test/extra/good/test-nq-syntax-eol-cr.nq
new file mode 100644
index 00000000..a25f35f5
--- /dev/null
+++ b/test/extra/good/test-nq-syntax-eol-cr.nq
@@ -0,0 +1 @@
+ <http://example.org/s> <http://example.org/p> "1" . # line comment <http://example.org/s> <http://example.org/p> "2" . # trailing comment <http://example.org/s> <http://example.org/p> "3" . <http://example.org/s> <http://example.org/p> "4" . \ No newline at end of file
diff --git a/test/extra/good/test-nq-syntax-eol-crlf.nq b/test/extra/good/test-nq-syntax-eol-crlf.nq
new file mode 100644
index 00000000..3362a013
--- /dev/null
+++ b/test/extra/good/test-nq-syntax-eol-crlf.nq
@@ -0,0 +1,7 @@
+
+<http://example.org/s> <http://example.org/p> "1" .
+# line comment
+<http://example.org/s> <http://example.org/p> "2" . # trailing comment
+<http://example.org/s> <http://example.org/p> "3" .
+
+<http://example.org/s> <http://example.org/p> "4" .
diff --git a/test/extra/good/test-nq-syntax-eol-lf.nq b/test/extra/good/test-nq-syntax-eol-lf.nq
new file mode 100644
index 00000000..9979407c
--- /dev/null
+++ b/test/extra/good/test-nq-syntax-eol-lf.nq
@@ -0,0 +1,7 @@
+
+<http://example.org/s> <http://example.org/p> "1" .
+# line comment
+<http://example.org/s> <http://example.org/p> "2" . # trailing comment
+<http://example.org/s> <http://example.org/p> "3" .
+
+<http://example.org/s> <http://example.org/p> "4" .
diff --git a/test/extra/good/test-nq-syntax-eol-lfcr.nq b/test/extra/good/test-nq-syntax-eol-lfcr.nq
new file mode 100644
index 00000000..c006a463
--- /dev/null
+++ b/test/extra/good/test-nq-syntax-eol-lfcr.nq
@@ -0,0 +1,8 @@
+
+ <http://example.org/s> <http://example.org/p> "1" .
+ # line comment
+ <http://example.org/s> <http://example.org/p> "2" . # trailing comment
+ <http://example.org/s> <http://example.org/p> "3" .
+
+ <http://example.org/s> <http://example.org/p> "4" .
+ \ No newline at end of file
diff --git a/test/extra/good/test-nt-syntax-blank-dot.nt b/test/extra/good/test-nt-syntax-blank-dot.nt
new file mode 100644
index 00000000..2f92d779
--- /dev/null
+++ b/test/extra/good/test-nt-syntax-blank-dot.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:sparqley.blank .
diff --git a/test/extra/good/test-nt-syntax-eof-after-blank-dot.nt b/test/extra/good/test-nt-syntax-eof-after-blank-dot.nt
new file mode 100644
index 00000000..2d18185e
--- /dev/null
+++ b/test/extra/good/test-nt-syntax-eof-after-blank-dot.nt
@@ -0,0 +1 @@
+<http://example.org/s> <http://example.org/p> _:blank. \ No newline at end of file
diff --git a/test/extra/good/test-nt-syntax-eol-cr.nt b/test/extra/good/test-nt-syntax-eol-cr.nt
new file mode 100644
index 00000000..a25f35f5
--- /dev/null
+++ b/test/extra/good/test-nt-syntax-eol-cr.nt
@@ -0,0 +1 @@
+ <http://example.org/s> <http://example.org/p> "1" . # line comment <http://example.org/s> <http://example.org/p> "2" . # trailing comment <http://example.org/s> <http://example.org/p> "3" . <http://example.org/s> <http://example.org/p> "4" . \ No newline at end of file
diff --git a/test/extra/good/test-nt-syntax-eol-crlf.nt b/test/extra/good/test-nt-syntax-eol-crlf.nt
new file mode 100644
index 00000000..3362a013
--- /dev/null
+++ b/test/extra/good/test-nt-syntax-eol-crlf.nt
@@ -0,0 +1,7 @@
+
+<http://example.org/s> <http://example.org/p> "1" .
+# line comment
+<http://example.org/s> <http://example.org/p> "2" . # trailing comment
+<http://example.org/s> <http://example.org/p> "3" .
+
+<http://example.org/s> <http://example.org/p> "4" .
diff --git a/test/extra/good/test-nt-syntax-eol-lf.nt b/test/extra/good/test-nt-syntax-eol-lf.nt
new file mode 100644
index 00000000..9979407c
--- /dev/null
+++ b/test/extra/good/test-nt-syntax-eol-lf.nt
@@ -0,0 +1,7 @@
+
+<http://example.org/s> <http://example.org/p> "1" .
+# line comment
+<http://example.org/s> <http://example.org/p> "2" . # trailing comment
+<http://example.org/s> <http://example.org/p> "3" .
+
+<http://example.org/s> <http://example.org/p> "4" .
diff --git a/test/extra/good/test-nt-syntax-eol-lfcr.nt b/test/extra/good/test-nt-syntax-eol-lfcr.nt
new file mode 100644
index 00000000..c006a463
--- /dev/null
+++ b/test/extra/good/test-nt-syntax-eol-lfcr.nt
@@ -0,0 +1,8 @@
+
+ <http://example.org/s> <http://example.org/p> "1" .
+ # line comment
+ <http://example.org/s> <http://example.org/p> "2" . # trailing comment
+ <http://example.org/s> <http://example.org/p> "3" .
+
+ <http://example.org/s> <http://example.org/p> "4" .
+ \ No newline at end of file