Sha256: 7c8ba7704bd5f67a8aabb1ad9d24517f3c649d6af1d8affd9b160868029e1349

Contents?: true

Size: 1.96 KB

Versions: 48

Compression:

Stored size: 1.96 KB

Contents

require 'spec_helper'

describe Bolognese::Metadata, vcr: true do
  context "write metadata as codemeta" do
    it "SoftwareSourceCode DataCite JSON" do
      input = fixture_path + "datacite_software.json"
      subject = Bolognese::Metadata.new(input: input, from: "datacite_json")
      expect(subject.valid?).to be true
      json = JSON.parse(subject.codemeta)
      expect(json["@context"]).to eq("https://raw.githubusercontent.com/codemeta/codemeta/master/codemeta.jsonld")
      expect(json["@id"]).to eq("https://doi.org/10.5063/f1m61h5x")
      expect(json["@type"]).to eq("SoftwareSourceCode")
      expect(json["identifier"]).to eq("https://doi.org/10.5063/f1m61h5x")
      expect(json["agents"]).to eq("type"=>"Person", "name"=>"Matthew B. Jones", "givenName"=>"Matthew B.", "familyName"=>"Jones")
      expect(json["title"]).to eq("dataone: R interface to the DataONE network of data repositories")
      expect(json["datePublished"]).to eq("2016")
      expect(json["publisher"]).to eq("KNB Data Repository")
    end

    it "SoftwareSourceCode DataCite" do
      input = "https://doi.org/10.5063/f1m61h5x"
      subject = Bolognese::Metadata.new(input: input, from: "datacite")
      expect(subject.valid?).to be true
      json = JSON.parse(subject.codemeta)
      expect(json["@context"]).to eq("https://raw.githubusercontent.com/codemeta/codemeta/master/codemeta.jsonld")
      expect(json["@id"]).to eq("https://doi.org/10.5063/f1m61h5x")
      expect(json["@type"]).to eq("SoftwareSourceCode")
      expect(json["identifier"]).to eq("https://doi.org/10.5063/f1m61h5x")
      expect(json["agents"].length).to eq(9)
      expect(json["agents"].first).to eq("type"=>"Person", "name"=>"Matthew B. Jones", "givenName"=>"Matthew B.", "familyName"=>"Jones")
      expect(json["title"]).to eq("dataone: R interface to the DataONE network of data repositories")
      expect(json["datePublished"]).to eq("2016")
      expect(json["publisher"]).to eq("KNB Data Repository")
    end
  end
end

Version data entries

48 entries across 48 versions & 1 rubygems

Version Path
bolognese-0.9.64 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.63 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.62 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.61 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.60 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.59 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.58 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.56 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.55 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.54 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.52 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.51 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.50 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.48 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.44 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.43 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.42 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.41 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.39 spec/writers/codemeta_writer_spec.rb
bolognese-0.9.38 spec/writers/codemeta_writer_spec.rb