diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/extra/bad/manifest.ttl | 216 | ||||
-rw-r--r-- | test/extra/eof/README.md | 5 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-after-blank.nt (renamed from test/extra/bad/bad-nt-eof-after-blank.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-after-lang-hyphen.nt (renamed from test/extra/bad/bad-nt-eof-after-lang-hyphen.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-after-lang-subtag.nt (renamed from test/extra/bad/bad-nt-eof-after-lang-subtag.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-after-lang.nt (renamed from test/extra/bad/bad-nt-eof-after-lang.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-after-object.nt (renamed from test/extra/bad/bad-nt-eof-after-object.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-after-predicate.nt (renamed from test/extra/bad/bad-nt-eof-after-predicate.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-after-string-escape.nt (renamed from test/extra/bad/bad-nt-eof-after-string-escape.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-after-string.nt (renamed from test/extra/bad/bad-nt-eof-after-string.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-after-subject.nt (renamed from test/extra/bad/bad-nt-eof-after-subject.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-after-underscore.nt (renamed from test/extra/bad/bad-nt-eof-after-underscore.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-before-blank.nt (renamed from test/extra/bad/bad-nt-eof-before-blank.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-before-iri.nt (renamed from test/extra/bad/bad-nt-eof-before-iri.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-before-lang.nt (renamed from test/extra/bad/bad-nt-eof-before-lang.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-before-string-escape.nt (renamed from test/extra/bad/bad-nt-eof-before-string-escape.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-before-string.nt (renamed from test/extra/bad/bad-nt-eof-before-string.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-in-iri-path.nt (renamed from test/extra/bad/bad-nt-eof-in-iri-path.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-in-iri-scheme.nt (renamed from test/extra/bad/bad-nt-eof-in-iri-scheme.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-nt-eof-in-string.nt (renamed from test/extra/bad/bad-nt-eof-in-string.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-after-quotes.ttl (renamed from test/extra/bad/bad-eof-after-quotes.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-at-string-start.ttl (renamed from test/extra/bad/bad-eof-at-string-start.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-blank.ttl (renamed from test/extra/bad/bad-eof-in-blank.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-escape.ttl (renamed from test/extra/bad/bad-eof-in-escape.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-lang-suffix.ttl (renamed from test/extra/bad/bad-eof-in-lang-suffix.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-lang.ttl (renamed from test/extra/bad/bad-eof-in-lang.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-list.ttl (renamed from test/extra/bad/bad-eof-in-list.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-long-string.ttl (renamed from test/extra/bad/bad-eof-in-long-string.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-object-list.ttl (renamed from test/extra/bad/bad-eof-in-object-list.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-object-list2.ttl (renamed from test/extra/bad/bad-eof-in-object-list2.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-predicate-list.ttl (renamed from test/extra/bad/bad-eof-in-predicate-list.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-string.ttl (renamed from test/extra/bad/bad-eof-in-string.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-text-character.ttl (renamed from test/extra/bad/bad-eof-in-text-character.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-triple-quote.ttl (renamed from test/extra/bad/bad-eof-in-triple-quote.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-uri-character.ttl (renamed from test/extra/bad/bad-eof-in-uri-character.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-uri-scheme.ttl (renamed from test/extra/bad/bad-eof-in-uri-scheme.nt) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-uri.ttl (renamed from test/extra/bad/bad-eof-in-uri.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/bad-ttl-eof-in-utf8-character.ttl (renamed from test/extra/bad/bad-eof-in-utf8-character.ttl) | 0 | ||||
-rw-r--r-- | test/extra/eof/manifest.ttl | 225 | ||||
-rw-r--r-- | test/lint/meson.build | 18 | ||||
-rw-r--r-- | test/meson.build | 11 | ||||
-rwxr-xr-x | test/run_suite.py | 11 |
42 files changed, 259 insertions, 227 deletions
diff --git a/test/extra/bad/manifest.ttl b/test/extra/bad/manifest.ttl index 64dbf05f..6611e505 100644 --- a/test/extra/bad/manifest.ttl +++ b/test/extra/bad/manifest.ttl @@ -28,24 +28,6 @@ <#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> @@ -65,24 +47,6 @@ <#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> - <#bad-eof-in-escape> - <#bad-eof-in-lang-suffix> - <#bad-eof-in-lang> - <#bad-eof-in-list> - <#bad-eof-in-long-string> - <#bad-eof-in-object-list> - <#bad-eof-in-object-list2> - <#bad-eof-in-predicate-list> - <#bad-eof-in-string> - <#bad-eof-in-text-character> - <#bad-eof-in-triple-quote> - <#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> @@ -243,96 +207,6 @@ 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> ; @@ -428,96 +302,6 @@ 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> ; - mf:name "bad-eof-after-quotes" . - -<#bad-eof-at-string-start> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-at-string-start.ttl> ; - mf:name "bad-eof-at-string-start" . - -<#bad-eof-in-blank> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-blank.ttl> ; - mf:name "bad-eof-in-blank" . - -<#bad-eof-in-escape> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-escape.ttl> ; - mf:name "bad-eof-in-escape" . - -<#bad-eof-in-lang> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-lang.ttl> ; - mf:name "bad-eof-in-lang" . - -<#bad-eof-in-lang-suffix> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-lang-suffix.ttl> ; - mf:name "bad-eof-in-lang-suffix" . - -<#bad-eof-in-list> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-list.ttl> ; - mf:name "bad-eof-in-list" . - -<#bad-eof-in-long-string> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-long-string.ttl> ; - mf:name "bad-eof-in-long-string" . - -<#bad-eof-in-object-list> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-object-list.ttl> ; - mf:name "bad-eof-in-object-list" . - -<#bad-eof-in-object-list2> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-object-list2.ttl> ; - mf:name "bad-eof-in-object-list2" . - -<#bad-eof-in-predicate-list> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-predicate-list.ttl> ; - mf:name "bad-eof-in-predicate-list" . - -<#bad-eof-in-string> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-string.ttl> ; - mf:name "bad-eof-in-string" . - -<#bad-eof-in-text-character> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-text-character.ttl> ; - mf:name "bad-eof-in-text-character" . - -<#bad-eof-in-triple-quote> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-triple-quote.ttl> ; - mf:name "bad-eof-in-triple-quote" . - -<#bad-eof-in-uri> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-uri.ttl> ; - mf:name "bad-eof-in-uri" . - -<#bad-eof-in-uri-character> - a rdft:TestTurtleNegativeSyntax ; - mf:action <bad-eof-in-uri-character.ttl> ; - mf:name "bad-eof-in-uri-character" . - -<#bad-eof-in-uri-scheme> - a rdft:TestNTriplesNegativeSyntax ; - 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/eof/README.md b/test/extra/eof/README.md new file mode 100644 index 00000000..1e461f79 --- /dev/null +++ b/test/extra/eof/README.md @@ -0,0 +1,5 @@ +EOF Test Suite +============== + +This simple suite tests that inputs truncated in various places are handled +correctly. diff --git a/test/extra/bad/bad-nt-eof-after-blank.nt b/test/extra/eof/bad-nt-eof-after-blank.nt index bc66ca37..bc66ca37 100644 --- a/test/extra/bad/bad-nt-eof-after-blank.nt +++ b/test/extra/eof/bad-nt-eof-after-blank.nt diff --git a/test/extra/bad/bad-nt-eof-after-lang-hyphen.nt b/test/extra/eof/bad-nt-eof-after-lang-hyphen.nt index 9e885d80..9e885d80 100644 --- a/test/extra/bad/bad-nt-eof-after-lang-hyphen.nt +++ b/test/extra/eof/bad-nt-eof-after-lang-hyphen.nt diff --git a/test/extra/bad/bad-nt-eof-after-lang-subtag.nt b/test/extra/eof/bad-nt-eof-after-lang-subtag.nt index f8158aec..f8158aec 100644 --- a/test/extra/bad/bad-nt-eof-after-lang-subtag.nt +++ b/test/extra/eof/bad-nt-eof-after-lang-subtag.nt diff --git a/test/extra/bad/bad-nt-eof-after-lang.nt b/test/extra/eof/bad-nt-eof-after-lang.nt index 7ab04b06..7ab04b06 100644 --- a/test/extra/bad/bad-nt-eof-after-lang.nt +++ b/test/extra/eof/bad-nt-eof-after-lang.nt diff --git a/test/extra/bad/bad-nt-eof-after-object.nt b/test/extra/eof/bad-nt-eof-after-object.nt index e796f2b0..e796f2b0 100644 --- a/test/extra/bad/bad-nt-eof-after-object.nt +++ b/test/extra/eof/bad-nt-eof-after-object.nt diff --git a/test/extra/bad/bad-nt-eof-after-predicate.nt b/test/extra/eof/bad-nt-eof-after-predicate.nt index ea47bfbe..ea47bfbe 100644 --- a/test/extra/bad/bad-nt-eof-after-predicate.nt +++ b/test/extra/eof/bad-nt-eof-after-predicate.nt diff --git a/test/extra/bad/bad-nt-eof-after-string-escape.nt b/test/extra/eof/bad-nt-eof-after-string-escape.nt index 869907e8..869907e8 100644 --- a/test/extra/bad/bad-nt-eof-after-string-escape.nt +++ b/test/extra/eof/bad-nt-eof-after-string-escape.nt diff --git a/test/extra/bad/bad-nt-eof-after-string.nt b/test/extra/eof/bad-nt-eof-after-string.nt index 32dda36d..32dda36d 100644 --- a/test/extra/bad/bad-nt-eof-after-string.nt +++ b/test/extra/eof/bad-nt-eof-after-string.nt diff --git a/test/extra/bad/bad-nt-eof-after-subject.nt b/test/extra/eof/bad-nt-eof-after-subject.nt index 21fa07f4..21fa07f4 100644 --- a/test/extra/bad/bad-nt-eof-after-subject.nt +++ b/test/extra/eof/bad-nt-eof-after-subject.nt diff --git a/test/extra/bad/bad-nt-eof-after-underscore.nt b/test/extra/eof/bad-nt-eof-after-underscore.nt index 4b05f2ac..4b05f2ac 100644 --- a/test/extra/bad/bad-nt-eof-after-underscore.nt +++ b/test/extra/eof/bad-nt-eof-after-underscore.nt diff --git a/test/extra/bad/bad-nt-eof-before-blank.nt b/test/extra/eof/bad-nt-eof-before-blank.nt index 99f70844..99f70844 100644 --- a/test/extra/bad/bad-nt-eof-before-blank.nt +++ b/test/extra/eof/bad-nt-eof-before-blank.nt diff --git a/test/extra/bad/bad-nt-eof-before-iri.nt b/test/extra/eof/bad-nt-eof-before-iri.nt index c5fa7845..c5fa7845 100644 --- a/test/extra/bad/bad-nt-eof-before-iri.nt +++ b/test/extra/eof/bad-nt-eof-before-iri.nt diff --git a/test/extra/bad/bad-nt-eof-before-lang.nt b/test/extra/eof/bad-nt-eof-before-lang.nt index f1a9d0df..f1a9d0df 100644 --- a/test/extra/bad/bad-nt-eof-before-lang.nt +++ b/test/extra/eof/bad-nt-eof-before-lang.nt diff --git a/test/extra/bad/bad-nt-eof-before-string-escape.nt b/test/extra/eof/bad-nt-eof-before-string-escape.nt index 30443488..30443488 100644 --- a/test/extra/bad/bad-nt-eof-before-string-escape.nt +++ b/test/extra/eof/bad-nt-eof-before-string-escape.nt diff --git a/test/extra/bad/bad-nt-eof-before-string.nt b/test/extra/eof/bad-nt-eof-before-string.nt index 6a2a7543..6a2a7543 100644 --- a/test/extra/bad/bad-nt-eof-before-string.nt +++ b/test/extra/eof/bad-nt-eof-before-string.nt diff --git a/test/extra/bad/bad-nt-eof-in-iri-path.nt b/test/extra/eof/bad-nt-eof-in-iri-path.nt index e8555e2b..e8555e2b 100644 --- a/test/extra/bad/bad-nt-eof-in-iri-path.nt +++ b/test/extra/eof/bad-nt-eof-in-iri-path.nt diff --git a/test/extra/bad/bad-nt-eof-in-iri-scheme.nt b/test/extra/eof/bad-nt-eof-in-iri-scheme.nt index 2c071547..2c071547 100644 --- a/test/extra/bad/bad-nt-eof-in-iri-scheme.nt +++ b/test/extra/eof/bad-nt-eof-in-iri-scheme.nt diff --git a/test/extra/bad/bad-nt-eof-in-string.nt b/test/extra/eof/bad-nt-eof-in-string.nt index 98944654..98944654 100644 --- a/test/extra/bad/bad-nt-eof-in-string.nt +++ b/test/extra/eof/bad-nt-eof-in-string.nt diff --git a/test/extra/bad/bad-eof-after-quotes.ttl b/test/extra/eof/bad-ttl-eof-after-quotes.ttl index 40e429cb..40e429cb 100644 --- a/test/extra/bad/bad-eof-after-quotes.ttl +++ b/test/extra/eof/bad-ttl-eof-after-quotes.ttl diff --git a/test/extra/bad/bad-eof-at-string-start.ttl b/test/extra/eof/bad-ttl-eof-at-string-start.ttl index 93d20bcc..93d20bcc 100644 --- a/test/extra/bad/bad-eof-at-string-start.ttl +++ b/test/extra/eof/bad-ttl-eof-at-string-start.ttl diff --git a/test/extra/bad/bad-eof-in-blank.ttl b/test/extra/eof/bad-ttl-eof-in-blank.ttl index 8cf4ee84..8cf4ee84 100644 --- a/test/extra/bad/bad-eof-in-blank.ttl +++ b/test/extra/eof/bad-ttl-eof-in-blank.ttl diff --git a/test/extra/bad/bad-eof-in-escape.ttl b/test/extra/eof/bad-ttl-eof-in-escape.ttl index 24b4eec6..24b4eec6 100644 --- a/test/extra/bad/bad-eof-in-escape.ttl +++ b/test/extra/eof/bad-ttl-eof-in-escape.ttl diff --git a/test/extra/bad/bad-eof-in-lang-suffix.ttl b/test/extra/eof/bad-ttl-eof-in-lang-suffix.ttl index f46a7763..f46a7763 100644 --- a/test/extra/bad/bad-eof-in-lang-suffix.ttl +++ b/test/extra/eof/bad-ttl-eof-in-lang-suffix.ttl diff --git a/test/extra/bad/bad-eof-in-lang.ttl b/test/extra/eof/bad-ttl-eof-in-lang.ttl index bfdffd02..bfdffd02 100644 --- a/test/extra/bad/bad-eof-in-lang.ttl +++ b/test/extra/eof/bad-ttl-eof-in-lang.ttl diff --git a/test/extra/bad/bad-eof-in-list.ttl b/test/extra/eof/bad-ttl-eof-in-list.ttl index 13eeb88d..13eeb88d 100644 --- a/test/extra/bad/bad-eof-in-list.ttl +++ b/test/extra/eof/bad-ttl-eof-in-list.ttl diff --git a/test/extra/bad/bad-eof-in-long-string.ttl b/test/extra/eof/bad-ttl-eof-in-long-string.ttl index 2ef179a8..2ef179a8 100644 --- a/test/extra/bad/bad-eof-in-long-string.ttl +++ b/test/extra/eof/bad-ttl-eof-in-long-string.ttl diff --git a/test/extra/bad/bad-eof-in-object-list.ttl b/test/extra/eof/bad-ttl-eof-in-object-list.ttl index 9bbcd17a..9bbcd17a 100644 --- a/test/extra/bad/bad-eof-in-object-list.ttl +++ b/test/extra/eof/bad-ttl-eof-in-object-list.ttl diff --git a/test/extra/bad/bad-eof-in-object-list2.ttl b/test/extra/eof/bad-ttl-eof-in-object-list2.ttl index 9186fb9f..9186fb9f 100644 --- a/test/extra/bad/bad-eof-in-object-list2.ttl +++ b/test/extra/eof/bad-ttl-eof-in-object-list2.ttl diff --git a/test/extra/bad/bad-eof-in-predicate-list.ttl b/test/extra/eof/bad-ttl-eof-in-predicate-list.ttl index eab5b05b..eab5b05b 100644 --- a/test/extra/bad/bad-eof-in-predicate-list.ttl +++ b/test/extra/eof/bad-ttl-eof-in-predicate-list.ttl diff --git a/test/extra/bad/bad-eof-in-string.ttl b/test/extra/eof/bad-ttl-eof-in-string.ttl index bb6e817f..bb6e817f 100644 --- a/test/extra/bad/bad-eof-in-string.ttl +++ b/test/extra/eof/bad-ttl-eof-in-string.ttl diff --git a/test/extra/bad/bad-eof-in-text-character.ttl b/test/extra/eof/bad-ttl-eof-in-text-character.ttl index a614803a..a614803a 100644 --- a/test/extra/bad/bad-eof-in-text-character.ttl +++ b/test/extra/eof/bad-ttl-eof-in-text-character.ttl diff --git a/test/extra/bad/bad-eof-in-triple-quote.ttl b/test/extra/eof/bad-ttl-eof-in-triple-quote.ttl index fb935441..fb935441 100644 --- a/test/extra/bad/bad-eof-in-triple-quote.ttl +++ b/test/extra/eof/bad-ttl-eof-in-triple-quote.ttl diff --git a/test/extra/bad/bad-eof-in-uri-character.ttl b/test/extra/eof/bad-ttl-eof-in-uri-character.ttl index eda70770..eda70770 100644 --- a/test/extra/bad/bad-eof-in-uri-character.ttl +++ b/test/extra/eof/bad-ttl-eof-in-uri-character.ttl diff --git a/test/extra/bad/bad-eof-in-uri-scheme.nt b/test/extra/eof/bad-ttl-eof-in-uri-scheme.ttl index de892dcf..de892dcf 100644 --- a/test/extra/bad/bad-eof-in-uri-scheme.nt +++ b/test/extra/eof/bad-ttl-eof-in-uri-scheme.ttl diff --git a/test/extra/bad/bad-eof-in-uri.ttl b/test/extra/eof/bad-ttl-eof-in-uri.ttl index 07b6e6ab..07b6e6ab 100644 --- a/test/extra/bad/bad-eof-in-uri.ttl +++ b/test/extra/eof/bad-ttl-eof-in-uri.ttl diff --git a/test/extra/bad/bad-eof-in-utf8-character.ttl b/test/extra/eof/bad-ttl-eof-in-utf8-character.ttl index 16784e88..16784e88 100644 --- a/test/extra/bad/bad-eof-in-utf8-character.ttl +++ b/test/extra/eof/bad-ttl-eof-in-utf8-character.ttl diff --git a/test/extra/eof/manifest.ttl b/test/extra/eof/manifest.ttl new file mode 100644 index 00000000..465333f7 --- /dev/null +++ b/test/extra/eof/manifest.ttl @@ -0,0 +1,225 @@ +@prefix mf: <http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . +@prefix rdft: <http://www.w3.org/ns/rdftest#> . + +<> + a mf:Manifest ; + rdfs:comment "Serd EOF (truncated input) test suite" ; + mf:entries ( + <#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-ttl-eof-after-quotes> + <#bad-ttl-eof-at-string-start> + <#bad-ttl-eof-in-blank> + <#bad-ttl-eof-in-escape> + <#bad-ttl-eof-in-lang> + <#bad-ttl-eof-in-lang-suffix> + <#bad-ttl-eof-in-list> + <#bad-ttl-eof-in-long-string> + <#bad-ttl-eof-in-object-list> + <#bad-ttl-eof-in-object-list2> + <#bad-ttl-eof-in-predicate-list> + <#bad-ttl-eof-in-string> + <#bad-ttl-eof-in-text-character> + <#bad-ttl-eof-in-triple-quote> + <#bad-ttl-eof-in-uri> + <#bad-ttl-eof-in-uri-character> + <#bad-ttl-eof-in-uri-scheme> + <#bad-ttl-eof-in-utf8-character> + ) . + +<#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-ttl-eof-after-quotes> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-after-quotes.ttl> ; + mf:name "bad-ttl-eof-after-quotes" . + +<#bad-ttl-eof-at-string-start> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-at-string-start.ttl> ; + mf:name "bad-ttl-eof-at-string-start" . + +<#bad-ttl-eof-in-blank> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-blank.ttl> ; + mf:name "bad-ttl-eof-in-blank" . + +<#bad-ttl-eof-in-escape> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-escape.ttl> ; + mf:name "bad-ttl-eof-in-escape" . + +<#bad-ttl-eof-in-lang> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-lang.ttl> ; + mf:name "bad-ttl-eof-in-lang" . + +<#bad-ttl-eof-in-lang-suffix> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-lang-suffix.ttl> ; + mf:name "bad-ttl-eof-in-lang-suffix" . + +<#bad-ttl-eof-in-list> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-list.ttl> ; + mf:name "bad-ttl-eof-in-list" . + +<#bad-ttl-eof-in-long-string> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-long-string.ttl> ; + mf:name "bad-ttl-eof-in-long-string" . + +<#bad-ttl-eof-in-object-list> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-object-list.ttl> ; + mf:name "bad-ttl-eof-in-object-list" . + +<#bad-ttl-eof-in-object-list2> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-object-list2.ttl> ; + mf:name "bad-ttl-eof-in-object-list2" . + +<#bad-ttl-eof-in-predicate-list> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-predicate-list.ttl> ; + mf:name "bad-ttl-eof-in-predicate-list" . + +<#bad-ttl-eof-in-string> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-string.ttl> ; + mf:name "bad-ttl-eof-in-string" . + +<#bad-ttl-eof-in-text-character> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-text-character.ttl> ; + mf:name "bad-ttl-eof-in-text-character" . + +<#bad-ttl-eof-in-triple-quote> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-triple-quote.ttl> ; + mf:name "bad-ttl-eof-in-triple-quote" . + +<#bad-ttl-eof-in-uri> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-uri.ttl> ; + mf:name "bad-ttl-eof-in-uri" . + +<#bad-ttl-eof-in-uri-character> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-uri-character.ttl> ; + mf:name "bad-ttl-eof-in-uri-character" . + +<#bad-ttl-eof-in-uri-scheme> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-uri-scheme.ttl> ; + mf:name "bad-ttl-eof-in-uri-scheme" . + +<#bad-ttl-eof-in-utf8-character> + a rdft:TestTurtleNegativeSyntax ; + mf:action <bad-ttl-eof-in-utf8-character.ttl> ; + mf:name "bad-ttl-eof-in-utf8-character" . diff --git a/test/lint/meson.build b/test/lint/meson.build index b89af7d7..7e024cb5 100644 --- a/test/lint/meson.build +++ b/test/lint/meson.build @@ -94,14 +94,16 @@ if pylint.found() endif # Check Turtle formatting with serdi -foreach ttl_file_path : ttl_metadata_file_paths - test( - ttl_file_path.substring(3).underscorify(), - check_formatting_py, - args: [files(ttl_file_path), serdi, '-o', 'turtle'], - suite: 'data', - ) -endforeach +if is_variable('serdi') + foreach ttl_file_path : ttl_metadata_file_paths + test( + ttl_file_path.substring(3).underscorify(), + check_formatting_py, + args: [files(ttl_file_path), serdi, '-o', 'turtle'], + suite: 'data', + ) + endforeach +endif if not meson.is_subproject() # Check release metadata diff --git a/test/meson.build b/test/meson.build index 889d6fae..db88fa61 100644 --- a/test/meson.build +++ b/test/meson.build @@ -212,6 +212,17 @@ test_suites = { '--', '-b', ], + 'eof': [ + files('extra/eof/manifest.ttl'), + ns_serdtest + 'eof/', + ], + 'eof_lax': [ + '--ignore', + files('extra/eof/manifest.ttl'), + ns_serdtest + 'eof/', + '--', + '-l' + ], 'fast': [ files('extra/good/manifest.ttl'), ns_serdtest + 'good/', diff --git a/test/run_suite.py b/test/run_suite.py index 2e93502f..3811a74e 100755 --- a/test/run_suite.py +++ b/test/run_suite.py @@ -58,7 +58,7 @@ def run_positive_test(base_uri, command, in_path): return True -def run_negative_test(base_uri, command, in_path): +def run_negative_test(base_uri, command, in_path, ignore): """Run a negative syntax test and return whether the error was detected.""" if not os.path.exists(in_path): @@ -67,10 +67,14 @@ def run_negative_test(base_uri, command, in_path): command = command + [in_path, base_uri] proc = subprocess.run(command, check=False, stderr=PIPE, stdout=DEVNULL) - if proc.returncode == 0: + if not ignore and proc.returncode == 0: util.error("Unexpected successful return: " + in_path) return False + if proc.returncode < 0: + util.error("Command seems to have crashed: " + in_path) + return False + if len(proc.stderr) == 0: util.error("Command failed with no error output: " + in_path) return False @@ -86,7 +90,7 @@ def run_entry(args, entry, command, out_dir, suite_dir): negative = "Negative" in entry[NS_RDF + "type"][0] if negative and not args.lax: - return run_negative_test(base, command, in_path) + return run_negative_test(base, command, in_path, args.ignore) if NS_MF + "result" not in entry: return run_positive_test(base, command, in_path) @@ -151,6 +155,7 @@ def main(): ) parser.add_argument("--asserter", help="asserter URI for test report") + parser.add_argument("--ignore", action="store_true", help="ignore status") parser.add_argument("--lax", action="store_true", help="tolerate errors") parser.add_argument("--report", help="path to write result report to") parser.add_argument("--reverse", action="store_true", help="reverse test") |