bolognese 1.0.6 → 1.0.7
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/author_utils.rb +1 -1
- data/lib/bolognese/datacite_utils.rb +51 -55
- data/lib/bolognese/metadata.rb +16 -16
- data/lib/bolognese/metadata_utils.rb +5 -5
- data/lib/bolognese/readers/bibtex_reader.rb +4 -4
- data/lib/bolognese/readers/citeproc_reader.rb +9 -6
- data/lib/bolognese/readers/codemeta_reader.rb +7 -4
- data/lib/bolognese/readers/crossref_reader.rb +23 -17
- data/lib/bolognese/readers/datacite_json_reader.rb +21 -19
- data/lib/bolognese/readers/datacite_reader.rb +30 -66
- data/lib/bolognese/readers/ris_reader.rb +6 -3
- data/lib/bolognese/readers/schema_org_reader.rb +12 -9
- data/lib/bolognese/utils.rb +15 -14
- data/lib/bolognese/version.rb +1 -1
- data/lib/bolognese/writers/bibtex_writer.rb +2 -2
- data/lib/bolognese/writers/codemeta_writer.rb +3 -3
- data/lib/bolognese/writers/crosscite_writer.rb +6 -6
- data/lib/bolognese/writers/datacite_json_writer.rb +9 -9
- data/lib/bolognese/writers/jats_writer.rb +4 -4
- data/lib/bolognese/writers/ris_writer.rb +4 -4
- data/lib/bolognese/writers/schema_org_writer.rb +6 -6
- data/spec/author_utils_spec.rb +1 -1
- data/spec/datacite_utils_spec.rb +2 -2
- data/spec/fixtures/crosscite.json +26 -16
- data/spec/fixtures/datacite.json +20 -14
- data/spec/fixtures/datacite_software.json +10 -6
- data/spec/readers/bibtex_reader_spec.rb +6 -6
- data/spec/readers/citeproc_reader_spec.rb +3 -3
- data/spec/readers/codemeta_reader_spec.rb +14 -14
- data/spec/readers/crosscite_reader_spec.rb +8 -9
- data/spec/readers/crossref_reader_spec.rb +31 -28
- data/spec/readers/datacite_json_reader_spec.rb +20 -6
- data/spec/readers/datacite_reader_spec.rb +94 -93
- data/spec/readers/ris_reader_spec.rb +5 -5
- data/spec/readers/schema_org_reader_spec.rb +41 -34
- data/spec/utils_spec.rb +3 -3
- data/spec/writers/bibtex_writer_spec.rb +1 -1
- data/spec/writers/citeproc_writer_spec.rb +1 -1
- data/spec/writers/codemeta_writer_spec.rb +15 -15
- data/spec/writers/crosscite_writer_spec.rb +16 -16
- data/spec/writers/datacite_json_writer_spec.rb +17 -17
- data/spec/writers/datacite_writer_spec.rb +26 -26
- data/spec/writers/ris_writer_spec.rb +2 -1
- metadata +2 -2
@@ -17,18 +17,32 @@ 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.types).to eq("bibtex"=>"
|
21
|
-
expect(subject.creator).to eq("type"=>"Person", "id"=>"http://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner")
|
22
|
-
expect(subject.
|
23
|
-
expect(subject.alternate_identifiers).to eq([{"
|
20
|
+
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resource_type"=>"BlogPosting", "resource_type_general"=>"Text", "ris"=>"RPRT", "type"=>"ScholarlyArticle")
|
21
|
+
expect(subject.creator).to eq([{"type"=>"Person", "id"=>"http://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner"}])
|
22
|
+
expect(subject.titles).to eq([{"title"=>"Eating your own Dog Food"}])
|
23
|
+
expect(subject.alternate_identifiers).to eq([{"alternate_identifier"=>"MS-49-3632-5083", "alternate_identifier_type"=>"Local accession number"}])
|
24
24
|
expect(subject.dates).to eq([{"date"=>"2016-12-20", "date_type"=>"Created"}, {"date"=>"2016-12-20", "date_type"=>"Issued"}, {"date"=>"2016-12-20", "date_type"=>"Updated"}])
|
25
25
|
expect(subject.publication_year).to eq("2016")
|
26
26
|
expect(subject.related_identifiers.length).to eq(3)
|
27
|
-
expect(subject.related_identifiers.first).to eq("
|
28
|
-
expect(subject.related_identifiers.last).to eq("
|
27
|
+
expect(subject.related_identifiers.first).to eq("related_identifier"=>"10.5438/0000-00ss", "related_identifier_type"=>"DOI", "relation_type"=>"IsPartOf")
|
28
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"10.5438/55e5-t5c0", "related_identifier_type"=>"DOI", "relation_type"=>"References")
|
29
29
|
expect(subject.service_provider).to eq("DataCite")
|
30
30
|
end
|
31
31
|
|
32
|
+
# it "SoftwareSourceCode" do
|
33
|
+
# input = fixture_path + "datacite_software.json"
|
34
|
+
# subject = Bolognese::Metadata.new(input: input, from: "datacite_json")
|
35
|
+
# expect(subject.valid?).to be true
|
36
|
+
# expect(subject.identifier).to eq("https://doi.org/10.5063/f1m61h5x")
|
37
|
+
# expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article", "resource_type"=>"Software", "resource_type_general"=>"Software", "ris"=>"COMP", "type"=>"SoftwareSourceCode")
|
38
|
+
# expect(subject.creator).to eq([{"familyName"=>"Jones", "givenName"=>"Matthew B.", "name"=>"Matthew B. Jones", "type"=>"Person"}])
|
39
|
+
# expect(subject.titles).to eq([{"title"=>"dataone: R interface to the DataONE network of data repositories"}])
|
40
|
+
# expect(subject.dates).to eq([{"date"=>"2016", "date_type"=>"Issued"}])
|
41
|
+
# expect(subject.publication_year).to eq("2016")
|
42
|
+
# expect(subject.publisher).to eq("KNB Data Repository")
|
43
|
+
# expect(subject.service_provider).to eq("DataCite")
|
44
|
+
# end
|
45
|
+
|
32
46
|
it "SoftwareSourceCode missing_comma" do
|
33
47
|
input = fixture_path + "datacite_software_missing_comma.json"
|
34
48
|
subject = Bolognese::Metadata.new(input: input, from: "datacite_json")
|
@@ -27,12 +27,12 @@ describe Bolognese::Metadata, vcr: true do
|
|
27
27
|
expect(subject.types["citeproc"]).to eq("dataset")
|
28
28
|
expect(subject.creator.length).to eq(8)
|
29
29
|
expect(subject.creator.first).to eq("type"=>"Person", "name"=>"Benjamin Ollomo", "givenName"=>"Benjamin", "familyName"=>"Ollomo")
|
30
|
-
expect(subject.
|
31
|
-
expect(subject.alternate_identifiers).to eq("
|
32
|
-
expect(subject.
|
30
|
+
expect(subject.titles).to eq([{"title"=>"Data from: A new malaria agent in African hominids."}])
|
31
|
+
expect(subject.alternate_identifiers).to eq([{"alternate_identifier"=>"Ollomo B, Durand P, Prugnolle F, Douzery EJP, Arnathau C, Nkoghe D, Leroy E, Renaud F (2009) A new malaria agent in African hominids. PLoS Pathogens 5(5): e1000446.","alternate_identifier_type"=>"citation"}])
|
32
|
+
expect(subject.rights_list).to eq([{"rights_uri"=>"http://creativecommons.org/publicdomain/zero/1.0"}])
|
33
33
|
expect(subject.publication_year).to eq("2011")
|
34
34
|
expect(subject.related_identifiers.length).to eq(6)
|
35
|
-
expect(subject.related_identifiers.last).to eq("
|
35
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"19478877", "related_identifier_type"=>"PMID", "relation_type"=>"IsSupplementTo")
|
36
36
|
expect(subject.publisher).to eq("Dryad Digital Repository")
|
37
37
|
expect(subject.service_provider).to eq("DataCite")
|
38
38
|
expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-4")
|
@@ -49,14 +49,14 @@ describe Bolognese::Metadata, vcr: true do
|
|
49
49
|
expect(subject.types["ris"]).to eq("RPRT")
|
50
50
|
expect(subject.types["bibtex"]).to eq("article")
|
51
51
|
expect(subject.types["citeproc"]).to eq("article-journal")
|
52
|
-
expect(subject.creator).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner")
|
53
|
-
expect(subject.
|
54
|
-
expect(subject.alternate_identifiers).to eq("
|
55
|
-
expect(subject.
|
52
|
+
expect(subject.creator).to eq([{"type"=>"Person", "id"=>"https://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner"}])
|
53
|
+
expect(subject.titles).to eq([{"title"=>"Eating your own Dog Food"}])
|
54
|
+
expect(subject.alternate_identifiers).to eq([{"alternate_identifier"=>"MS-49-3632-5083", "alternate_identifier_type"=>"Local accession number"}])
|
55
|
+
expect(subject.descriptions.first["description"]).to start_with("Eating your own dog food")
|
56
56
|
expect(subject.dates).to eq([{"date"=>"2016-12-20", "date_type"=>"Created"}, {"date"=>"2016-12-20", "date_type"=>"Issued"}, {"date"=>"2016-12-20", "date_type"=>"Updated"}])
|
57
57
|
expect(subject.publication_year).to eq("2016")
|
58
58
|
expect(subject.related_identifiers.length).to eq(3)
|
59
|
-
expect(subject.related_identifiers.last).to eq("
|
59
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"10.5438/0000-00ss", "related_identifier_type"=>"DOI", "relation_type"=>"IsPartOf")
|
60
60
|
expect(subject.publisher).to eq("DataCite")
|
61
61
|
expect(subject.service_provider).to eq("DataCite")
|
62
62
|
expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-4")
|
@@ -70,9 +70,9 @@ describe Bolognese::Metadata, vcr: true do
|
|
70
70
|
expect(subject.types["type"]).to eq("ScholarlyArticle")
|
71
71
|
expect(subject.types["resource_type"]).to eq("ConferencePaper")
|
72
72
|
expect(subject.types["resource_type_general"]).to eq("Text")
|
73
|
-
expect(subject.creator).to eq("type"=>"Person", "name"=>"Nathaniel Johnston", "givenName"=>"Nathaniel", "familyName"=>"Johnston")
|
74
|
-
expect(subject.
|
75
|
-
expect(subject.
|
73
|
+
expect(subject.creator).to eq([{"type"=>"Person", "name"=>"Nathaniel Johnston", "givenName"=>"Nathaniel", "familyName"=>"Johnston"}])
|
74
|
+
expect(subject.titles).to eq([{"title"=>"The Minimum Size of Qubit Unextendible Product Bases"}])
|
75
|
+
expect(subject.descriptions.first["description"]).to start_with("We investigate the problem of constructing unextendible product bases in the qubit case")
|
76
76
|
expect(subject.dates).to eq([{"date"=>"2013-11-05", "date_type"=>"Available"}, {"date"=>"2013", "date_type"=>"Issued"}])
|
77
77
|
expect(subject.publication_year).to eq("2013")
|
78
78
|
expect(subject.publisher).to eq("Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik GmbH, Wadern/Saarbruecken, Germany")
|
@@ -90,7 +90,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
90
90
|
expect(subject.types["resource_type_general"]).to eq("Audiovisual")
|
91
91
|
expect(subject.creator.length).to eq(14)
|
92
92
|
expect(subject.creator.first).to eq("type"=>"Person", "name"=>"Haywood, Raphaelle Dawn", "givenName"=>"Raphaelle Dawn", "familyName"=>"Haywood")
|
93
|
-
expect(subject.
|
93
|
+
expect(subject.titles).to eq([{"lang"=>"en", "title"=>"Data underpinning - The Sun as a planet-host star: Proxies from SDO images for HARPS radial-velocity variations"}])
|
94
94
|
expect(subject.dates).to eq([{"date"=>"2016-01-20", "date_type"=>"Available"}, {"date"=>"2016", "date_type"=>"Issued"}])
|
95
95
|
expect(subject.publication_year).to eq("2016")
|
96
96
|
expect(subject.publisher).to eq("University of St Andrews")
|
@@ -107,14 +107,14 @@ describe Bolognese::Metadata, vcr: true do
|
|
107
107
|
expect(subject.types["resource_type_general"]).to eq("Software")
|
108
108
|
expect(subject.types["ris"]).to eq("COMP")
|
109
109
|
expect(subject.types["citeproc"]).to eq("article")
|
110
|
-
expect(subject.creator).to eq("type"=>"Person", "name"=>"Kristian Garza", "givenName"=>"Kristian", "familyName"=>"Garza")
|
111
|
-
expect(subject.
|
112
|
-
expect(subject.
|
113
|
-
expect(subject.
|
110
|
+
expect(subject.creator).to eq([{"type"=>"Person", "name"=>"Kristian Garza", "givenName"=>"Kristian", "familyName"=>"Garza"}])
|
111
|
+
expect(subject.titles).to eq([{"title"=>"Analysis Tools For Crossover Experiment Of Ui Using Choice Architecture"}])
|
112
|
+
expect(subject.descriptions.first["description"]).to start_with("This tools are used to analyse the data produced by the Crosssover Experiment")
|
113
|
+
expect(subject.rights_list).to eq([{"rights_uri"=>"https://creativecommons.org/licenses/by-nc-sa/4.0", "rights"=>"Creative Commons Attribution-NonCommercial-ShareAlike"}, {"rights"=>"Open Access"}])
|
114
114
|
expect(subject.dates).to eq([{"date"=>"2016-03-27", "date_type"=>"Issued"}])
|
115
115
|
expect(subject.publication_year).to eq("2016")
|
116
116
|
expect(subject.related_identifiers.length).to eq(1)
|
117
|
-
expect(subject.related_identifiers.last).to eq("
|
117
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"https://github.com/kjgarza/frame_experiment_analysis/tree/v1.0", "related_identifier_type"=>"URL", "relation_type"=>"IsSupplementTo")
|
118
118
|
expect(subject.publisher).to eq("Zenodo")
|
119
119
|
expect(subject.service_provider).to eq("DataCite")
|
120
120
|
expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-4")
|
@@ -130,13 +130,13 @@ describe Bolognese::Metadata, vcr: true do
|
|
130
130
|
expect(subject.types["resource_type_general"]).to eq("Dataset")
|
131
131
|
expect(subject.creator.count).to eq(11)
|
132
132
|
expect(subject.creator.first).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0002-2410-9671", "name"=>"Alexander Junge", "givenName"=>"Alexander", "familyName"=>"Junge")
|
133
|
-
expect(subject.
|
134
|
-
expect(subject.
|
135
|
-
expect(subject.
|
133
|
+
expect(subject.titles).to eq([{"title"=>"RAIN v1"}])
|
134
|
+
expect(subject.descriptions.first["description"]).to start_with("<b>RAIN: RNA–protein Association and Interaction Networks")
|
135
|
+
expect(subject.rights_list).to eq([{"rights_uri"=>"https://creativecommons.org/licenses/by/4.0", "rights"=>"CC-BY"}])
|
136
136
|
expect(subject.dates).to eq([{"date"=>"2016-11-16", "date_type"=>"Created"}, {"date"=>"2016-11-16", "date_type"=>"Updated"}, {"date"=>"2016", "date_type"=>"Issued"}])
|
137
137
|
expect(subject.publication_year).to eq("2016")
|
138
138
|
expect(subject.related_identifiers.length).to eq(1)
|
139
|
-
expect(subject.related_identifiers.last).to eq("
|
139
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"10.6084/m9.figshare.4234751", "related_identifier_type"=>"DOI", "relation_type"=>"IsIdenticalTo")
|
140
140
|
expect(subject.publisher).to eq("Figshare")
|
141
141
|
expect(subject.service_provider).to eq("DataCite")
|
142
142
|
expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-3")
|
@@ -151,8 +151,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
151
151
|
expect(subject.types["resource_type_general"]).to eq("Dataset")
|
152
152
|
expect(subject.creator.length).to eq(4)
|
153
153
|
expect(subject.creator.first).to eq("type"=>"Person", "name"=>"Jahn, Najko", "givenName"=>"Najko", "familyName"=>"Jahn")
|
154
|
-
expect(subject.
|
155
|
-
expect(subject.
|
154
|
+
expect(subject.titles).to eq([{"title"=>"Publication Fp7 Funding Acknowledgment - Plos Openaire"}])
|
155
|
+
expect(subject.descriptions.first["description"]).to start_with("The dataset contains a sample of metadata describing papers")
|
156
156
|
expect(subject.dates).to eq([{"date"=>"2013-04-03", "date_type"=>"Issued"}])
|
157
157
|
expect(subject.publication_year).to eq("2013")
|
158
158
|
expect(subject.publisher).to eq("Zenodo")
|
@@ -196,11 +196,11 @@ describe Bolognese::Metadata, vcr: true do
|
|
196
196
|
expect(subject.doi).to eq("10.5072/geopointexample")
|
197
197
|
expect(subject.creator.length).to eq(3)
|
198
198
|
expect(subject.creator.first).to eq("familyName"=>"Schumann", "givenName"=>"Kai", "name"=>"Kai Schumann", "type"=>"Person")
|
199
|
-
|
199
|
+
expect(subject.titles).to eq([{"title"=>"Gridded results of swath bathymetric mapping of Disko Bay, Western Greenland, 2007-2008"}])
|
200
200
|
expect(subject.publisher).to eq("PANGAEA - Data Publisher for Earth & Environmental Science")
|
201
201
|
expect(subject.publication_year).to eq("2011")
|
202
|
-
expect(subject.related_identifiers).to eq([{"
|
203
|
-
expect(subject.
|
202
|
+
expect(subject.related_identifiers).to eq([{"related_identifier"=>"10.5072/timeseries", "related_identifier_type"=>"DOI", "relation_type"=>"Continues"}])
|
203
|
+
expect(subject.geo_locations).to eq([{"geo_location_place"=>"Disko Bay", "geo_location_point"=>{"point_latitude"=>"69.000000", "point_longitude"=>"-52.000000"}}])
|
204
204
|
end
|
205
205
|
|
206
206
|
it "geo_location_box" do
|
@@ -212,11 +212,11 @@ describe Bolognese::Metadata, vcr: true do
|
|
212
212
|
expect(subject.doi).to eq("10.6071/z7wc73")
|
213
213
|
expect(subject.creator.length).to eq(6)
|
214
214
|
expect(subject.creator.first).to eq("familyName"=>"Bales", "givenName"=>"Roger", "name"=>"Roger Bales", "type"=>"Person")
|
215
|
-
|
215
|
+
expect(subject.titles).to eq([{"title"=>"Southern Sierra Critical Zone Observatory (SSCZO), Providence Creek\n meteorological data, soil moisture and temperature, snow depth and air\n temperature"}])
|
216
216
|
expect(subject.publisher).to eq("UC Merced")
|
217
217
|
expect(subject.dates).to eq([{"date"=>"2014-10-17", "date_type"=>"Updated"}, {"date"=>"2016-03-14T17:02:02Z", "date_type"=>"Available"}, {"date"=>"2013", "date_type"=>"Issued"}])
|
218
218
|
expect(subject.publication_year).to eq("2013")
|
219
|
-
expect(subject.
|
219
|
+
expect(subject.geo_locations).to eq([{"geo_location_box"=>
|
220
220
|
{"east_bound_longitude"=>"-119.182",
|
221
221
|
"north_bound_latitude"=>"37.075",
|
222
222
|
"south_bound_latitude"=>"37.046",
|
@@ -233,7 +233,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
233
233
|
expect(subject.identifier).to eq("https://doi.org/10.14457/kmitl.res.2006.17")
|
234
234
|
expect(subject.types["type"]).to eq("Dataset")
|
235
235
|
expect(subject.creator.length).to eq(1)
|
236
|
-
expect(subject.creator.first).to eq(
|
236
|
+
expect(subject.creator.first).to eq("name" => "กัญจนา แซ่เตียว")
|
237
237
|
end
|
238
238
|
|
239
239
|
it "multiple author names in one creatorName" do
|
@@ -242,7 +242,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
242
242
|
expect(subject.valid?).to be true
|
243
243
|
expect(subject.identifier).to eq("https://doi.org/10.7910/dvn/eqtqyo")
|
244
244
|
expect(subject.types["type"]).to eq("Dataset")
|
245
|
-
expect(subject.creator).to eq("name" => "Enos, Ryan (Harvard University); Fowler, Anthony (University Of Chicago); Vavreck, Lynn (UCLA)")
|
245
|
+
expect(subject.creator).to eq([{"name" => "Enos, Ryan (Harvard University); Fowler, Anthony (University Of Chicago); Vavreck, Lynn (UCLA)"}])
|
246
246
|
end
|
247
247
|
|
248
248
|
it "author with scheme" do
|
@@ -270,7 +270,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
270
270
|
subject = Bolognese::Metadata.new(input: input)
|
271
271
|
expect(subject.valid?).to be true
|
272
272
|
expect(subject.identifier).to eq("https://doi.org/10.21233/n34n5q")
|
273
|
-
expect(subject.
|
273
|
+
expect(subject.subjects).to eq([{"subject_scheme"=>"Library of Congress", "scheme_uri"=>"http://id.loc.gov/authorities/subjects", "subject"=>"Paleoecology"}])
|
274
274
|
end
|
275
275
|
|
276
276
|
it "Funding" do
|
@@ -283,8 +283,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
283
283
|
expect(subject.types["resource_type_general"]).to eq("Dataset")
|
284
284
|
expect(subject.creator.length).to eq(2)
|
285
285
|
expect(subject.creator.first).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0001-8740-8284", "name"=>"Bimbo, Nuno", "givenName"=>"Nuno", "familyName"=>"Bimbo")
|
286
|
-
expect(subject.
|
287
|
-
expect(subject.
|
286
|
+
expect(subject.titles).to eq([{"title"=>"Dataset for \"Direct Evidence for Solid-Like Hydrogen in a Nanoporous Carbon Hydrogen Storage Material at Supercritical Temperatures\""}])
|
287
|
+
expect(subject.descriptions.first["description"]).to start_with("Dataset for Direct Evidence for Solid-Like Hydrogen")
|
288
288
|
expect(subject.publication_year).to eq("2015")
|
289
289
|
expect(subject.publisher).to eq("University of Bath")
|
290
290
|
expect(subject.funding_references.length).to eq(5)
|
@@ -310,8 +310,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
310
310
|
expect(subject.types["citeproc"]).to eq("article")
|
311
311
|
expect(subject.creator.length).to eq(24)
|
312
312
|
expect(subject.creator.first).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0001-5331-6592", "name"=>"Farquhar, Adam", "givenName"=>"Adam", "familyName"=>"Farquhar")
|
313
|
-
expect(subject.
|
314
|
-
expect(subject.
|
313
|
+
expect(subject.titles).to eq([{"title"=>"Technical and Human Infrastructure for Open Research (THOR)"}])
|
314
|
+
expect(subject.descriptions.first["description"]).to start_with("Five years ago, a global infrastructure")
|
315
315
|
expect(subject.publication_year).to eq("2015")
|
316
316
|
expect(subject.publisher).to eq("DataCite")
|
317
317
|
expect(subject.funding_references).to eq([{"award_number"=>"654039",
|
@@ -334,13 +334,13 @@ describe Bolognese::Metadata, vcr: true do
|
|
334
334
|
expect(subject.types["resource_type_general"]).to eq("Text")
|
335
335
|
expect(subject.types["ris"]).to eq("RPRT")
|
336
336
|
expect(subject.types["citeproc"]).to eq("article-journal")
|
337
|
-
expect(subject.creator).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner")
|
338
|
-
expect(subject.
|
339
|
-
expect(subject.alternate_identifiers).to eq("
|
337
|
+
expect(subject.creator).to eq([{"type"=>"Person", "id"=>"https://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner"}])
|
338
|
+
expect(subject.titles).to eq([{"title"=>"Eating your own Dog Food"}])
|
339
|
+
expect(subject.alternate_identifiers).to eq([{"alternate_identifier"=>"MS-49-3632-5083", "alternate_identifier_type"=>"Local accession number"}])
|
340
340
|
expect(subject.dates).to eq([{"date"=>"2016-12-20", "date_type"=>"Created"}, {"date"=>"2016-12-20", "date_type"=>"Issued"}, {"date"=>"2016-12-20", "date_type"=>"Updated"}])
|
341
341
|
expect(subject.publication_year).to eq("2016")
|
342
342
|
expect(subject.related_identifiers.length).to eq(3)
|
343
|
-
expect(subject.related_identifiers.last).to eq("
|
343
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"10.5438/0000-00ss", "related_identifier_type"=>"DOI", "relation_type"=>"IsPartOf")
|
344
344
|
expect(subject.service_provider).to eq("DataCite")
|
345
345
|
end
|
346
346
|
|
@@ -355,13 +355,13 @@ describe Bolognese::Metadata, vcr: true do
|
|
355
355
|
expect(subject.types["ris"]).to eq("BOOK")
|
356
356
|
expect(subject.types["citeproc"]).to eq("book")
|
357
357
|
expect(subject.creator).to eq([{"type"=>"Person", "name"=>"John Smith", "givenName"=>"John", "familyName"=>"Smith"}, {"name"=>"つまらないものですが"}])
|
358
|
-
expect(subject.
|
359
|
-
expect(subject.alternate_identifiers).to eq("
|
360
|
-
expect(subject.dates).to eq([{"date"=>"2012-12-13", "date_type"=>"Other"}, {"date"=>"2010", "date_type"=>"Issued"}])
|
358
|
+
expect(subject.titles).to eq([{"title"=>"Właściwości rzutowań podprzestrzeniowych"}, {"title"=>"Translation of Polish titles", "title_type"=>"TranslatedTitle"}])
|
359
|
+
expect(subject.alternate_identifiers).to eq([{"alternate_identifier"=>"937-0-4523-12357-6", "alternate_identifier_type"=>"ISBN"}])
|
360
|
+
expect(subject.dates).to eq([{"date"=>"2012-12-13", "date_information"=>"Correction", "date_type"=>"Other"}, {"date"=>"2010", "date_type"=>"Issued"}])
|
361
361
|
expect(subject.publication_year).to eq("2010")
|
362
362
|
expect(subject.related_identifiers.length).to eq(1)
|
363
|
-
expect(subject.related_identifiers.last).to eq("
|
364
|
-
expect(subject.
|
363
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"10.5272/oldertestpub", "related_identifier_type"=>"DOI", "relation_type"=>"IsPartOf", "resource_type_general"=>"Text")
|
364
|
+
expect(subject.rights_list).to eq([{"lang"=>"eng", "rights_uri"=>"http://creativecommons.org/licenses/by-nd/2.0", "rights"=>"Creative Commons Attribution-NoDerivs 2.0 Generic"}])
|
365
365
|
expect(subject.publisher).to eq("Springer")
|
366
366
|
expect(subject.service_provider).to eq("DataCite")
|
367
367
|
expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-4")
|
@@ -378,12 +378,12 @@ describe Bolognese::Metadata, vcr: true do
|
|
378
378
|
expect(subject.types["ris"]).to eq("BOOK")
|
379
379
|
expect(subject.types["citeproc"]).to eq("book")
|
380
380
|
expect(subject.creator).to eq([{"type"=>"Person", "name"=>"John Smith", "givenName"=>"John", "familyName"=>"Smith"}, {"name"=>"つまらないものですが"}])
|
381
|
-
expect(subject.
|
382
|
-
expect(subject.alternate_identifiers).to eq("
|
381
|
+
expect(subject.titles).to eq([{"title"=>"Właściwości rzutowań podprzestrzeniowych"}, {"title"=>"Translation of Polish titles", "title_type"=>"TranslatedTitle"}])
|
382
|
+
expect(subject.alternate_identifiers).to eq([{"alternate_identifier"=>"937-0-4523-12357-6", "alternate_identifier_type"=>"ISBN"}])
|
383
383
|
expect(subject.publication_year).to eq("2010")
|
384
384
|
expect(subject.related_identifiers.length).to eq(1)
|
385
|
-
expect(subject.related_identifiers.last).to eq("
|
386
|
-
expect(subject.
|
385
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"10.5272/oldertestpub", "related_identifier_type"=>"DOI", "relation_type"=>"IsPartOf")
|
386
|
+
expect(subject.rights_list).to eq([{"rights_uri"=>"http://creativecommons.org/licenses/by-nd/2.0", "rights"=>"Creative Commons Attribution-NoDerivs 2.0 Generic"}])
|
387
387
|
expect(subject.publisher).to eq("Springer")
|
388
388
|
expect(subject.service_provider).to eq("DataCite")
|
389
389
|
expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-4.0")
|
@@ -400,12 +400,12 @@ describe Bolognese::Metadata, vcr: true do
|
|
400
400
|
expect(subject.types["ris"]).to eq("BOOK")
|
401
401
|
expect(subject.types["citeproc"]).to eq("book")
|
402
402
|
expect(subject.creator).to eq([{"type"=>"Person", "name"=>"John Smith", "givenName"=>"John", "familyName"=>"Smith"}, {"name"=>"つまらないものですが"}])
|
403
|
-
expect(subject.
|
404
|
-
expect(subject.alternate_identifiers).to eq("
|
403
|
+
expect(subject.titles).to eq([{"title"=>"Właściwości rzutowań podprzestrzeniowych"}, {"title"=>"Translation of Polish titles", "title_type"=>"TranslatedTitle"}])
|
404
|
+
expect(subject.alternate_identifiers).to eq([{"alternate_identifier"=>"937-0-4523-12357-6", "alternate_identifier_type"=>"ISBN"}])
|
405
405
|
expect(subject.publication_year).to eq("2010")
|
406
406
|
expect(subject.related_identifiers.length).to eq(1)
|
407
|
-
expect(subject.related_identifiers.last).to eq("
|
408
|
-
expect(subject.
|
407
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"10.5272/oldertestpub", "related_identifier_type"=>"DOI", "relation_type"=>"IsPartOf")
|
408
|
+
expect(subject.rights_list).to eq([{"rights_uri"=>"http://creativecommons.org/licenses/by-nd/2.0", "rights"=>"Creative Commons Attribution-NoDerivs 2.0 Generic"}])
|
409
409
|
expect(subject.publisher).to eq("Springer")
|
410
410
|
expect(subject.service_provider).to eq("DataCite")
|
411
411
|
expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-3.0")
|
@@ -422,12 +422,12 @@ describe Bolognese::Metadata, vcr: true do
|
|
422
422
|
expect(subject.types["ris"]).to eq("BOOK")
|
423
423
|
expect(subject.types["citeproc"]).to eq("book")
|
424
424
|
expect(subject.creator).to eq([{"type"=>"Person", "name"=>"John Smith", "givenName"=>"John", "familyName"=>"Smith"}, {"name"=>"つまらないものですが"}])
|
425
|
-
expect(subject.
|
426
|
-
expect(subject.alternate_identifiers).to eq("
|
425
|
+
expect(subject.titles).to eq([{"title"=>"Właściwości rzutowań podprzestrzeniowych"}, {"title"=>"Translation of Polish titles", "title_type"=>"TranslatedTitle"}])
|
426
|
+
expect(subject.alternate_identifiers).to eq([{"alternate_identifier"=>"937-0-4523-12357-6", "alternate_identifier_type"=>"ISBN"}])
|
427
427
|
expect(subject.dates).to eq([{"date"=>"2009-04-29", "date_type"=>"StartDate"}, {"date"=>"2010-01-05", "date_type"=>"EndDate"}, {"date"=>"2010", "date_type"=>"Issued"}])
|
428
428
|
expect(subject.publication_year).to eq("2010")
|
429
429
|
expect(subject.related_identifiers.length).to eq(1)
|
430
|
-
expect(subject.related_identifiers.last).to eq("
|
430
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"10.5272/oldertestpub", "related_identifier_type"=>"DOI", "relation_type"=>"IsPartOf")
|
431
431
|
expect(subject.publisher).to eq("Springer")
|
432
432
|
expect(subject.service_provider).to eq("DataCite")
|
433
433
|
expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-2.2")
|
@@ -442,17 +442,17 @@ describe Bolognese::Metadata, vcr: true do
|
|
442
442
|
expect(subject.types["resource_type"]).to eq("Monograph")
|
443
443
|
expect(subject.types["resource_type_general"]).to eq("Text")
|
444
444
|
expect(subject.creator).to eq([{"type"=>"Person", "name"=>"John Smith", "givenName"=>"John", "familyName"=>"Smith"}, {"name"=>"つまらないものですが"}])
|
445
|
-
expect(subject.
|
446
|
-
expect(subject.alternate_identifiers).to eq("
|
447
|
-
expect(subject.dates).to eq([{"date"=>"2012-12-13", "date_type"=>"Other"}, {"date"=>"2010", "date_type"=>"Issued"}])
|
445
|
+
expect(subject.titles).to eq([{"title"=>"Właściwości rzutowań podprzestrzeniowych"}, {"title"=>"Translation of Polish titles", "title_type"=>"TranslatedTitle"}])
|
446
|
+
expect(subject.alternate_identifiers).to eq([{"alternate_identifier"=>"937-0-4523-12357-6", "alternate_identifier_type"=>"ISBN"}])
|
447
|
+
expect(subject.dates).to eq([{"date"=>"2012-12-13", "date_information"=>"Correction", "date_type"=>"Other"}, {"date"=>"2010", "date_type"=>"Issued"}])
|
448
448
|
expect(subject.publication_year).to eq("2010")
|
449
|
-
expect(subject.
|
449
|
+
expect(subject.sizes).to eq(["256 pages"])
|
450
450
|
expect(subject.formats).to eq(["pdf"])
|
451
451
|
expect(subject.content_url).to eq("https://example.org/report.pdf")
|
452
452
|
expect(subject.publication_year).to eq("2010")
|
453
453
|
expect(subject.related_identifiers.length).to eq(1)
|
454
|
-
expect(subject.related_identifiers.last).to eq("
|
455
|
-
expect(subject.
|
454
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"10.5272/oldertestpub", "related_identifier_type"=>"DOI", "relation_type"=>"IsPartOf", "resource_type_general"=>"Text")
|
455
|
+
expect(subject.rights_list).to eq([{"lang"=>"eng", "rights_uri"=>"http://creativecommons.org/licenses/by-nd/2.0", "rights"=>"Creative Commons Attribution-NoDerivs 2.0 Generic"}])
|
456
456
|
expect(subject.publisher).to eq("Springer")
|
457
457
|
expect(subject.service_provider).to eq("DataCite")
|
458
458
|
end
|
@@ -467,7 +467,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
467
467
|
expect(subject.types["resource_type_general"]).to eq("Software")
|
468
468
|
expect(subject.creator.length).to eq(5)
|
469
469
|
expect(subject.creator.first).to eq("type"=>"Person", "name"=>"Carlos PatiñO", "givenName"=>"Carlos", "familyName"=>"PatiñO")
|
470
|
-
expect(subject.
|
470
|
+
expect(subject.titles).to eq([{"title"=>"LAMMPS Data-File Generator"}])
|
471
471
|
expect(subject.dates).to eq([{"date"=>"2018-07-18", "date_type"=>"Valid"}, {"date"=>"2018-07-18", "date_type"=>"Accepted"}, {"date"=>"2018", "date_type"=>"Issued"}])
|
472
472
|
expect(subject.publication_year).to eq("2018")
|
473
473
|
expect(subject.publisher).to eq("nanoHUB")
|
@@ -482,8 +482,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
482
482
|
expect(subject.identifier).to eq("https://doi.org/10.5067/terra+aqua/ceres/cldtyphist_l3.004")
|
483
483
|
expect(subject.types["type"]).to eq("Dataset")
|
484
484
|
expect(subject.types["resource_type_general"]).to eq("Dataset")
|
485
|
-
expect(subject.creator).to eq("type"=>"Person", "name"=>"Takmeng Wong", "givenName"=>"Takmeng", "familyName"=>"Wong")
|
486
|
-
expect(subject.
|
485
|
+
expect(subject.creator).to eq([{"type"=>"Person", "name"=>"Takmeng Wong", "givenName"=>"Takmeng", "familyName"=>"Wong"}])
|
486
|
+
expect(subject.titles).to eq([{"title"=>"CERES Level 3 Cloud Type Historgram Terra+Aqua HDF file - Edition4"}])
|
487
487
|
expect(subject.publication_year).to eq("2016")
|
488
488
|
expect(subject.publisher).to eq("NASA Langley Atmospheric Science Data Center DAAC")
|
489
489
|
expect(subject.service_provider).to eq("DataCite")
|
@@ -497,9 +497,9 @@ describe Bolognese::Metadata, vcr: true do
|
|
497
497
|
expect(subject.identifier).to eq("https://doi.org/10.4232/1.2745")
|
498
498
|
expect(subject.types["type"]).to eq("Dataset")
|
499
499
|
expect(subject.types["resource_type_general"]).to eq("Dataset")
|
500
|
-
expect(subject.creator).to eq("type"=>"Organization", "name"=>"Europäische Kommission")
|
501
|
-
expect(subject.
|
502
|
-
expect(subject.
|
500
|
+
expect(subject.creator).to eq([{"type"=>"Organization", "name"=>"Europäische Kommission"}])
|
501
|
+
expect(subject.titles).to eq([{"lang"=>"de", "title"=>"Flash Eurobarometer 54 (Madrid Summit)"}, {"lang"=>"en", "title"=>"Flash Eurobarometer 54 (Madrid Summit)"}, {"title_type"=>"Subtitle","lang"=>"de", "title"=>"The Common European Currency"}, {"title_type"=>"Subtitle", "lang"=>"en", "title"=>"The Common European Currency"}])
|
502
|
+
expect(subject.subjects).to eq([{"subject_scheme"=>"ZA", "lang"=>"en", "subject"=>"KAT12 International Institutions, Relations, Conditions"}])
|
503
503
|
expect(subject.dates).to eq([{"date"=>"1995-12", "date_type"=>"Collected"}, {"date"=>"1996", "date_type"=>"Issued"}])
|
504
504
|
expect(subject.publication_year).to eq("1996")
|
505
505
|
expect(subject.publisher).to eq("GESIS Data Archive")
|
@@ -517,11 +517,11 @@ describe Bolognese::Metadata, vcr: true do
|
|
517
517
|
expect(subject.types["resource_type_general"]).to eq("Text")
|
518
518
|
expect(subject.creator.length).to eq(3)
|
519
519
|
expect(subject.creator.first).to eq("type"=>"Person", "name"=>"P. Llamas", "givenName"=>"P.", "familyName"=>"Llamas")
|
520
|
-
expect(subject.
|
520
|
+
expect(subject.titles).to eq([{"title"=>"Rural Electrification With Hybrid Power Systems Based on Renewables - Technical System Configurations From the Point of View of the European Industry"}])
|
521
521
|
expect(subject.dates).to eq([{"date"=>"2008-11-01", "date_type"=>"Valid"}, {"date"=>"2008", "date_type"=>"Issued"}])
|
522
522
|
expect(subject.publication_year).to eq("2008")
|
523
523
|
expect(subject.periodical).to eq("title"=>"23rd European Photovoltaic Solar Energy Conference and Exhibition, 1-5 September 2008, Valencia, Spain; 3353-3356", "type"=>"Periodical")
|
524
|
-
expect(subject.
|
524
|
+
expect(subject.descriptions.first["description"]).to start_with("Aim of this paper is the presentation")
|
525
525
|
expect(subject.publisher).to eq("WIP-Munich")
|
526
526
|
expect(subject.service_provider).to eq("DataCite")
|
527
527
|
expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-2.2")
|
@@ -533,7 +533,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
533
533
|
expect(subject.valid?).to be true
|
534
534
|
expect(subject.doi).to eq("10.23725/8na3-9s47")
|
535
535
|
expect(subject.identifier).to eq("https://doi.org/10.23725/8na3-9s47")
|
536
|
-
expect(subject.alternate_identifiers).to
|
536
|
+
expect(subject.alternate_identifiers.length).to eq(3)
|
537
|
+
expect(subject.alternate_identifiers.first).to eq("alternate_identifier"=>"ark:/99999/fk41CrU4eszeLUDe", "alternate_identifier_type"=>"minid")
|
537
538
|
expect(subject.content_url).to include("s3://cgp-commons-public/topmed_open_access/197bc047-e917-55ed-852d-d563cdbc50e4/NWD165827.recab.cram", "gs://topmed-irc-share/public/NWD165827.recab.cram")
|
538
539
|
end
|
539
540
|
|
@@ -545,8 +546,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
545
546
|
expect(subject.types["type"]).to eq("Dataset")
|
546
547
|
expect(subject.types["resource_type"]).to eq("Disclosure")
|
547
548
|
expect(subject.types["resource_type_general"]).to eq("Dataset")
|
548
|
-
expect(subject.creator).to eq("name"=>"Anonymous")
|
549
|
-
expect(subject.
|
549
|
+
expect(subject.creator).to eq([{"name"=>"Anonymous"}])
|
550
|
+
expect(subject.titles).to eq([{"title"=>"Messung der Bildunschaerfe in H.264-codierten Bildern und Videosequenzen"}])
|
550
551
|
expect(subject.dates).to eq([{"date"=>"07.04.2017", "date_type"=>"Available"}, {"date"=>"2017", "date_type"=>"Issued"}])
|
551
552
|
expect(subject.publication_year).to eq("2017")
|
552
553
|
expect(subject.publisher).to eq("Siemens AG")
|
@@ -576,7 +577,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
576
577
|
"name"=>"Henk Eskes",
|
577
578
|
"givenName"=>"Henk",
|
578
579
|
"familyName"=>"Eskes"}])
|
579
|
-
expect(subject.
|
580
|
+
expect(subject.titles).to eq([{"title"=>"Multi-Sensor Reanalysis (MSR) of total ozone, version 2"}])
|
580
581
|
expect(subject.version).to eq("2")
|
581
582
|
expect(subject.dates).to eq([{"date"=>"2014-04-25", "date_type"=>"Available"}, {"date"=>"1970-04-01 / (:tba)", "date_type"=>"Collected"}, {"date"=>"2015", "date_type"=>"Issued"}])
|
582
583
|
expect(subject.publication_year).to eq("2015")
|
@@ -602,8 +603,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
602
603
|
expect(subject.identifier).to eq("https://handle.test.datacite.org/10.22002/d1.694")
|
603
604
|
expect(subject.types["type"]).to eq("Dataset")
|
604
605
|
expect(subject.types["resource_type_general"]).to eq("Dataset")
|
605
|
-
expect(subject.creator).to eq("name"=>"Tester")
|
606
|
-
expect(subject.
|
606
|
+
expect(subject.creator).to eq([{"name"=>"Tester"}])
|
607
|
+
expect(subject.titles).to eq([{"title"=>"Test license"}])
|
607
608
|
expect(subject.dates).to eq([{"date"=>"2018-01-12", "date_type"=>"Issued"}])
|
608
609
|
expect(subject.publication_year).to eq("2018")
|
609
610
|
expect(subject.publisher).to eq("CaltechDATA")
|
@@ -623,7 +624,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
623
624
|
expect(subject.types["citeproc"]).to eq("article-journal")
|
624
625
|
expect(subject.creator.length).to eq(5)
|
625
626
|
expect(subject.creator.first).to eq("type"=>"Person", "name"=>"Lina Patel", "givenName"=>"Lina", "familyName"=>"Patel")
|
626
|
-
expect(subject.
|
627
|
+
expect(subject.titles).to eq([{"title"=>"Referee report. For: Gates - add article keywords to the metatags [version 2; referees: 1 approved]"}])
|
627
628
|
expect(subject.publication_year).to eq("2018")
|
628
629
|
expect(subject.publisher).to eq("Gates Open Research")
|
629
630
|
expect(subject.service_provider).to eq("DataCite")
|
@@ -633,7 +634,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
633
634
|
it "missing creator" do
|
634
635
|
input = fixture_path + "datacite_missing_creator.xml"
|
635
636
|
subject = Bolognese::Metadata.new(input: input, regenerate: true)
|
636
|
-
expect(subject.creator).to
|
637
|
+
expect(subject.creator).to be_blank
|
637
638
|
expect(subject.valid?).to be false
|
638
639
|
expect(subject.errors).to eq("4:0: ERROR: Element '{http://datacite.org/schema/kernel-4}creators': Missing child element(s). Expected is ( {http://datacite.org/schema/kernel-4}creator ).")
|
639
640
|
end
|
@@ -641,7 +642,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
641
642
|
it "malformed creator" do
|
642
643
|
input = fixture_path + "datacite_malformed_creator.xml"
|
643
644
|
subject = Bolognese::Metadata.new(input: input, regenerate: false)
|
644
|
-
expect(subject.creator).to
|
645
|
+
expect(subject.creator).to be_blank
|
645
646
|
expect(subject.valid?).to be false
|
646
647
|
expect(subject.errors).to eq("16:0: ERROR: Element '{http://datacite.org/schema/kernel-4}creatorName': This element is not expected. Expected is ( {http://datacite.org/schema/kernel-4}affiliation ).")
|
647
648
|
end
|
@@ -664,8 +665,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
664
665
|
expect(subject.types["type"]).to eq("Thesis")
|
665
666
|
expect(subject.types["bibtex"]).to eq("phdthesis")
|
666
667
|
expect(subject.types["citeproc"]).to eq("thesis")
|
667
|
-
expect(subject.creator).to eq("type"=>"Person", "name"=>"Heiko Conrad", "givenName"=>"Heiko", "familyName"=>"Conrad")
|
668
|
-
expect(subject.
|
668
|
+
expect(subject.creator).to eq([{"type"=>"Person", "name"=>"Heiko Conrad", "givenName"=>"Heiko", "familyName"=>"Conrad"}])
|
669
|
+
expect(subject.titles).to eq([{"title"=>"Dynamics of colloids in molecular glass forming liquids studied via X-ray photon correlation spectroscopy"}])
|
669
670
|
expect(subject.dates).to eq([{"date"=>"2014", "date_type"=>"Issued"},
|
670
671
|
{"date"=>"2014", "date_type"=>"Copyrighted"},
|
671
672
|
{"date"=>"2009-10-01/2014-01-23", "date_type"=>"Created"}])
|
@@ -682,8 +683,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
682
683
|
expect(subject.identifier).to eq("https://doi.org/10.4121/uuid:3926db30-f712-4394-aebc-75976070e91f")
|
683
684
|
expect(subject.types["type"]).to eq("Dataset")
|
684
685
|
expect(subject.types["resource_type_general"]).to eq("Dataset")
|
685
|
-
expect(subject.
|
686
|
-
expect(subject.dates).to eq([{"date"=>"2011-10-01/2012-03-14", "date_type"=>"Other"}, {"date"=>"2012", "date_type"=>"Issued"}])
|
686
|
+
expect(subject.titles).to eq([{"title"=>"BPI Challenge 2012"}])
|
687
|
+
expect(subject.dates).to eq([{"date"=>"2011-10-01/2012-03-14", "date_information"=>"Temporal coverage of this dataset.", "date_type"=>"Other"}, {"date"=>"2012", "date_type"=>"Issued"}])
|
687
688
|
expect(subject.publication_year).to eq("2012")
|
688
689
|
expect(subject.state).to eq("findable")
|
689
690
|
end
|
@@ -691,13 +692,13 @@ describe Bolognese::Metadata, vcr: true do
|
|
691
692
|
|
692
693
|
context "change datacite metadata" do
|
693
694
|
it "change title" do
|
694
|
-
subject.
|
695
|
+
subject.titles = [{"title"=> "A new malaria agent in African hominids." }]
|
695
696
|
expect(subject.valid?).to be true
|
696
697
|
expect(subject.identifier).to eq("https://doi.org/10.5061/dryad.8515")
|
697
698
|
expect(subject.doi).to eq("10.5061/dryad.8515")
|
698
699
|
expect(subject.url).to eq("http://datadryad.org/resource/doi:10.5061/dryad.8515")
|
699
700
|
expect(subject.types["type"]).to eq("Dataset")
|
700
|
-
expect(subject.
|
701
|
+
expect(subject.titles).to eq([{"title"=> "A new malaria agent in African hominids." }])
|
701
702
|
end
|
702
703
|
|
703
704
|
it "change state" do
|
@@ -707,7 +708,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
707
708
|
expect(subject.doi).to eq("10.5061/dryad.8515")
|
708
709
|
expect(subject.url).to eq("http://datadryad.org/resource/doi:10.5061/dryad.8515")
|
709
710
|
expect(subject.types["type"]).to eq("Dataset")
|
710
|
-
expect(subject.
|
711
|
+
expect(subject.titles).to eq([{"title"=>"Data from: A new malaria agent in African hominids."}])
|
711
712
|
expect(subject.state).to eq("registered")
|
712
713
|
end
|
713
714
|
end
|
@@ -720,8 +721,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
720
721
|
expect(subject.valid?).to be true
|
721
722
|
expect(subject.identifier).to eq("https://doi.org/10.5061/dryad.8515")
|
722
723
|
expect(subject.doi).to eq("10.5061/dryad.8515")
|
723
|
-
expect(subject.creator).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner")
|
724
|
-
expect(subject.
|
724
|
+
expect(subject.creator).to eq([{"type"=>"Person", "id"=>"https://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner"}])
|
725
|
+
expect(subject.titles).to eq([{"title"=>"Eating your own Dog Food"}])
|
725
726
|
expect(subject.publisher).to eq("DataCite")
|
726
727
|
expect(subject.publication_year).to eq("2016")
|
727
728
|
end
|
@@ -739,15 +740,15 @@ describe Bolognese::Metadata, vcr: true do
|
|
739
740
|
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")
|
740
741
|
expect(subject.types["type"]).to eq("Dataset")
|
741
742
|
expect(subject.types["resource_type"]).to eq("DroNc-seq data")
|
742
|
-
expect(subject.creator).to eq("name"=>"The GTEx Consortium", "type"=>"Organization")
|
743
|
-
expect(subject.
|
744
|
-
expect(subject.
|
743
|
+
expect(subject.creator).to eq([{"name"=>"The GTEx Consortium", "type"=>"Organization"}])
|
744
|
+
expect(subject.titles).to eq([{"title"=>"DroNc-seq data"}])
|
745
|
+
expect(subject.subjects).to eq([{"subject"=>"gtex"}, {"subject"=>"annotation"}, {"subject"=>"phenotype"}, {"subject"=>"gene regulation"}, {"subject"=>"transcriptomics"}])
|
745
746
|
expect(subject.dates).to eq([{"date"=>"2017", "date_type"=>"Issued"}])
|
746
747
|
expect(subject.publication_year).to eq("2017")
|
747
748
|
expect(subject.related_identifiers.length).to eq(4)
|
748
|
-
expect(subject.related_identifiers.last).to eq("
|
749
|
+
expect(subject.related_identifiers.last).to eq("related_identifier"=>"https://www.ebi.ac.uk/miriam/main/datatypes/MIR:00000663", "related_identifier_type"=>"URL", "relation_type"=>"IsPartOf")
|
749
750
|
expect(subject.formats).to eq(["application/tar"])
|
750
|
-
expect(subject.
|
751
|
+
expect(subject.sizes).to eq(["15.7M"])
|
751
752
|
expect(subject.periodical).to eq("id"=>"https://www.ebi.ac.uk/miriam/main/datatypes/MIR:00000663", "title"=>"GTEx", "type"=>"DataCatalog")
|
752
753
|
expect(subject.publisher).to eq("GTEx")
|
753
754
|
expect(subject.funding_references.count).to eq(7)
|