earl-report 0.7.1 → 0.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +13 -12
- data/VERSION +1 -1
- data/lib/earl_report/views/earl_report.html.haml +4 -0
- data/lib/earl_report.rb +7 -6
- data/spec/test-files/doap.ttl +1 -1
- data/spec/test-files/report-complete.ttl +1 -1
- data/spec/test-files/report-no-foaf.ttl +1 -1
- data/spec/test-files/report-no-test.ttl +1 -1
- data/spec/test-files/results.html +14 -14
- data/spec/test-files/results.jsonld +39 -39
- data/spec/test-files/results.ttl +19 -19
- metadata +29 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 857a0fe097b59bd59f9c12b94eabaeb250571db86e013b18c1f1f2ba8a25d6fb
|
4
|
+
data.tar.gz: cc6261fa941d98c5ebe1cf2b1a8a999b1c5b510c3c364842e985da48461a9c26
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 79c602f4e3b5232e5f9449027e942dbc64ecd70b91a2bd43fcf05b620f418e0d68da344024e8021973d956cbeb6ad58e3c41a3e38c47ccea7a8a4e631d854c92
|
7
|
+
data.tar.gz: eb7ee3ee2297b5e40807c5f340a1d70b1672cdf869a1e990388516a586daf9cbdec1520ffdb125dca1b1e5c5eec6decb314681f55039f48cc44d77570aa561d7
|
data/README.md
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
# earl-report
|
2
|
-
Ruby gem to consolidate multiple EARL report and generate a rollup conformance report.
|
2
|
+
Ruby gem to consolidate multiple [EARL][] report and generate a rollup conformance report.
|
3
3
|
|
4
4
|
[![Gem Version](https://badge.fury.io/rb/earl-report.png)](http://badge.fury.io/rb/earl-report)
|
5
5
|
[![Build Status](https://github.com/gkellogg/earl-report/workflows/CI/badge.svg?branch=develop)](https://github.com/gkellogg/earl-report/actions?query=workflow%3ACI)
|
@@ -8,8 +8,9 @@ Ruby gem to consolidate multiple EARL report and generate a rollup conformance r
|
|
8
8
|
## Description
|
9
9
|
Reads a test manifest in the
|
10
10
|
[standard RDF WG format](http://www.w3.org/2011/rdf-wg/wiki/Turtle_Test_Suite)
|
11
|
-
along with one or more individual EARL reports and generates a rollup report in
|
12
|
-
|
11
|
+
along with one or more individual <abbr title="Evaluation and Report Language (EARL) 1.0 Schema">[EARL][]</abbr> reports and generates a rollup report in HTML in [ReSpec][] format.
|
12
|
+
|
13
|
+
[EARL]() reports use the [Evaluation and Report Language (EARL) 1.0 Schema][EARL] to describe test results in RDF to relate the results for a given _subject_ to a _test_ defined in a _test manifest_.
|
13
14
|
|
14
15
|
## Individual EARL reports
|
15
16
|
Results for individual implementations should be specified in Turtle form, but
|
@@ -26,13 +27,13 @@ in the following form:
|
|
26
27
|
dc:date "2012-11-17T15:19:11-05:00"^^xsd:dateTime];
|
27
28
|
earl:mode earl:automatic ] .
|
28
29
|
|
29
|
-
Additionally, `earl:subject` is expected to reference a [DOAP]
|
30
|
+
Additionally, `earl:subject` is expected to reference a [DOAP][] description
|
30
31
|
of the reported software, in the following form:
|
31
32
|
|
32
33
|
<https://rubygems.org/gems/rdf-turtle> a doap:Project, earl:TestSubject, earl:Software ;
|
33
34
|
doap:name "RDF::Turtle" ;
|
34
35
|
doap:developer <https://greggkellogg.net/foaf#me> ;
|
35
|
-
doap:homepage <
|
36
|
+
doap:homepage <https://ruby-rdf.github.io/rdf-turtle> ;
|
36
37
|
doap:description "RDF::Turtle is an Turtle reader/writer for the RDF.rb library suite."@en ;
|
37
38
|
doap:release [
|
38
39
|
doap:name "RDF::Turtle 3.1.0" ;
|
@@ -41,26 +42,26 @@ of the reported software, in the following form:
|
|
41
42
|
] ;
|
42
43
|
doap:programming-language "Ruby" .
|
43
44
|
|
44
|
-
The [DOAP]
|
45
|
+
The [DOAP][] description may be included in the [EARL][] report. If not found,
|
45
46
|
the IRI identified by `earl:subject` will be dereferenced and is presumed to
|
46
|
-
provide a [DOAP]
|
47
|
+
provide a [DOAP][] specification of the test subject.
|
47
48
|
|
48
|
-
The `doap:developer` is expected to reference a [FOAF]
|
49
|
+
The `doap:developer` is expected to reference a [FOAF][] profile for the agent
|
49
50
|
(user or organization) responsible for the test subject. It is expected to be
|
50
51
|
of the following form:
|
51
52
|
|
52
53
|
<https://greggkellogg.net/foaf#me> foaf:name "Gregg Kellogg" .
|
53
54
|
|
54
55
|
If not found, the IRI identified by `doap:developer`
|
55
|
-
will be dereferenced and is presumed to provide a [FOAF]
|
56
|
+
will be dereferenced and is presumed to provide a [FOAF][] profile of the developer.
|
56
57
|
|
57
58
|
Assertions are added to each test entry based on that test being referenced from the assertion.
|
58
59
|
|
59
60
|
## Manifest query
|
60
61
|
The test manifest is used to find test entries and a manifest. The built-in
|
61
|
-
query is based on the [standard RDF WG format]
|
62
|
+
query is based on the [standard RDF WG format][]. Alternative manifest formats
|
62
63
|
can be used by specifying a customized manifest query, but may require a custom
|
63
|
-
[Haml]
|
64
|
+
[Haml][] template for report generation. The default query is the following:
|
64
65
|
|
65
66
|
PREFIX mf: <http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#>
|
66
67
|
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
|
@@ -75,7 +76,7 @@ can be used by specifying a customized manifest query, but may require a custom
|
|
75
76
|
}
|
76
77
|
|
77
78
|
## Report generation template
|
78
|
-
The report template is in [ReSpec][] form using [Haml]
|
79
|
+
The report template is in [ReSpec][] form using [Haml][] to generate individual report elements.
|
79
80
|
|
80
81
|
## Changes from previous versions
|
81
82
|
### Version 0.7
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.8.0
|
@@ -204,6 +204,7 @@
|
|
204
204
|
Test Manifests
|
205
205
|
%ul.toc
|
206
206
|
- tests['entries'].sort_by {|m| m['title'].to_s.downcase}.each_with_index do |manifest, ndx|
|
207
|
+
- manifest['rdfs:comment'] = manifest['rdfs:comment']['@value'] if manifest['rdfs:comment'].is_a?(Hash)
|
207
208
|
%li.tocline
|
208
209
|
%span.secno="2.#{ndx+1}"
|
209
210
|
%a.tocxref{href: "##{manifest['rdfs:comment'].gsub(' ', '-')}"}
|
@@ -296,6 +297,7 @@
|
|
296
297
|
Test Manifests
|
297
298
|
- tests['entries'].each_with_index do |manifest, ndx2|
|
298
299
|
- test_cases = manifest['entries']
|
300
|
+
- manifest['title'] = manifest['title']['@value'] if manifest['title'].is_a?(Hash)
|
299
301
|
%section{id: manifest['rdfs:comment'].gsub(' ', '-'), typeof: manifest['@type'].join(" "), resource: manifest['@id']}
|
300
302
|
%h2
|
301
303
|
%span.secno="2.#{ndx2+1}"
|
@@ -319,6 +321,7 @@
|
|
319
321
|
%a{href: '#' + subject_refs[subject['@id']]}<=subject['name']
|
320
322
|
- test_cases.each do |test|
|
321
323
|
- test['title'] ||= test['rdfs:label']
|
324
|
+
- test['title'] = test['title']['@value'] if test['title'].is_a?(Hash)
|
322
325
|
- test['title'] = Array(test['title']).first
|
323
326
|
- tid = "test_#{Digest::MD5.hexdigest(test['@id'])}"
|
324
327
|
- (test_info[tid] ||= []) << test
|
@@ -391,6 +394,7 @@
|
|
391
394
|
- if subject['developer']
|
392
395
|
%dt= "Developer"
|
393
396
|
- subject['developer'].each do |dev|
|
397
|
+
- dev['foaf:name'] = dev['foaf:name']['@value'] if dev['foaf:name'].is_a?(Hash)
|
394
398
|
%dd{rel: "doap:developer"}
|
395
399
|
%div{resource: dev['@id'], typeof: Array(dev['@type']).join(" ")}
|
396
400
|
- if dev.has_key?('@id')
|
data/lib/earl_report.rb
CHANGED
@@ -68,16 +68,16 @@ class EarlReport
|
|
68
68
|
ASSERTION_QUERY = %(
|
69
69
|
PREFIX earl: <http://www.w3.org/ns/earl#>
|
70
70
|
|
71
|
-
SELECT ?test ?subject ?by ?mode ?outcome
|
71
|
+
SELECT ?test ?subject ?by ?mode ?outcome ?info
|
72
72
|
WHERE {
|
73
73
|
?a a earl:Assertion;
|
74
74
|
earl:assertedBy ?by;
|
75
|
-
earl:result
|
75
|
+
earl:result ?result;
|
76
76
|
earl:subject ?subject;
|
77
77
|
earl:test ?test .
|
78
|
-
|
79
|
-
|
80
|
-
}
|
78
|
+
?result earl:outcome ?outcome .
|
79
|
+
OPTIONAL {?a earl:mode ?mode .}
|
80
|
+
OPTIONAL {?result earl:info ?info .}
|
81
81
|
}
|
82
82
|
ORDER BY ?subject
|
83
83
|
).freeze
|
@@ -396,6 +396,7 @@ class EarlReport
|
|
396
396
|
graph << RDF::Statement(a, RDF::Vocab::EARL.result, r)
|
397
397
|
graph << RDF::Statement(r, RDF.type, RDF::Vocab::EARL.TestResult)
|
398
398
|
graph << RDF::Statement(r, RDF::Vocab::EARL.outcome, solution[:outcome])
|
399
|
+
graph << RDF::Statement(r, RDF::Vocab::EARL.info, solution[:info]) if solution[:info]
|
399
400
|
end
|
400
401
|
|
401
402
|
# See if subject did not report results, which may indicate a formatting error in the EARL source
|
@@ -524,7 +525,7 @@ class EarlReport
|
|
524
525
|
# Reorder test assertions to make them consistent with subject order
|
525
526
|
Array(framed['entries']).each do |manifest|
|
526
527
|
manifest['entries'].each do |test|
|
527
|
-
test['assertions'] = test['assertions'].sort_by {|a| a['subject']}
|
528
|
+
test['assertions'] = test['assertions'].sort_by {|a| a['subject'].to_s}
|
528
529
|
end
|
529
530
|
end
|
530
531
|
framed
|
data/spec/test-files/doap.ttl
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
|
10
10
|
<https://rubygems.org/gems/rdf-turtle> a doap:Project, earl:TestSubject, earl:Software ;
|
11
11
|
doap:name "RDF::Turtle" ;
|
12
|
-
doap:homepage <
|
12
|
+
doap:homepage <https://ruby-rdf.github.io/rdf-turtle> ;
|
13
13
|
doap:license <http://creativecommons.org/publicdomain/zero/1.0/> ;
|
14
14
|
doap:shortdesc "Turtle reader/writer for Ruby."@en ;
|
15
15
|
doap:description "RDF::Turtle is an Turtle reader/writer for the RDF.rb library suite."@en ;
|
@@ -9,7 +9,7 @@
|
|
9
9
|
|
10
10
|
<https://rubygems.org/gems/rdf-turtle> a doap:Project, earl:TestSubject, earl:Software ;
|
11
11
|
doap:name "RDF::Turtle" ;
|
12
|
-
doap:homepage <
|
12
|
+
doap:homepage <https://ruby-rdf.github.io/rdf-turtle> ;
|
13
13
|
doap:license <http://creativecommons.org/publicdomain/zero/1.0/> ;
|
14
14
|
doap:shortdesc "Turtle reader/writer for Ruby."@en ;
|
15
15
|
doap:description "RDF::Turtle is an Turtle reader/writer for the RDF.rb library suite."@en ;
|
@@ -9,7 +9,7 @@
|
|
9
9
|
|
10
10
|
<https://rubygems.org/gems/rdf-turtle> a doap:Project, earl:TestSubject, earl:Software ;
|
11
11
|
doap:name "RDF::Turtle" ;
|
12
|
-
doap:homepage <
|
12
|
+
doap:homepage <https://ruby-rdf.github.io/rdf-turtle> ;
|
13
13
|
doap:license <http://creativecommons.org/publicdomain/zero/1.0/> ;
|
14
14
|
doap:shortdesc "Turtle reader/writer for Ruby."@en ;
|
15
15
|
doap:description "RDF::Turtle is an Turtle reader/writer for the RDF.rb library suite."@en ;
|
@@ -9,7 +9,7 @@
|
|
9
9
|
|
10
10
|
<https://rubygems.org/gems/rdf-turtle> a doap:Project, earl:TestSubject, earl:Software ;
|
11
11
|
doap:name "RDF::Turtle" ;
|
12
|
-
doap:homepage <
|
12
|
+
doap:homepage <https://ruby-rdf.github.io/rdf-turtle> ;
|
13
13
|
doap:license <http://creativecommons.org/publicdomain/zero/1.0/> ;
|
14
14
|
doap:shortdesc "Turtle reader/writer for Ruby."@en ;
|
15
15
|
doap:description "RDF::Turtle is an Turtle reader/writer for the RDF.rb library suite."@en ;
|
@@ -73,8 +73,8 @@ Implementation Report
|
|
73
73
|
<h2 id='w3c-document-28-october-2015'>
|
74
74
|
<abbr title='World Wide Web Consortium'>W3C</abbr>
|
75
75
|
Document
|
76
|
-
<time class='dt-published' datetime='
|
77
|
-
|
76
|
+
<time class='dt-published' datetime='2022-03-15' property='dc:issued'>
|
77
|
+
15 March 2022
|
78
78
|
</time>
|
79
79
|
</h2>
|
80
80
|
<dl>
|
@@ -231,7 +231,7 @@ Report Generation Software
|
|
231
231
|
<span class='secno'>2.</span>
|
232
232
|
Test Manifests
|
233
233
|
</h2>
|
234
|
-
<section id='Description-for-Example-Test-Cases' resource='http://example/manifest.ttl' typeof='
|
234
|
+
<section id='Description-for-Example-Test-Cases' resource='http://example/manifest.ttl' typeof='mf:Manifest Report'>
|
235
235
|
<h2>
|
236
236
|
<span class='secno'>2.1</span>
|
237
237
|
<span property='dc:title mf:name'>Example Test Cases</span>
|
@@ -245,7 +245,7 @@ Test
|
|
245
245
|
<a href='#subj_0'>RDF::Turtle</a>
|
246
246
|
</th>
|
247
247
|
</tr>
|
248
|
-
<tr inlist='inlist' rel='mf:entries' resource='http://example/manifest.ttl#testeval00' typeof='
|
248
|
+
<tr inlist='inlist' rel='mf:entries' resource='http://example/manifest.ttl#testeval00' typeof='http://www.w3.org/ns/rdftest#TestTurtleEval TestCriterion TestCase'>
|
249
249
|
<td>
|
250
250
|
<a href='#test_1fdd82ac4caf30510cabfdb0a5987ddd'>subm-test-00</a>
|
251
251
|
</td>
|
@@ -261,9 +261,9 @@ PASS
|
|
261
261
|
</span>
|
262
262
|
</td>
|
263
263
|
</tr>
|
264
|
-
<tr inlist='inlist' rel='mf:entries' resource='_:
|
264
|
+
<tr inlist='inlist' rel='mf:entries' resource='_:b0' typeof='http://www.w3.org/ns/rdftest#TestTurtleEval TestCriterion TestCase'>
|
265
265
|
<td>
|
266
|
-
<a href='#
|
266
|
+
<a href='#test_9616fad74c7bf0cfba5d70f087ed0a96'>subm-test-01</a>
|
267
267
|
</td>
|
268
268
|
<td class='UNTESTED' typeof='Assertion'>
|
269
269
|
<link href='https://rubygems.org/gems/rdf-turtle' property='earl:subject' />
|
@@ -300,7 +300,7 @@ This report was tested using the following test subjects:
|
|
300
300
|
<span about='https://rubygems.org/gems/rdf-turtle' property='doap:name'>RDF::Turtle</span>
|
301
301
|
</a>
|
302
302
|
</dt>
|
303
|
-
<dd property='earl:testSubjects' resource='https://rubygems.org/gems/rdf-turtle' typeof='
|
303
|
+
<dd property='earl:testSubjects' resource='https://rubygems.org/gems/rdf-turtle' typeof='doap:Project TestSubject Software'>
|
304
304
|
<dl>
|
305
305
|
<dt>Description</dt>
|
306
306
|
<dd lang='en' property='doap:description'>RDF::Turtle is an Turtle reader/writer for the RDF.rb library suite.</dd>
|
@@ -310,8 +310,8 @@ This report was tested using the following test subjects:
|
|
310
310
|
<dd property='doap:programming-language'>Ruby</dd>
|
311
311
|
<dt>Home Page</dt>
|
312
312
|
<dd>
|
313
|
-
<a href='
|
314
|
-
|
313
|
+
<a href='https://ruby-rdf.github.io/rdf-turtle' property='doap:homepage'>
|
314
|
+
https://ruby-rdf.github.io/rdf-turtle
|
315
315
|
</a>
|
316
316
|
</dd>
|
317
317
|
<dt>Developer</dt>
|
@@ -376,11 +376,11 @@ Test
|
|
376
376
|
<pre class='example actionDoc' property='mf:action' resource='http://example/test-00.ttl' title='subm-test-00 Input'>http://example/test-00.ttl not loaded</pre>
|
377
377
|
<pre class='example resultDoc' property='mf:result' resource='http://example/test-00.out' title='subm-test-00 Result'>http://example/test-00.out not loaded</pre>
|
378
378
|
</dd>
|
379
|
-
<dt id='
|
379
|
+
<dt id='test_9616fad74c7bf0cfba5d70f087ed0a96' resource='_:b0'>
|
380
380
|
Test
|
381
381
|
<span property='dc:title mf:name'>subm-test-01</span>
|
382
382
|
</dt>
|
383
|
-
<dd resource='_:
|
383
|
+
<dd resource='_:b0'>
|
384
384
|
<p property='dc:description rdfs:comment'></p>
|
385
385
|
<pre class='example actionDoc' property='mf:action' resource='http://example/test-01.ttl' title='subm-test-01 Input'>http://example/test-01.ttl not loaded</pre>
|
386
386
|
<pre class='example resultDoc' property='mf:result' resource='http://example/test-01.out' title='subm-test-01 Result'>http://example/test-01.out not loaded</pre>
|
@@ -399,9 +399,9 @@ This report generated by
|
|
399
399
|
<meta content='Earl Report summary generator' property='doap:shortdesc' />
|
400
400
|
<meta content='EarlReport generates HTML+RDFa rollups of multiple EARL reports' property='doap:description' />
|
401
401
|
version
|
402
|
-
<span property='doap:release' resource='https://github.com/gkellogg/earl-report/tree/0.
|
403
|
-
<span property='doap:revision'>0.
|
404
|
-
<meta content='earl-report-0.
|
402
|
+
<span property='doap:release' resource='https://github.com/gkellogg/earl-report/tree/0.8.0' typeof='doap:Version'>
|
403
|
+
<span property='doap:revision'>0.8.0</span>
|
404
|
+
<meta content='earl-report-0.8.0' property='doap:name' />
|
405
405
|
</span>
|
406
406
|
an
|
407
407
|
<a href='http://unlicense.org' property='doap:license'>Unlicensed</a>
|
@@ -115,6 +115,7 @@
|
|
115
115
|
"Software",
|
116
116
|
"doap:Project"
|
117
117
|
],
|
118
|
+
"name": "Turtle Test Results",
|
118
119
|
"bibRef": "[[TURTLE]]",
|
119
120
|
"generatedBy": {
|
120
121
|
"@id": "https://rubygems.org/gems/earl-report",
|
@@ -122,18 +123,21 @@
|
|
122
123
|
"Software",
|
123
124
|
"doap:Project"
|
124
125
|
],
|
125
|
-
"
|
126
|
+
"name": "earl-report",
|
126
127
|
"shortdesc": "Earl Report summary generator",
|
127
128
|
"doapDesc": "EarlReport generates HTML+RDFa rollups of multiple EARL reports",
|
129
|
+
"homepage": "https://github.com/gkellogg/earl-report",
|
130
|
+
"language": "Ruby",
|
131
|
+
"license": "http://unlicense.org",
|
128
132
|
"release": {
|
129
|
-
"@id": "https://github.com/gkellogg/earl-report/tree/0.
|
133
|
+
"@id": "https://github.com/gkellogg/earl-report/tree/0.8.0",
|
130
134
|
"@type": "doap:Version",
|
135
|
+
"name": "earl-report-0.8.0",
|
131
136
|
"doap:created": {
|
132
137
|
"@type": "http://www.w3.org/2001/XMLSchema#date",
|
133
138
|
"@value": "2021-12-18"
|
134
139
|
},
|
135
|
-
"revision": "0.
|
136
|
-
"name": "earl-report-0.7.0"
|
140
|
+
"revision": "0.8.0"
|
137
141
|
},
|
138
142
|
"developer": [
|
139
143
|
{
|
@@ -142,28 +146,23 @@
|
|
142
146
|
"foaf:Person",
|
143
147
|
"Assertor"
|
144
148
|
],
|
145
|
-
"foaf:
|
146
|
-
"foaf:
|
149
|
+
"foaf:name": "Gregg Kellogg",
|
150
|
+
"foaf:homepage": "https://greggkellogg.net/"
|
147
151
|
}
|
148
|
-
]
|
149
|
-
"language": "Ruby",
|
150
|
-
"name": "earl-report",
|
151
|
-
"license": "http://unlicense.org"
|
152
|
+
]
|
152
153
|
},
|
154
|
+
"assertions": [
|
155
|
+
"/Users/gregg/Projects/earl-report/spec/test-files/report-complete.ttl"
|
156
|
+
],
|
153
157
|
"testSubjects": [
|
154
158
|
{
|
155
159
|
"@id": "https://rubygems.org/gems/rdf-turtle",
|
156
160
|
"@type": [
|
157
|
-
"Software",
|
158
161
|
"doap:Project",
|
159
|
-
"TestSubject"
|
162
|
+
"TestSubject",
|
163
|
+
"Software"
|
160
164
|
],
|
161
|
-
"
|
162
|
-
"doapDesc": "RDF::Turtle is an Turtle reader/writer for the RDF.rb library suite.",
|
163
|
-
"release": {
|
164
|
-
"@id": "_:b2",
|
165
|
-
"revision": "unknown"
|
166
|
-
},
|
165
|
+
"name": "RDF::Turtle",
|
167
166
|
"developer": [
|
168
167
|
{
|
169
168
|
"@id": "https://greggkellogg.net/foaf#me",
|
@@ -171,20 +170,25 @@
|
|
171
170
|
"foaf:Person",
|
172
171
|
"Assertor"
|
173
172
|
],
|
174
|
-
"foaf:
|
175
|
-
"foaf:
|
173
|
+
"foaf:name": "Gregg Kellogg",
|
174
|
+
"foaf:homepage": "https://greggkellogg.net/"
|
176
175
|
}
|
177
176
|
],
|
177
|
+
"homepage": "https://ruby-rdf.github.io/rdf-turtle",
|
178
|
+
"doapDesc": "RDF::Turtle is an Turtle reader/writer for the RDF.rb library suite.",
|
178
179
|
"language": "Ruby",
|
179
|
-
"
|
180
|
+
"release": {
|
181
|
+
"@id": "_:b1",
|
182
|
+
"revision": "unknown"
|
183
|
+
}
|
180
184
|
}
|
181
185
|
],
|
182
186
|
"entries": [
|
183
187
|
{
|
184
188
|
"@id": "http://example/manifest.ttl",
|
185
189
|
"@type": [
|
186
|
-
"
|
187
|
-
"
|
190
|
+
"mf:Manifest",
|
191
|
+
"Report"
|
188
192
|
],
|
189
193
|
"title": "Example Test Cases",
|
190
194
|
"rdfs:comment": "Description for Example Test Cases",
|
@@ -192,24 +196,24 @@
|
|
192
196
|
{
|
193
197
|
"@id": "http://example/manifest.ttl#testeval00",
|
194
198
|
"@type": [
|
195
|
-
"TestCriterion",
|
196
199
|
"http://www.w3.org/ns/rdftest#TestTurtleEval",
|
200
|
+
"TestCriterion",
|
197
201
|
"TestCase"
|
198
202
|
],
|
199
|
-
"testAction": "http://example/test-00.ttl",
|
200
203
|
"title": "subm-test-00",
|
201
204
|
"rdfs:comment": "Blank subject",
|
205
|
+
"testAction": "http://example/test-00.ttl",
|
202
206
|
"testResult": "http://example/test-00.out",
|
203
207
|
"assertions": [
|
204
208
|
{
|
205
|
-
"@id": "_:
|
209
|
+
"@id": "_:b2",
|
206
210
|
"@type": "Assertion",
|
211
|
+
"subject": "https://rubygems.org/gems/rdf-turtle",
|
207
212
|
"test": "http://example/manifest.ttl#testeval00",
|
208
|
-
"mode": "earl:automatic",
|
209
213
|
"assertedBy": "https://greggkellogg.net/foaf#me",
|
210
|
-
"
|
214
|
+
"mode": "earl:automatic",
|
211
215
|
"result": {
|
212
|
-
"@id": "_:
|
216
|
+
"@id": "_:b3",
|
213
217
|
"@type": "TestResult",
|
214
218
|
"outcome": "earl:passed"
|
215
219
|
}
|
@@ -217,24 +221,24 @@
|
|
217
221
|
]
|
218
222
|
},
|
219
223
|
{
|
220
|
-
"@id": "_:
|
224
|
+
"@id": "_:b0",
|
221
225
|
"@type": [
|
222
|
-
"TestCriterion",
|
223
226
|
"http://www.w3.org/ns/rdftest#TestTurtleEval",
|
227
|
+
"TestCriterion",
|
224
228
|
"TestCase"
|
225
229
|
],
|
226
|
-
"testAction": "http://example/test-01.ttl",
|
227
230
|
"title": "subm-test-01",
|
228
231
|
"rdfs:comment": "@prefix and qnames",
|
232
|
+
"testAction": "http://example/test-01.ttl",
|
229
233
|
"testResult": "http://example/test-01.out",
|
230
234
|
"assertions": [
|
231
235
|
{
|
232
|
-
"@id": "_:
|
236
|
+
"@id": "_:b4",
|
233
237
|
"@type": "Assertion",
|
234
|
-
"test": "_:b3",
|
235
238
|
"subject": "https://rubygems.org/gems/rdf-turtle",
|
239
|
+
"test": "_:b0",
|
236
240
|
"result": {
|
237
|
-
"@id": "_:
|
241
|
+
"@id": "_:b5",
|
238
242
|
"@type": "TestResult",
|
239
243
|
"outcome": "earl:untested"
|
240
244
|
},
|
@@ -244,9 +248,5 @@
|
|
244
248
|
}
|
245
249
|
]
|
246
250
|
}
|
247
|
-
],
|
248
|
-
"name": "Turtle Test Results",
|
249
|
-
"assertions": [
|
250
|
-
"/Users/gregg/Projects/earl-report/spec/test-files/report-complete.ttl"
|
251
251
|
]
|
252
252
|
}
|
data/spec/test-files/results.ttl
CHANGED
@@ -8,24 +8,24 @@
|
|
8
8
|
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
9
9
|
|
10
10
|
<> a earl:Software, doap:Project ;
|
11
|
+
doap:name "Turtle Test Results" ;
|
11
12
|
dc:bibliographicCitation "[[TURTLE]]" ;
|
12
13
|
earl:generatedBy <https://rubygems.org/gems/earl-report> ;
|
14
|
+
mf:report </Users/gregg/Projects/earl-report/spec/test-files/report-complete.ttl> ;
|
13
15
|
earl:testSubjects <https://rubygems.org/gems/rdf-turtle> ;
|
14
|
-
mf:entries (<http://example/manifest.ttl>)
|
15
|
-
doap:name "Turtle Test Results" ;
|
16
|
-
mf:report </Users/gregg/Projects/earl-report/spec/test-files/report-complete.ttl> .
|
16
|
+
mf:entries (<http://example/manifest.ttl>) .
|
17
17
|
|
18
18
|
# Manifests
|
19
|
-
<http://example/manifest.ttl> a
|
19
|
+
<http://example/manifest.ttl> a mf:Manifest, earl:Report ;
|
20
20
|
mf:name "Example Test Cases" ;
|
21
21
|
rdfs:comment "Description for Example Test Cases" ;
|
22
22
|
mf:entries (<http://example/manifest.ttl#testeval00>
|
23
23
|
_:b0) .
|
24
24
|
|
25
|
-
<http://example/manifest.ttl#testeval00> a
|
26
|
-
mf:action <http://example/test-00.ttl> ;
|
25
|
+
<http://example/manifest.ttl#testeval00> a <http://www.w3.org/ns/rdftest#TestTurtleEval>, earl:TestCriterion, earl:TestCase ;
|
27
26
|
mf:name "subm-test-00" ;
|
28
27
|
rdfs:comment "Blank subject" ;
|
28
|
+
mf:action <http://example/test-00.ttl> ;
|
29
29
|
mf:result <http://example/test-00.out> ;
|
30
30
|
earl:assertions [
|
31
31
|
a earl:Assertion ;
|
@@ -38,10 +38,10 @@
|
|
38
38
|
earl:assertedBy <https://greggkellogg.net/foaf#me> ;
|
39
39
|
] .
|
40
40
|
|
41
|
-
_:b0 a
|
42
|
-
mf:action <http://example/test-01.ttl> ;
|
41
|
+
_:b0 a <http://www.w3.org/ns/rdftest#TestTurtleEval>, earl:TestCriterion, earl:TestCase ;
|
43
42
|
mf:name "subm-test-01" ;
|
44
43
|
rdfs:comment "@prefix and qnames" ;
|
44
|
+
mf:action <http://example/test-01.ttl> ;
|
45
45
|
mf:result <http://example/test-01.out> ;
|
46
46
|
earl:assertions [
|
47
47
|
a earl:Assertion ;
|
@@ -53,17 +53,17 @@ _:b0 a earl:TestCriterion, <http://www.w3.org/ns/rdftest#TestTurtleEval>, earl:T
|
|
53
53
|
] ;
|
54
54
|
] .
|
55
55
|
|
56
|
-
<https://rubygems.org/gems/rdf-turtle> a
|
57
|
-
doap:
|
58
|
-
doap:description "RDF::Turtle is an Turtle reader/writer for the RDF.rb library suite."@en ;
|
59
|
-
doap:release [doap:revision "unknown"] ;
|
56
|
+
<https://rubygems.org/gems/rdf-turtle> a doap:Project, earl:TestSubject, earl:Software ;
|
57
|
+
doap:name "RDF::Turtle" ;
|
60
58
|
doap:developer <https://greggkellogg.net/foaf#me> ;
|
59
|
+
doap:homepage <https://ruby-rdf.github.io/rdf-turtle> ;
|
60
|
+
doap:description "RDF::Turtle is an Turtle reader/writer for the RDF.rb library suite."@en ;
|
61
61
|
doap:programming-language "Ruby" ;
|
62
|
-
doap:
|
62
|
+
doap:release [doap:revision "unknown"] .
|
63
63
|
|
64
64
|
<https://greggkellogg.net/foaf#me> a foaf:Person, earl:Assertor ;
|
65
|
-
foaf:
|
66
|
-
foaf:
|
65
|
+
foaf:name "Gregg Kellogg" ;
|
66
|
+
foaf:homepage <https://greggkellogg.net/> .
|
67
67
|
|
68
68
|
|
69
69
|
# Report Generation Software
|
@@ -74,10 +74,10 @@ _:b0 a earl:TestCriterion, <http://www.w3.org/ns/rdftest#TestTurtleEval>, earl:T
|
|
74
74
|
doap:homepage <https://github.com/gkellogg/earl-report>;
|
75
75
|
doap:programming-language "Ruby";
|
76
76
|
doap:license <http://unlicense.org>;
|
77
|
-
doap:release <https://github.com/gkellogg/earl-report/tree/0.
|
77
|
+
doap:release <https://github.com/gkellogg/earl-report/tree/0.8.0>;
|
78
78
|
doap:developer <https://greggkellogg.net/foaf#me> .
|
79
79
|
|
80
|
-
<https://github.com/gkellogg/earl-report/tree/0.
|
81
|
-
doap:name "earl-report-0.
|
80
|
+
<https://github.com/gkellogg/earl-report/tree/0.8.0> a doap:Version;
|
81
|
+
doap:name "earl-report-0.8.0";
|
82
82
|
doap:created "2021-12-18"^^xsd:date;
|
83
|
-
doap:revision "0.
|
83
|
+
doap:revision "0.8.0" .
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: earl-report
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gregg Kellogg
|
@@ -16,90 +16,84 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '3.
|
19
|
+
version: '3.2'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '3.
|
26
|
+
version: '3.2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rdf-ordered-repo
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '3.
|
33
|
+
version: '3.2'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '3.
|
40
|
+
version: '3.2'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rdf-turtle
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '3.
|
47
|
+
version: '3.2'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '3.
|
54
|
+
version: '3.2'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rdf-vocab
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '3.
|
62
|
-
- - ">="
|
63
|
-
- !ruby/object:Gem::Version
|
64
|
-
version: 3.1.13
|
61
|
+
version: '3.2'
|
65
62
|
type: :runtime
|
66
63
|
prerelease: false
|
67
64
|
version_requirements: !ruby/object:Gem::Requirement
|
68
65
|
requirements:
|
69
66
|
- - "~>"
|
70
67
|
- !ruby/object:Gem::Version
|
71
|
-
version: '3.
|
72
|
-
- - ">="
|
73
|
-
- !ruby/object:Gem::Version
|
74
|
-
version: 3.1.13
|
68
|
+
version: '3.2'
|
75
69
|
- !ruby/object:Gem::Dependency
|
76
70
|
name: json-ld
|
77
71
|
requirement: !ruby/object:Gem::Requirement
|
78
72
|
requirements:
|
79
73
|
- - "~>"
|
80
74
|
- !ruby/object:Gem::Version
|
81
|
-
version: '3.
|
75
|
+
version: '3.2'
|
82
76
|
type: :runtime
|
83
77
|
prerelease: false
|
84
78
|
version_requirements: !ruby/object:Gem::Requirement
|
85
79
|
requirements:
|
86
80
|
- - "~>"
|
87
81
|
- !ruby/object:Gem::Version
|
88
|
-
version: '3.
|
82
|
+
version: '3.2'
|
89
83
|
- !ruby/object:Gem::Dependency
|
90
84
|
name: sparql
|
91
85
|
requirement: !ruby/object:Gem::Requirement
|
92
86
|
requirements:
|
93
87
|
- - "~>"
|
94
88
|
- !ruby/object:Gem::Version
|
95
|
-
version: '3.
|
89
|
+
version: '3.2'
|
96
90
|
type: :runtime
|
97
91
|
prerelease: false
|
98
92
|
version_requirements: !ruby/object:Gem::Requirement
|
99
93
|
requirements:
|
100
94
|
- - "~>"
|
101
95
|
- !ruby/object:Gem::Version
|
102
|
-
version: '3.
|
96
|
+
version: '3.2'
|
103
97
|
- !ruby/object:Gem::Dependency
|
104
98
|
name: haml
|
105
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -148,14 +142,14 @@ dependencies:
|
|
148
142
|
requirements:
|
149
143
|
- - "~>"
|
150
144
|
- !ruby/object:Gem::Version
|
151
|
-
version: '3.
|
145
|
+
version: '3.2'
|
152
146
|
type: :development
|
153
147
|
prerelease: false
|
154
148
|
version_requirements: !ruby/object:Gem::Requirement
|
155
149
|
requirements:
|
156
150
|
- - "~>"
|
157
151
|
- !ruby/object:Gem::Version
|
158
|
-
version: '3.
|
152
|
+
version: '3.2'
|
159
153
|
- !ruby/object:Gem::Dependency
|
160
154
|
name: rspec
|
161
155
|
requirement: !ruby/object:Gem::Requirement
|
@@ -256,7 +250,11 @@ files:
|
|
256
250
|
homepage: https://github.com/gkellogg/earl-report
|
257
251
|
licenses:
|
258
252
|
- Unlicense
|
259
|
-
metadata:
|
253
|
+
metadata:
|
254
|
+
documentation_uri: https://gkellogg.github.io/earl-report
|
255
|
+
bug_tracker_uri: https://github.com/gkellogg/earl-report/issues
|
256
|
+
homepage_uri: https://github.com/gkellogg/earl-report
|
257
|
+
source_code_uri: https://github.com/gkellogg/earl-report
|
260
258
|
post_install_message:
|
261
259
|
rdoc_options: []
|
262
260
|
require_paths:
|
@@ -265,29 +263,29 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
265
263
|
requirements:
|
266
264
|
- - ">="
|
267
265
|
- !ruby/object:Gem::Version
|
268
|
-
version: '2.
|
266
|
+
version: '2.6'
|
269
267
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
270
268
|
requirements:
|
271
269
|
- - ">="
|
272
270
|
- !ruby/object:Gem::Version
|
273
271
|
version: '0'
|
274
272
|
requirements: []
|
275
|
-
rubygems_version: 3.
|
273
|
+
rubygems_version: 3.0.9
|
276
274
|
signing_key:
|
277
275
|
specification_version: 4
|
278
276
|
summary: Earl Report summary generator
|
279
277
|
test_files:
|
280
|
-
- spec/earl_report_spec.rb
|
281
278
|
- spec/spec_helper.rb
|
282
|
-
- spec/
|
279
|
+
- spec/earl_report_spec.rb
|
283
280
|
- spec/test-files/foaf.ttl
|
284
281
|
- spec/test-files/manifest.ttl
|
282
|
+
- spec/test-files/doap.ttl
|
283
|
+
- spec/test-files/results.jsonld
|
284
|
+
- spec/test-files/results.ttl
|
285
|
+
- spec/test-files/report-no-test.ttl
|
285
286
|
- spec/test-files/report-complete.ttl
|
286
287
|
- spec/test-files/report-no-doap.ttl
|
287
|
-
- spec/test-files/report-no-foaf.ttl
|
288
|
-
- spec/test-files/report-no-test.ttl
|
289
288
|
- spec/test-files/results.html
|
290
|
-
- spec/test-files/
|
291
|
-
- spec/test-files/results.ttl
|
292
|
-
- spec/test-files/test-00.out
|
289
|
+
- spec/test-files/report-no-foaf.ttl
|
293
290
|
- spec/test-files/test-00.ttl
|
291
|
+
- spec/test-files/test-00.out
|