bolognese 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/bolognese/datacite_utils.rb +2 -2
- data/lib/bolognese/metadata.rb +16 -10
- data/lib/bolognese/metadata_utils.rb +3 -11
- data/lib/bolognese/readers/bibtex_reader.rb +1 -1
- data/lib/bolognese/readers/citeproc_reader.rb +2 -2
- data/lib/bolognese/readers/codemeta_reader.rb +2 -2
- data/lib/bolognese/readers/crossref_reader.rb +2 -2
- data/lib/bolognese/readers/datacite_json_reader.rb +3 -3
- data/lib/bolognese/readers/datacite_reader.rb +3 -3
- data/lib/bolognese/readers/ris_reader.rb +1 -1
- data/lib/bolognese/readers/schema_org_reader.rb +3 -3
- data/lib/bolognese/version.rb +1 -1
- data/lib/bolognese/writers/bibtex_writer.rb +1 -1
- data/lib/bolognese/writers/codemeta_writer.rb +2 -2
- data/lib/bolognese/writers/crosscite_writer.rb +3 -3
- data/lib/bolognese/writers/datacite_json_writer.rb +3 -3
- data/lib/bolognese/writers/jats_writer.rb +2 -2
- data/lib/bolognese/writers/ris_writer.rb +1 -1
- data/lib/bolognese/writers/schema_org_writer.rb +3 -3
- data/spec/readers/bibtex_reader_spec.rb +1 -1
- data/spec/readers/citeproc_reader_spec.rb +1 -1
- data/spec/readers/codemeta_reader_spec.rb +5 -5
- data/spec/readers/crossref_reader_spec.rb +9 -9
- data/spec/readers/datacite_reader_spec.rb +9 -9
- data/spec/readers/ris_reader_spec.rb +1 -1
- data/spec/readers/schema_org_reader_spec.rb +10 -10
- data/spec/writers/schema_org_writer_spec.rb +2 -2
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: acbbf45161f598000d9ff25bb9377c5332eb1482830a2e2b4137aab2fcc33043
|
4
|
+
data.tar.gz: 3a6c992a04626c916ec2f579aad4f9ab303756071db6a8178499a996834416cd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 65dba0019f3401ae22dbd8d05da1cda01900ab0f865a3b37c8b4d7983e7d8616779e0ad7b7a123815eef252db8c5734982321bcf5cc2cc599e75a70dec436417
|
7
|
+
data.tar.gz: d856dea89a299b900acd9462cf01b2cb1c88fe0d8619cd003b6f2fb4da4e54624e86bb580db50488c7d31a256c9fbede5802b185b126c253328c714bc3dd1191
|
data/Gemfile.lock
CHANGED
@@ -153,9 +153,9 @@ module Bolognese
|
|
153
153
|
end
|
154
154
|
|
155
155
|
def insert_version(xml)
|
156
|
-
return xml unless
|
156
|
+
return xml unless version.present?
|
157
157
|
|
158
|
-
xml.version(
|
158
|
+
xml.version(version)
|
159
159
|
end
|
160
160
|
|
161
161
|
def insert_related_identifiers(xml)
|
data/lib/bolognese/metadata.rb
CHANGED
@@ -6,7 +6,13 @@ module Bolognese
|
|
6
6
|
class Metadata
|
7
7
|
include Bolognese::MetadataUtils
|
8
8
|
|
9
|
-
attr_writer :id, :provider_id, :client_id, :doi
|
9
|
+
attr_writer :id, :provider_id, :client_id, :doi, :identifier, :creator, :title, :publisher, :rights, :dates, :date_published, :date_modified,
|
10
|
+
:date_updated, :journal, :volume, :first_page, :last_page, :url, :version, :resource_type_general,
|
11
|
+
:keywords, :editor, :description, :alternate_identifiers, :language, :size,
|
12
|
+
:formats, :schema_version, :resource_type_general, :meta, :periodical,
|
13
|
+
:format, :funding_references, :style, :locale, :state, :geo_location,
|
14
|
+
:type, :additional_type, :citeproc_type, :bibtex_type, :ris_type, :content_url, :related_identifiers
|
15
|
+
|
10
16
|
|
11
17
|
def initialize(input: nil, from: nil, **options)
|
12
18
|
id = normalize_id(input, options)
|
@@ -20,7 +26,7 @@ module Bolognese
|
|
20
26
|
elsif input.present? && File.exist?(input)
|
21
27
|
ext = File.extname(input)
|
22
28
|
if %w(.bib .ris .xml .json).include?(ext)
|
23
|
-
hsh = { "
|
29
|
+
hsh = { "url" => options[:url],
|
24
30
|
"state" => options[:state],
|
25
31
|
"date_registered" => options[:date_registered],
|
26
32
|
"date_updated" => options[:date_updated],
|
@@ -34,7 +40,7 @@ module Bolognese
|
|
34
40
|
exit 1
|
35
41
|
end
|
36
42
|
else
|
37
|
-
hsh = { "
|
43
|
+
hsh = { "url" => options[:url],
|
38
44
|
"state" => options[:state],
|
39
45
|
"date_registered" => options[:date_registered],
|
40
46
|
"date_updated" => options[:date_updated],
|
@@ -57,7 +63,7 @@ module Bolognese
|
|
57
63
|
@sandbox = options[:sandbox]
|
58
64
|
|
59
65
|
# options that come from the datacite database
|
60
|
-
@
|
66
|
+
@url = hsh.to_h["url"].presence || options[:url].presence
|
61
67
|
@state = hsh.to_h["state"].presence
|
62
68
|
@date_registered = hsh.to_h["date_registered"].presence
|
63
69
|
@date_updated = hsh.to_h["date_updated"].presence
|
@@ -119,8 +125,8 @@ module Bolognese
|
|
119
125
|
@size ||= meta.fetch("size", nil)
|
120
126
|
end
|
121
127
|
|
122
|
-
def
|
123
|
-
@
|
128
|
+
def formats
|
129
|
+
@formats ||= meta.fetch("formats", nil)
|
124
130
|
end
|
125
131
|
|
126
132
|
def schema_version
|
@@ -135,12 +141,12 @@ module Bolognese
|
|
135
141
|
@related_identifiers ||= meta.fetch("related_identifiers", nil)
|
136
142
|
end
|
137
143
|
|
138
|
-
def
|
139
|
-
@
|
144
|
+
def url
|
145
|
+
@url ||= meta.fetch("url", nil)
|
140
146
|
end
|
141
147
|
|
142
|
-
def
|
143
|
-
@
|
148
|
+
def version
|
149
|
+
@version ||= meta.fetch("version", nil)
|
144
150
|
end
|
145
151
|
|
146
152
|
def publication_year
|
@@ -62,15 +62,7 @@ module Bolognese
|
|
62
62
|
include Bolognese::Writers::TurtleWriter
|
63
63
|
|
64
64
|
attr_accessor :string, :from, :sandbox, :meta, :regenerate, :issue, :contributor
|
65
|
-
|
66
|
-
attr_writer :identifier, :creator, :title, :publisher, :rights, :dates, :date_published, :date_modified,
|
67
|
-
:date_updated, :journal, :volume, :first_page, :last_page, :b_url, :b_version, :resource_type_general,
|
68
|
-
:keywords, :editor, :description, :alternate_identifiers, :language, :size,
|
69
|
-
:b_format, :schema_version, :resource_type_general, :meta, :periodical,
|
70
|
-
:format, :funding_references, :style, :locale, :state, :geo_location,
|
71
|
-
:type, :additional_type, :citeproc_type, :bibtex_type, :ris_type, :content_url, :related_identifiers
|
72
|
-
|
73
|
-
attr_reader :doc, :service_provider, :page_start, :page_end, :related_identifier, :reverse, :name_detector
|
65
|
+
attr_reader :doc, :service_provider, :page_start, :page_end, :reverse, :name_detector
|
74
66
|
|
75
67
|
# replace DOI in XML if provided in options
|
76
68
|
def raw
|
@@ -146,8 +138,8 @@ module Bolognese
|
|
146
138
|
"page" => [first_page, last_page].compact.join("-").presence,
|
147
139
|
"publisher" => publisher,
|
148
140
|
"title" => parse_attributes(title, content: "text", first: true),
|
149
|
-
"URL" =>
|
150
|
-
"version" =>
|
141
|
+
"URL" => url,
|
142
|
+
"version" => version,
|
151
143
|
"volume" => volume
|
152
144
|
}.compact.symbolize_keys
|
153
145
|
end
|
@@ -68,7 +68,7 @@ module Bolognese
|
|
68
68
|
"resource_type_general" => Metadata::SO_TO_DC_TRANSLATIONS[type],
|
69
69
|
"additional_type" => Bolognese::Utils::BIB_TO_CR_TRANSLATIONS[meta.try(:type).to_s] || meta.try(:type).to_s,
|
70
70
|
"doi" => doi,
|
71
|
-
"
|
71
|
+
"url" => meta.try(:url).to_s,
|
72
72
|
"title" => meta.try(:title).to_s,
|
73
73
|
"creator" => author,
|
74
74
|
"periodical" => periodical,
|
@@ -66,7 +66,7 @@ module Bolognese
|
|
66
66
|
"ris_type" => CP_TO_RIS_TRANSLATIONS[type] || "GEN",
|
67
67
|
"resource_type_general" => Bolognese::Utils::SO_TO_DC_TRANSLATIONS[type],
|
68
68
|
"doi" => doi_from_url(doi),
|
69
|
-
"
|
69
|
+
"url" => normalize_id(meta.fetch("URL", nil)),
|
70
70
|
"title" => meta.fetch("title", nil),
|
71
71
|
"creator" => author,
|
72
72
|
"periodical" => periodical,
|
@@ -77,7 +77,7 @@ module Bolognese
|
|
77
77
|
#{}"pagination" => meta.pages.to_s.presence,
|
78
78
|
"description" => meta.fetch("abstract", nil).present? ? { "text" => sanitize(meta.fetch("abstract")) } : nil,
|
79
79
|
#{ }"rights" => { "id" => meta.field?(:copyright) && meta.copyright.to_s.presence },
|
80
|
-
"
|
80
|
+
"version" => meta.fetch("version", nil),
|
81
81
|
"keywords" => meta.fetch("categories", nil),
|
82
82
|
"state" => state
|
83
83
|
}
|
@@ -42,7 +42,7 @@ module Bolognese
|
|
42
42
|
"resource_type_general" => Bolognese::Utils::SO_TO_DC_TRANSLATIONS[type],
|
43
43
|
"identifier" => identifier,
|
44
44
|
"doi" => validate_doi(id),
|
45
|
-
"
|
45
|
+
"url" => normalize_id(meta.fetch("codeRepository", nil)),
|
46
46
|
"title" => meta.fetch("title", nil),
|
47
47
|
"creator" => author,
|
48
48
|
"editor" => editor,
|
@@ -53,7 +53,7 @@ module Bolognese
|
|
53
53
|
"date_modified" => meta.fetch("dateModified", nil),
|
54
54
|
"description" => meta.fetch("description", nil).present? ? { "text" => sanitize(meta.fetch("description")) } : nil,
|
55
55
|
"rights" => { "id" => meta.fetch("license", nil) },
|
56
|
-
"
|
56
|
+
"version" => meta.fetch("version", nil),
|
57
57
|
"keywords" => meta.fetch("tags", nil),
|
58
58
|
"state" => state
|
59
59
|
}
|
@@ -97,7 +97,7 @@ module Bolognese
|
|
97
97
|
"ris_type" => Bolognese::Utils::CR_TO_RIS_TRANSLATIONS[additional_type] || "JOUR",
|
98
98
|
"resource_type_general" => Bolognese::Utils::SO_TO_DC_TRANSLATIONS[type],
|
99
99
|
"doi" => doi,
|
100
|
-
"
|
100
|
+
"url" => bibliographic_metadata.dig("doi_data", "resource"),
|
101
101
|
"title" => parse_attributes(bibliographic_metadata.dig("titles", "title")),
|
102
102
|
"alternate_identifiers" => crossref_alternate_identifiers(bibliographic_metadata),
|
103
103
|
"creator" => crossref_people(bibliographic_metadata, "author"),
|
@@ -115,7 +115,7 @@ module Bolognese
|
|
115
115
|
"last_page" => bibliographic_metadata.dig("pages", "last_page"),
|
116
116
|
"description" => crossref_description(bibliographic_metadata),
|
117
117
|
"rights" => crossref_license(program_metadata),
|
118
|
-
"
|
118
|
+
"version" => nil,
|
119
119
|
"keywords" => nil,
|
120
120
|
"language" => nil,
|
121
121
|
"size" => nil,
|
@@ -27,7 +27,7 @@ module Bolognese
|
|
27
27
|
"ris_type" => Bolognese::Utils::SO_TO_RIS_TRANSLATIONS[resource_type_general.to_s.dasherize] || "GEN",
|
28
28
|
"resource_type_general" => resource_type_general,
|
29
29
|
"doi" => validate_doi(meta.fetch("doi", nil)),
|
30
|
-
"
|
30
|
+
"url" => normalize_id(meta.fetch("url", nil)),
|
31
31
|
"title" => meta.fetch("title", nil),
|
32
32
|
"alternate_identifiers" => meta.fetch("alternate-identifiers", nil),
|
33
33
|
"creator" => meta.fetch("creator", nil),
|
@@ -42,11 +42,11 @@ module Bolognese
|
|
42
42
|
"date_modified" => meta.fetch("date-modified", nil),
|
43
43
|
"description" => meta.fetch("description", nil),
|
44
44
|
"rights" => meta.fetch("rights", nil),
|
45
|
-
"
|
45
|
+
"version" => meta.fetch("version", nil),
|
46
46
|
"keywords" => meta.fetch("subject", nil),
|
47
47
|
"language" => meta.fetch("language", nil),
|
48
48
|
"size" => meta.fetch("size", nil),
|
49
|
-
"
|
49
|
+
"formats" => meta.fetch("formats", nil),
|
50
50
|
"geo_location" => meta.fetch("geo-location", nil),
|
51
51
|
"schema_version" => meta.fetch("schema-version", nil),
|
52
52
|
"state" => state
|
@@ -39,7 +39,7 @@ module Bolognese
|
|
39
39
|
end.compact
|
40
40
|
|
41
41
|
{ "string" => string,
|
42
|
-
"
|
42
|
+
"url" => attributes.fetch("url", nil),
|
43
43
|
"state" => attributes.fetch("state", nil),
|
44
44
|
"date_registered" => attributes.fetch("minted", nil),
|
45
45
|
"date_updated" => attributes.fetch("updated", nil),
|
@@ -174,12 +174,12 @@ module Bolognese
|
|
174
174
|
"date_modified" => datacite_date(dates, "Updated"),
|
175
175
|
"description" => description,
|
176
176
|
"rights" => rights,
|
177
|
-
"
|
177
|
+
"version" => meta.fetch("version", nil),
|
178
178
|
"keywords" => keywords,
|
179
179
|
"language" => meta.fetch("language", nil),
|
180
180
|
"geo_location" => geo_location,
|
181
181
|
"related_identifiers" => related_identifiers,
|
182
|
-
"
|
182
|
+
"formats" => formats,
|
183
183
|
"size" => sizes,
|
184
184
|
"schema_version" => schema_version,
|
185
185
|
"state" => state
|
@@ -67,7 +67,7 @@ module Bolognese
|
|
67
67
|
"ris_type" => ris_type,
|
68
68
|
"resource_type_general" => Metadata::SO_TO_DC_TRANSLATIONS[type],
|
69
69
|
"doi" => doi,
|
70
|
-
"
|
70
|
+
"url" => meta.fetch("UR", nil),
|
71
71
|
"title" => meta.fetch("T1", nil),
|
72
72
|
"creator" => get_authors(author),
|
73
73
|
"publisher" => meta.fetch("PB", "(:unav)"),
|
@@ -123,10 +123,10 @@ module Bolognese
|
|
123
123
|
"doi" => validate_doi(id),
|
124
124
|
"identifier" => identifier,
|
125
125
|
"alternate_identifiers" => alternate_identifiers,
|
126
|
-
"
|
126
|
+
"url" => normalize_id(meta.fetch("url", nil)),
|
127
127
|
"content_url" => Array.wrap(meta.fetch("contentUrl", nil)).unwrap,
|
128
128
|
"size" => meta.fetch("contenSize", nil),
|
129
|
-
"
|
129
|
+
"formats" => Array.wrap(meta.fetch("encodingFormat", nil) || meta.fetch("fileFormat", nil)).unwrap,
|
130
130
|
"title" => meta.fetch("name", nil),
|
131
131
|
"creator" => author,
|
132
132
|
"editor" => editor,
|
@@ -139,7 +139,7 @@ module Bolognese
|
|
139
139
|
"date_modified" => meta.fetch("dateModified", nil),
|
140
140
|
"description" => meta.fetch("description", nil).present? ? { "text" => sanitize(meta.fetch("description")) } : nil,
|
141
141
|
"rights" => rights,
|
142
|
-
"
|
142
|
+
"version" => meta.fetch("version", nil),
|
143
143
|
"keywords" => meta.fetch("keywords", nil).to_s.split(", "),
|
144
144
|
"state" => state,
|
145
145
|
"schema_version" => meta.fetch("schemaVersion", nil),
|
data/lib/bolognese/version.rb
CHANGED
@@ -10,7 +10,7 @@ module Bolognese
|
|
10
10
|
bibtex_type: bibtex_type.presence || "misc",
|
11
11
|
bibtex_key: identifier,
|
12
12
|
doi: doi,
|
13
|
-
url:
|
13
|
+
url: url,
|
14
14
|
author: authors_as_string(creator),
|
15
15
|
keywords: keywords.present? ? Array.wrap(keywords).map { |k| parse_attributes(k, content: "text", first: true) }.join(", ") : nil,
|
16
16
|
language: language,
|
@@ -11,11 +11,11 @@ module Bolognese
|
|
11
11
|
"@type" => type,
|
12
12
|
"@id" => identifier,
|
13
13
|
"identifier" => identifier,
|
14
|
-
"codeRepository" =>
|
14
|
+
"codeRepository" => url,
|
15
15
|
"title" => title,
|
16
16
|
"agents" => creator,
|
17
17
|
"description" => parse_attributes(description, content: "text", first: true),
|
18
|
-
"version" =>
|
18
|
+
"version" => version,
|
19
19
|
"tags" => keywords.to_s.split(", ").presence,
|
20
20
|
"datePublished" => date_published,
|
21
21
|
"dateModified" => date_modified,
|
@@ -7,7 +7,7 @@ module Bolognese
|
|
7
7
|
hsh = {
|
8
8
|
"id" => identifier,
|
9
9
|
"doi" => doi,
|
10
|
-
"url" =>
|
10
|
+
"url" => url,
|
11
11
|
"type" => type,
|
12
12
|
"additional_type" => additional_type,
|
13
13
|
"citeproc_type" => citeproc_type,
|
@@ -27,8 +27,8 @@ module Bolognese
|
|
27
27
|
"language" => language,
|
28
28
|
"alternate_identifiers" => alternate_identifiers,
|
29
29
|
"size" => size,
|
30
|
-
"
|
31
|
-
"version" =>
|
30
|
+
"formats" => formats,
|
31
|
+
"version" => version,
|
32
32
|
"rights" => rights,
|
33
33
|
"description" => description,
|
34
34
|
"volume" => volume,
|
@@ -7,7 +7,7 @@ module Bolognese
|
|
7
7
|
hsh = {
|
8
8
|
"id" => identifier,
|
9
9
|
"doi" => doi,
|
10
|
-
"url" =>
|
10
|
+
"url" => url,
|
11
11
|
"creator" => creator,
|
12
12
|
"title" => title,
|
13
13
|
"publisher" => publisher,
|
@@ -24,8 +24,8 @@ module Bolognese
|
|
24
24
|
"alternate-identifiers" => alternate_identifiers,
|
25
25
|
"related-identifiers" => related_identifiers,
|
26
26
|
"size" => size,
|
27
|
-
"
|
28
|
-
"version" =>
|
27
|
+
"formats" => formats,
|
28
|
+
"version" => version,
|
29
29
|
"rights" => rights,
|
30
30
|
"description" => description,
|
31
31
|
"geo-location" => geo_location,
|
@@ -22,7 +22,7 @@ module Bolognese
|
|
22
22
|
insert_issue(xml) if issue.present?
|
23
23
|
insert_fpage(xml) if first_page.present?
|
24
24
|
insert_lpage(xml) if last_page.present?
|
25
|
-
insert_version(xml) if
|
25
|
+
insert_version(xml) if version.present?
|
26
26
|
insert_pub_id(xml)
|
27
27
|
end
|
28
28
|
|
@@ -112,7 +112,7 @@ module Bolognese
|
|
112
112
|
end
|
113
113
|
|
114
114
|
def insert_version(xml)
|
115
|
-
xml.version(
|
115
|
+
xml.version(version)
|
116
116
|
end
|
117
117
|
|
118
118
|
def insert_pub_id(xml)
|
@@ -10,7 +10,7 @@ module Bolognese
|
|
10
10
|
"T2" => periodical && periodical["title"],
|
11
11
|
"AU" => to_ris(creator),
|
12
12
|
"DO" => doi,
|
13
|
-
"UR" =>
|
13
|
+
"UR" => url,
|
14
14
|
"AB" => parse_attributes(description, content: "text", first: true),
|
15
15
|
"KW" => Array.wrap(keywords).map { |k| parse_attributes(k, content: "text", first: true) }.presence,
|
16
16
|
"PY" => publication_year,
|
@@ -8,18 +8,18 @@ module Bolognese
|
|
8
8
|
"@type" => type,
|
9
9
|
"@id" => identifier,
|
10
10
|
"identifier" => to_schema_org_identifier(identifier, alternate_identifiers: alternate_identifiers),
|
11
|
-
"url" =>
|
11
|
+
"url" => url,
|
12
12
|
"additionalType" => additional_type,
|
13
13
|
"name" => parse_attributes(title, content: "text", first: true),
|
14
14
|
"author" => to_schema_org(creator),
|
15
15
|
"editor" => to_schema_org(editor),
|
16
16
|
"description" => parse_attributes(description, content: "text", first: true),
|
17
17
|
"license" => Array.wrap(rights).map { |l| l["id"] }.compact.unwrap,
|
18
|
-
"version" =>
|
18
|
+
"version" => version,
|
19
19
|
"keywords" => keywords.present? ? Array.wrap(keywords).map { |k| parse_attributes(k, content: "text", first: true) }.join(", ") : nil,
|
20
20
|
"inLanguage" => language,
|
21
21
|
"contentSize" => size,
|
22
|
-
"encodingFormat" =>
|
22
|
+
"encodingFormat" => formats,
|
23
23
|
"dateCreated" => Array.wrap(dates).find { |d| d["type"] == "Created" }.to_h.fetch("__content__", nil),
|
24
24
|
"datePublished" => date_published,
|
25
25
|
"dateModified" => date_modified,
|
@@ -30,7 +30,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
30
30
|
expect(subject.valid?).to be true
|
31
31
|
expect(subject.identifier).to eq("https://doi.org/10.7554/elife.01567")
|
32
32
|
expect(subject.type).to eq("ScholarlyArticle")
|
33
|
-
expect(subject.
|
33
|
+
expect(subject.url).to eq("http://elifesciences.org/lookup/doi/10.7554/eLife.01567")
|
34
34
|
expect(subject.resource_type_general).to eq("Text")
|
35
35
|
expect(subject.creator.length).to eq(5)
|
36
36
|
expect(subject.creator.first).to eq("type"=>"Person", "name"=>"Martial Sankar", "givenName"=>"Martial", "familyName"=>"Sankar")
|
@@ -17,7 +17,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
17
17
|
it "BlogPosting" do
|
18
18
|
expect(subject.valid?).to be true
|
19
19
|
expect(subject.identifier).to eq("https://doi.org/10.5438/4k3m-nyvg")
|
20
|
-
expect(subject.
|
20
|
+
expect(subject.url).to eq("https://blog.datacite.org/eating-your-own-dog-food")
|
21
21
|
expect(subject.type).to eq("BlogPosting")
|
22
22
|
expect(subject.resource_type_general).to eq("Text")
|
23
23
|
expect(subject.creator).to eq("type"=>"Person", "name"=>"Martin Fenner", "givenName"=>"Martin", "familyName"=>"Fenner")
|
@@ -19,7 +19,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
19
19
|
it "maremma" do
|
20
20
|
expect(subject.valid?).to be true
|
21
21
|
expect(subject.identifier).to eq("https://doi.org/10.5438/qeg0-3gm3")
|
22
|
-
expect(subject.
|
22
|
+
expect(subject.url).to eq("https://github.com/datacite/maremma")
|
23
23
|
expect(subject.type).to eq("SoftwareSourceCode")
|
24
24
|
expect(subject.creator).to eq("type"=>"Person", "id"=>"http://orcid.org/0000-0003-0077-4738", "name"=>"Martin Fenner", "givenName"=>"Martin", "familyName"=>"Fenner")
|
25
25
|
expect(subject.title).to eq("Maremma: a Ruby library for simplified network calls")
|
@@ -35,7 +35,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
35
35
|
input = fixture_path + 'codemeta.json'
|
36
36
|
subject = Bolognese::Metadata.new(input: input)
|
37
37
|
expect(subject.identifier).to eq("https://doi.org/10.5063/f1m61h5x")
|
38
|
-
expect(subject.
|
38
|
+
expect(subject.url).to eq("https://github.com/DataONEorg/rdataone")
|
39
39
|
expect(subject.type).to eq("SoftwareSourceCode")
|
40
40
|
expect(subject.creator).to eq( [{"type"=>"Person",
|
41
41
|
"id"=>"http://orcid.org/0000-0003-0077-4738",
|
@@ -51,7 +51,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
51
51
|
expect(subject.title).to eq("R Interface to the DataONE REST API")
|
52
52
|
expect(subject.description["text"]).to start_with("Provides read and write access to data and metadata")
|
53
53
|
expect(subject.keywords).to eq(["data sharing", "data repository", "DataONE"])
|
54
|
-
expect(subject.
|
54
|
+
expect(subject.version).to eq("2.0.0")
|
55
55
|
expect(subject.dates).to eq("2016-05-27")
|
56
56
|
expect(subject.date_published).to eq("2016-05-27")
|
57
57
|
expect(subject.date_modified).to eq("2016-05-27")
|
@@ -63,7 +63,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
63
63
|
subject = Bolognese::Metadata.new(input: input)
|
64
64
|
expect(subject.valid?).to be true
|
65
65
|
expect(subject.identifier).to eq("https://doi.org/10.5438/qeg0-3gm3")
|
66
|
-
expect(subject.
|
66
|
+
expect(subject.url).to eq("https://github.com/datacite/maremma")
|
67
67
|
expect(subject.type).to eq("SoftwareSourceCode")
|
68
68
|
expect(subject.creator).to eq("type"=>"Person", "id"=>"http://orcid.org/0000-0003-0077-4738", "name"=>"Martin Fenner", "givenName"=>"Martin", "familyName"=>"Fenner")
|
69
69
|
expect(subject.title).to eq("Maremma: a Ruby library for simplified network calls")
|
@@ -80,7 +80,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
80
80
|
subject = Bolognese::Metadata.new(input: input)
|
81
81
|
expect(subject.valid?).to be true
|
82
82
|
expect(subject.identifier).to eq("https://doi.org/10.5438/wr0x-e194")
|
83
|
-
expect(subject.
|
83
|
+
expect(subject.url).to eq("https://github.com/datacite/metadata-reports")
|
84
84
|
expect(subject.type).to eq("SoftwareSourceCode")
|
85
85
|
expect(subject.creator.size).to eq(4)
|
86
86
|
expect(subject.creator.last).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0001-8135-3489", "name"=>"Lars Holm Nielsen", "givenName"=>"Lars Holm", "familyName"=>"Nielsen")
|
@@ -20,7 +20,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
20
20
|
expect(subject.valid?).to be true
|
21
21
|
expect(subject.identifier).to eq("https://doi.org/10.7554/elife.01567")
|
22
22
|
expect(subject.type).to eq("ScholarlyArticle")
|
23
|
-
expect(subject.
|
23
|
+
expect(subject.url).to eq("https://elifesciences.org/articles/01567")
|
24
24
|
expect(subject.additional_type).to eq("JournalArticle")
|
25
25
|
expect(subject.bibtex_type).to eq("article")
|
26
26
|
expect(subject.ris_type).to eq("JOUR")
|
@@ -55,7 +55,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
55
55
|
subject = Bolognese::Metadata.new(input: input)
|
56
56
|
expect(subject.valid?).to be true
|
57
57
|
expect(subject.identifier).to eq(input)
|
58
|
-
expect(subject.
|
58
|
+
expect(subject.url).to eq("http://dx.plos.org/10.1371/journal.pone.0000030")
|
59
59
|
expect(subject.type).to eq("ScholarlyArticle")
|
60
60
|
expect(subject.additional_type).to eq("JournalArticle")
|
61
61
|
expect(subject.bibtex_type).to eq("article")
|
@@ -83,7 +83,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
83
83
|
subject = Bolognese::Metadata.new(input: input)
|
84
84
|
expect(subject.valid?).to be true
|
85
85
|
expect(subject.identifier).to eq(input)
|
86
|
-
expect(subject.
|
86
|
+
expect(subject.url).to eq("http://biorxiv.org/lookup/doi/10.1101/097196")
|
87
87
|
expect(subject.type).to eq("ScholarlyArticle")
|
88
88
|
expect(subject.additional_type).to eq("PostedContent")
|
89
89
|
expect(subject.bibtex_type).to eq("article")
|
@@ -106,7 +106,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
106
106
|
subject = Bolognese::Metadata.new(input: input)
|
107
107
|
expect(subject.valid?).to be true
|
108
108
|
expect(subject.identifier).to eq("https://doi.org/10.1890/0012-9658(2006)87%5B2832:tiopma%5D2.0.co;2")
|
109
|
-
expect(subject.
|
109
|
+
expect(subject.url).to eq("http://doi.wiley.com/10.1890/0012-9658(2006)87[2832:TIOPMA]2.0.CO;2")
|
110
110
|
expect(subject.type).to eq("ScholarlyArticle")
|
111
111
|
expect(subject.additional_type).to eq("JournalArticle")
|
112
112
|
expect(subject.resource_type_general).to eq("Text")
|
@@ -129,7 +129,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
129
129
|
subject = Bolognese::Metadata.new(input: input)
|
130
130
|
expect(subject.valid?).to be true
|
131
131
|
expect(subject.identifier).to eq("https://doi.org/10.1155/2012/291294")
|
132
|
-
expect(subject.
|
132
|
+
expect(subject.url).to eq("http://www.hindawi.com/journals/pm/2012/291294/")
|
133
133
|
expect(subject.type).to eq("ScholarlyArticle")
|
134
134
|
expect(subject.additional_type).to eq("JournalArticle")
|
135
135
|
expect(subject.resource_type_general).to eq("Text")
|
@@ -153,7 +153,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
153
153
|
subject = Bolognese::Metadata.new(input: input)
|
154
154
|
expect(subject.valid?).to be true
|
155
155
|
expect(subject.identifier).to eq(input)
|
156
|
-
expect(subject.
|
156
|
+
expect(subject.url).to eq("http://linkinghub.elsevier.com/retrieve/pii/S0014299915002332")
|
157
157
|
expect(subject.type).to eq("ScholarlyArticle")
|
158
158
|
expect(subject.additional_type).to eq("JournalArticle")
|
159
159
|
expect(subject.resource_type_general).to eq("Text")
|
@@ -172,7 +172,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
172
172
|
subject = Bolognese::Metadata.new(input: input)
|
173
173
|
expect(subject.valid?).to be true
|
174
174
|
expect(subject.identifier).to eq("https://doi.org/10.2210/pdb4hhb/pdb")
|
175
|
-
expect(subject.
|
175
|
+
expect(subject.url).to eq("ftp://ftp.wwpdb.org/pub/pdb/data/structures/divided/pdb/hh/pdb4hhb.ent.gz")
|
176
176
|
expect(subject.type).to eq("ScholarlyArticle")
|
177
177
|
expect(subject.additional_type).to eq("SaComponent")
|
178
178
|
expect(subject.resource_type_general).to eq("Text")
|
@@ -195,7 +195,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
195
195
|
subject = Bolognese::Metadata.new(input: input)
|
196
196
|
expect(subject.valid?).to be true
|
197
197
|
expect(subject.identifier).to eq("https://doi.org/10.1007/978-3-662-46370-3_13")
|
198
|
-
expect(subject.
|
198
|
+
expect(subject.url).to eq("http://link.springer.com/10.1007/978-3-662-46370-3_13")
|
199
199
|
expect(subject.type).to eq("Chapter")
|
200
200
|
expect(subject.additional_type).to eq("BookChapter")
|
201
201
|
expect(subject.resource_type_general).to eq("Text")
|
@@ -216,7 +216,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
216
216
|
subject = Bolognese::Metadata.new(input: input)
|
217
217
|
expect(subject.valid?).to be true
|
218
218
|
expect(subject.identifier).to eq(input)
|
219
|
-
expect(subject.
|
219
|
+
expect(subject.url).to eq("http://doi.wiley.com/10.1111/nph.14619")
|
220
220
|
expect(subject.type).to eq("ScholarlyArticle")
|
221
221
|
expect(subject.additional_type).to eq("JournalArticle")
|
222
222
|
expect(subject.resource_type_general).to eq("Text")
|
@@ -19,7 +19,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
19
19
|
it "Dataset" do
|
20
20
|
expect(subject.valid?).to be true
|
21
21
|
expect(subject.identifier).to eq("https://doi.org/10.5061/dryad.8515")
|
22
|
-
expect(subject.
|
22
|
+
expect(subject.url).to eq("http://datadryad.org/resource/doi:10.5061/dryad.8515")
|
23
23
|
expect(subject.type).to eq("Dataset")
|
24
24
|
expect(subject.additional_type).to eq("DataPackage")
|
25
25
|
expect(subject.resource_type_general).to eq("Dataset")
|
@@ -441,7 +441,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
441
441
|
expect(subject.alternate_identifiers).to eq("type"=>"ISBN", "name"=>"937-0-4523-12357-6")
|
442
442
|
expect(subject.date_published).to eq("2010")
|
443
443
|
expect(subject.size).to eq("256 pages")
|
444
|
-
expect(subject.
|
444
|
+
expect(subject.formats).to eq("pdf")
|
445
445
|
expect(subject.content_url).to eq("https://example.org/report.pdf")
|
446
446
|
expect(subject.publication_year).to eq(2010)
|
447
447
|
expect(subject.related_identifiers.length).to eq(1)
|
@@ -568,7 +568,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
568
568
|
"givenName"=>"Henk",
|
569
569
|
"familyName"=>"Eskes"}])
|
570
570
|
expect(subject.title).to eq("Multi-Sensor Reanalysis (MSR) of total ozone, version 2")
|
571
|
-
expect(subject.
|
571
|
+
expect(subject.version).to eq("2")
|
572
572
|
expect(subject.date_published).to eq("2015")
|
573
573
|
expect(subject.publisher).to eq("Royal Netherlands Meteorological Institute (KNMI)")
|
574
574
|
expect(subject.service_provider).to eq("DataCite")
|
@@ -682,7 +682,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
682
682
|
expect(subject.valid?).to be true
|
683
683
|
expect(subject.identifier).to eq("https://doi.org/10.5061/dryad.8515")
|
684
684
|
expect(subject.doi).to eq("10.5061/dryad.8515")
|
685
|
-
expect(subject.
|
685
|
+
expect(subject.url).to eq("http://datadryad.org/resource/doi:10.5061/dryad.8515")
|
686
686
|
expect(subject.type).to eq("Dataset")
|
687
687
|
expect(subject.title).to eq("A new malaria agent in African hominids.")
|
688
688
|
end
|
@@ -692,7 +692,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
692
692
|
expect(subject.valid?).to be true
|
693
693
|
expect(subject.identifier).to eq("https://doi.org/10.5061/dryad.8515")
|
694
694
|
expect(subject.doi).to eq("10.5061/dryad.8515")
|
695
|
-
expect(subject.
|
695
|
+
expect(subject.url).to eq("http://datadryad.org/resource/doi:10.5061/dryad.8515")
|
696
696
|
expect(subject.type).to eq("Dataset")
|
697
697
|
expect(subject.title).to eq("Data from: A new malaria agent in African hominids.")
|
698
698
|
expect(subject.state).to eq("registered")
|
@@ -716,13 +716,13 @@ describe Bolognese::Metadata, vcr: true do
|
|
716
716
|
|
717
717
|
it "GTEx dataset" do
|
718
718
|
input = fixture_path + 'gtex.xml'
|
719
|
-
|
719
|
+
url = "https://ors.datacite.org/doi:/10.25491/9hx8-ke93"
|
720
720
|
content_url = "https://storage.googleapis.com/gtex_analysis_v7/single_tissue_eqtl_data/GTEx_Analysis_v7_eQTL_expression_matrices.tar.gz"
|
721
|
-
subject = Bolognese::Metadata.new(input: input, from: 'datacite',
|
721
|
+
subject = Bolognese::Metadata.new(input: input, from: 'datacite', url: url, content_url: content_url)
|
722
722
|
|
723
723
|
expect(subject.valid?).to be true
|
724
724
|
expect(subject.identifier).to eq("https://doi.org/10.25491/9hx8-ke93")
|
725
|
-
expect(subject.
|
725
|
+
expect(subject.url).to eq("https://ors.datacite.org/doi:/10.25491/9hx8-ke93")
|
726
726
|
expect(subject.content_url).to eq("https://storage.googleapis.com/gtex_analysis_v7/single_tissue_eqtl_data/GTEx_Analysis_v7_eQTL_expression_matrices.tar.gz")
|
727
727
|
expect(subject.type).to eq("Dataset")
|
728
728
|
expect(subject.additional_type).to eq("DroNc-seq data")
|
@@ -732,7 +732,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
732
732
|
expect(subject.date_published).to eq("2017")
|
733
733
|
expect(subject.related_identifiers.length).to eq(4)
|
734
734
|
expect(subject.related_identifiers.last).to eq("id"=>"https://www.ebi.ac.uk/miriam/main/datatypes/MIR:00000663", "related_identifier_type"=>"URL", "relation_type"=>"IsPartOf")
|
735
|
-
expect(subject.
|
735
|
+
expect(subject.formats).to eq("application/tar")
|
736
736
|
expect(subject.size).to eq("15.7M")
|
737
737
|
expect(subject.periodical).to eq("id"=>"https://www.ebi.ac.uk/miriam/main/datatypes/MIR:00000663", "title"=>"GTEx", "type"=>"DataCatalog")
|
738
738
|
expect(subject.publisher).to eq("GTEx")
|
@@ -30,7 +30,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
30
30
|
expect(subject.valid?).to be true
|
31
31
|
expect(subject.identifier).to eq("https://doi.org/10.7554/elife.01567")
|
32
32
|
expect(subject.type).to eq("ScholarlyArticle")
|
33
|
-
expect(subject.
|
33
|
+
expect(subject.url).to eq("http://elifesciences.org/lookup/doi/10.7554/eLife.01567")
|
34
34
|
expect(subject.resource_type_general).to eq("Text")
|
35
35
|
expect(subject.creator.length).to eq(5)
|
36
36
|
expect(subject.creator.first).to eq("type"=>"Person",
|
@@ -20,7 +20,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
20
20
|
it "BlogPosting" do
|
21
21
|
expect(subject.valid?).to be true
|
22
22
|
expect(subject.identifier).to eq("https://doi.org/10.5438/4k3m-nyvg")
|
23
|
-
expect(subject.
|
23
|
+
expect(subject.url).to eq("https://blog.datacite.org/eating-your-own-dog-food")
|
24
24
|
expect(subject.type).to eq("BlogPosting")
|
25
25
|
expect(subject.creator).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0003-1419-2405", "name"=>"Martin Fenner", "givenName"=>"Martin", "familyName"=>"Fenner")
|
26
26
|
expect(subject.title).to eq("Eating your own Dog Food")
|
@@ -38,7 +38,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
38
38
|
expect(subject.valid?).to be true
|
39
39
|
expect(subject.identifier).to eq("https://doi.org/10.5438/0000-00ss")
|
40
40
|
expect(subject.doi).to eq("10.5438/0000-00ss")
|
41
|
-
expect(subject.
|
41
|
+
expect(subject.url).to eq("https://blog.datacite.org/eating-your-own-dog-food")
|
42
42
|
expect(subject.type).to eq("BlogPosting")
|
43
43
|
end
|
44
44
|
|
@@ -49,7 +49,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
49
49
|
expect(subject.errors.first).to eq("43:0: ERROR: Element '{http://datacite.org/schema/kernel-4}publisher': [facet 'minLength'] The value has a length of '0'; this underruns the allowed minimum length of '1'.")
|
50
50
|
expect(subject.identifier).to eq("https://doi.org/10.5281/zenodo.1196821")
|
51
51
|
expect(subject.doi).to eq("10.5281/zenodo.1196821")
|
52
|
-
expect(subject.
|
52
|
+
expect(subject.url).to eq("https://zenodo.org/record/1196821")
|
53
53
|
expect(subject.type).to eq("Dataset")
|
54
54
|
expect(subject.title).to eq("PsPM-SC4B: SCR, ECG, EMG, PSR and respiration measurements in a delay fear conditioning task with auditory CS and electrical US")
|
55
55
|
expect(subject.creator.size).to eq(6)
|
@@ -62,7 +62,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
62
62
|
expect(subject.valid?).to be true
|
63
63
|
expect(subject.identifier).to eq("https://doi.org/10.1594/pangaea.836178")
|
64
64
|
expect(subject.doi).to eq("10.1594/pangaea.836178")
|
65
|
-
expect(subject.
|
65
|
+
expect(subject.url).to eq("https://doi.pangaea.de/10.1594/PANGAEA.836178")
|
66
66
|
expect(subject.type).to eq("Dataset")
|
67
67
|
expect(subject.title).to eq("Hydrological and meteorological investigations in a lake near Kangerlussuaq, west Greenland")
|
68
68
|
expect(subject.creator.size).to eq(8)
|
@@ -77,7 +77,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
77
77
|
# #expect(subject.errors).to be true
|
78
78
|
# expect(subject.identifier).to eq("https://doi.org/10.3334/ornldaac/1418")
|
79
79
|
# expect(subject.doi).to eq("10.3334/ornldaac/1418")
|
80
|
-
# expect(subject.
|
80
|
+
# expect(subject.url).to eq("https://doi.org/10.3334/ornldaac/1418")
|
81
81
|
# expect(subject.type).to eq("DataSet")
|
82
82
|
# expect(subject.title).to eq("AirMOSS: L2/3 Volumetric Soil Moisture Profiles Derived From Radar, 2012-2015")
|
83
83
|
# expect(subject.creator.size).to eq(8)
|
@@ -116,7 +116,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
116
116
|
subject = Bolognese::Metadata.new(input: input)
|
117
117
|
expect(subject.valid?).to be true
|
118
118
|
expect(subject.identifier).to eq("https://doi.org/10.5438/4k3m-nyvg")
|
119
|
-
expect(subject.
|
119
|
+
expect(subject.url).to eq("https://blog.datacite.org/eating-your-own-dog-food")
|
120
120
|
expect(subject.type).to eq("BlogPosting")
|
121
121
|
expect(subject.creator).to eq("type"=>"Person", "id"=>"http://orcid.org/0000-0003-1419-2405", "name"=>"Martin Fenner", "givenName"=>"Martin", "familyName"=>"Fenner")
|
122
122
|
expect(subject.title).to eq("Eating your own Dog Food")
|
@@ -136,13 +136,13 @@ describe Bolognese::Metadata, vcr: true do
|
|
136
136
|
expect(subject.valid?).to be true
|
137
137
|
expect(subject.identifier).to eq("https://doi.org/10.25491/d50j-3083")
|
138
138
|
expect(subject.alternate_identifiers).to eq("name"=>"687610993", "type"=>"md5")
|
139
|
-
expect(subject.
|
139
|
+
expect(subject.url).to eq("https://ors.datacite.org/doi:/10.25491/d50j-3083")
|
140
140
|
expect(subject.content_url).to eq("https://storage.googleapis.com/gtex_analysis_v7/single_tissue_eqtl_data/GTEx_Analysis_v7_eQTL_expression_matrices.tar.gz")
|
141
141
|
expect(subject.type).to eq("Dataset")
|
142
142
|
expect(subject.additional_type).to eq("Gene expression matrices")
|
143
143
|
expect(subject.creator).to eq("name"=>"The GTEx Consortium", "type"=>"Organization")
|
144
144
|
expect(subject.title).to eq("Fully processed, filtered and normalized gene expression matrices (in BED format) for each tissue, which were used as input into FastQTL for eQTL discovery")
|
145
|
-
expect(subject.
|
145
|
+
expect(subject.version).to eq("v7")
|
146
146
|
expect(subject.keywords).to eq(["gtex", "annotation", "phenotype", "gene regulation", "transcriptomics"])
|
147
147
|
expect(subject.date_published).to eq("2017")
|
148
148
|
expect(subject.periodical).to eq("title"=>"GTEx", "type"=>"DataCatalog")
|
@@ -158,7 +158,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
158
158
|
expect(subject.valid?).to be true
|
159
159
|
expect(subject.identifier).to eq("https://doi.org/10.23725/8na3-9s47")
|
160
160
|
expect(subject.alternate_identifiers).to eq([{"name"=>"3b33f6b9338fccab0901b7d317577ea3", "type"=>"md5"}, {"name"=>"ark:/99999/fk41CrU4eszeLUDe", "type"=>"minid"}, {"name"=>"dg.4503/c3d66dc9-58da-411c-83c4-dd656aa3c4b7", "type"=>"dataguid"}])
|
161
|
-
expect(subject.
|
161
|
+
expect(subject.url).to eq("https://ors.datacite.org/doi:/10.23725/8na3-9s47")
|
162
162
|
expect(subject.content_url).to eq(["s3://cgp-commons-public/topmed_open_access/197bc047-e917-55ed-852d-d563cdbc50e4/NWD165827.recab.cram", "gs://topmed-irc-share/public/NWD165827.recab.cram"])
|
163
163
|
expect(subject.type).to eq("Dataset")
|
164
164
|
expect(subject.additional_type).to eq("CRAM file")
|
@@ -211,7 +211,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
211
211
|
expect(subject.valid?).to be true
|
212
212
|
expect(subject.identifier).to eq("https://doi.org/10.23725/7jg3-v803")
|
213
213
|
expect(subject.alternate_identifiers).to eq([{"name"=>"ark:/99999/fk4E1n6n1YHKxPk", "type"=>"minid"}, {"name"=>"dg.4503/01b048d0-e128-4cb0-94e9-b2d2cab7563d", "type"=>"dataguid"}, {"name"=>"f9e72bdf25bf4b4f0e581d9218fec2eb", "type"=>"md5"}])
|
214
|
-
expect(subject.
|
214
|
+
expect(subject.url).to eq("https://ors.datacite.org/doi:/10.23725/7jg3-v803")
|
215
215
|
expect(subject.content_url).to eq(["s3://cgp-commons-public/topmed_open_access/44a8837b-4456-5709-b56b-54e23000f13a/NWD100953.recab.cram","gs://topmed-irc-share/public/NWD100953.recab.cram","dos://dos.commons.ucsc-cgp.org/01b048d0-e128-4cb0-94e9-b2d2cab7563d?version=2018-05-26T133719.491772Z"])
|
216
216
|
expect(subject.type).to eq("Dataset")
|
217
217
|
expect(subject.additional_type).to eq("CRAM file")
|
@@ -119,9 +119,9 @@ describe Bolognese::Metadata, vcr: true do
|
|
119
119
|
|
120
120
|
it "author is organization" do
|
121
121
|
input = fixture_path + 'gtex.xml'
|
122
|
-
|
122
|
+
url = "https://ors.datacite.org/doi:/10.25491/9hx8-ke93"
|
123
123
|
content_url = "https://storage.googleapis.com/gtex_analysis_v7/single_tissue_eqtl_data/GTEx_Analysis_v7_eQTL_expression_matrices.tar.gz"
|
124
|
-
subject = Bolognese::Metadata.new(input: input,
|
124
|
+
subject = Bolognese::Metadata.new(input: input, url: url, content_url: content_url, from: "datacite")
|
125
125
|
json = JSON.parse(subject.schema_org)
|
126
126
|
expect(json["@id"]).to eq("https://doi.org/10.25491/9hx8-ke93")
|
127
127
|
expect(json["author"]).to eq("@type"=>"Organization", "name"=>"The GTEx Consortium")
|