spec/writers/datacite_writer_spec.rb in briard-2.3.1 vs spec/writers/datacite_writer_spec.rb in briard-2.4

- old
+ new

@@ -9,11 +9,11 @@ subject = Briard::Metadata.new(input: input, from: "crossref") expect(subject.valid?).to be true datacite = Maremma.from_xml(subject.datacite).fetch("resource", {}) expect(datacite.dig("resourceType", "resourceTypeGeneral")).to eq("JournalArticle") expect(datacite.dig("titles", "title")).to eq("Automated quantitative histology reveals vascular morphodynamics during Arabidopsis hypocotyl secondary growth") - expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").length).to eq(27) + expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").length).to eq(28) expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").first).to eq("relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "__content__"=>"2050-084X", "resourceTypeGeneral"=>"Collection") expect(datacite.dig("relatedIdentifiers", "relatedIdentifier")[1]).to eq("relatedIdentifierType"=>"DOI", "relationType"=>"References", "__content__"=>"10.1038/nature02100") expect(datacite.dig("rightsList", "rights")).to eq("rightsURI"=>"https://creativecommons.org/licenses/by/3.0/legalcode", "rightsIdentifier"=>"cc-by-3.0", "rightsIdentifierScheme"=>"SPDX", "schemeURI"=>"https://spdx.org/licenses/", "__content__"=>"Creative Commons Attribution 3.0 Unported") expect(datacite.dig("fundingReferences", "fundingReference").count).to eq(4) expect(datacite.dig("fundingReferences", "fundingReference").last).to eq("funderName"=>"University of Lausanne", "funderIdentifier" => {"funderIdentifierType"=>"Crossref Funder ID", "__content__"=>"https://doi.org/10.13039/501100006390"}) @@ -167,11 +167,11 @@ "rightsUri"=>"https://creativecommons.org/publicdomain/zero/1.0/legalcode", "schemeUri"=>"https://spdx.org/licenses/"}]) expect(subject.dates).to eq([{"date"=>"2017-06-28", "dateType"=>"Created"}, {"date"=>"2017-06-28", "dateType"=>"Updated"}, {"date"=>"2017", "dateType"=>"Issued"}]) expect(subject.publication_year).to eq("2017") expect(subject.publisher).to eq("Figshare") - expect(subject.subjects).to eq([{"subject"=>"Information Systems"}, + expect(subject.subjects).to eq([{"subject"=>"information systems"}, {"schemeUri"=>"http://www.oecd.org/science/inno/38235147.pdf", "subject"=>"FOS: Computer and information sciences", "subjectScheme"=>"Fields of Science and Technology (FOS)"}]) expect(subject.agency).to eq("datacite") expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-3") @@ -193,11 +193,11 @@ "rightsUri"=>"https://creativecommons.org/publicdomain/zero/1.0/legalcode", "schemeUri"=>"https://spdx.org/licenses/"}]) expect(subject.dates).to eq([{"date"=>"2017-06-28", "dateType"=>"Created"}, {"date"=>"2017-06-28", "dateType"=>"Updated"}, {"date"=>"2017", "dateType"=>"Issued"}]) expect(subject.publication_year).to eq("2017") expect(subject.publisher).to eq("Figshare") - expect(subject.subjects).to eq([{"subject"=>"Information Systems"}, + expect(subject.subjects).to eq([{"subject"=>"information systems"}, {"schemeUri"=>"http://www.oecd.org/science/inno/38235147.pdf", "subject"=>"FOS: Computer and information sciences", "subjectScheme"=>"Fields of Science and Technology (FOS)"}]) expect(subject.agency).to eq("datacite") expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-3") @@ -220,11 +220,11 @@ "schemeUri"=>"https://spdx.org/licenses/"}]) expect(subject.dates).to eq([{"date"=>"2011-02-01T17:22:41Z", "dateType"=>"Available"}, {"date"=>"2011", "dateType"=>"Issued"}]) expect(subject.publication_year).to eq("2011") expect(subject.related_identifiers.length).to eq(1) expect(subject.related_identifiers.last).to eq("relatedIdentifier" => "10.1371/journal.ppat.1000446", - "relatedIdentifierType" => "DOI","relationType"=>"Cites") + "relatedIdentifierType" => "DOI","relationType"=>"IsCitedBy") expect(subject.publisher).to eq("Dryad") expect(subject.agency).to eq("datacite") expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-4") datacite = Maremma.from_xml(subject.datacite).fetch("resource", {}) @@ -255,20 +255,10 @@ datacite = Maremma.from_xml(subject.datacite).fetch("resource", {}) expect(datacite.fetch("xsi:schemaLocation", "").split(" ").first).to eq("http://datacite.org/schema/kernel-4") expect(datacite.dig("creators", "creator", 0, "affiliation")).to eq(["UC Merced", "NSF"]) end - it "with data citation schema.org" do - input = "https://blog.datacite.org/eating-your-own-dog-food/" - subject = Briard::Metadata.new(input: input, from: "schema_org") - expect(subject.valid?).to be true - datacite = Maremma.from_xml(subject.datacite).fetch("resource", {}) - expect(datacite.dig("titles", "title")).to eq("Eating your own Dog Food") - expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").count).to eq(3) - expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").first).to eq("__content__"=>"10.5438/0000-00ss", "relatedIdentifierType"=>"DOI", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Text") - end - it "DOI not found" do input = "https://doi.org/10.4124/05F6C379-DD68-4CDB-880D-33D3E9576D52/1" subject = Briard::Metadata.new(input: input, from: "datacite") expect(subject.valid?).to be false expect(subject.id).to eq("https://doi.org/10.4124/05f6c379-dd68-4cdb-880d-33d3e9576d52/1") @@ -300,10 +290,10 @@ expect(subject.valid?).to be true datacite = Maremma.from_xml(subject.datacite).fetch("resource", {}) expect(datacite.dig("identifier", "__content__")).to eq("10.5061/DRYAD.8515") expect(datacite.dig("resourceType", "resourceTypeGeneral")).to eq("Dataset") expect(datacite.dig("titles", "title")).to eq("Data from: Automated quantitative histology reveals vascular morphodynamics during Arabidopsis hypocotyl secondary growth") - expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").length).to eq(27) + expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").length).to eq(28) expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").first).to eq("__content__"=>"2050-084X", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection") expect(datacite.dig("relatedIdentifiers", "relatedIdentifier")[1]).to eq("relatedIdentifierType"=>"DOI", "relationType"=>"References", "__content__"=>"10.1038/nature02100") expect(datacite.dig("rightsList", "rights")).to eq("rightsURI"=>"https://creativecommons.org/licenses/by/3.0/legalcode", "rightsIdentifier"=>"cc-by-3.0", "rightsIdentifierScheme"=>"SPDX", "schemeURI"=>"https://spdx.org/licenses/", "__content__"=>"Creative Commons Attribution 3.0 Unported") expect(datacite.dig("fundingReferences", "fundingReference").count).to eq(4) expect(datacite.dig("fundingReferences", "fundingReference").last).to eq("funderName"=>"University of Lausanne", "funderIdentifier" => {"funderIdentifierType"=>"Crossref Funder ID", "__content__"=>"https://doi.org/10.13039/501100006390"})