Skip to content

Commit

Permalink
clean up tests for indexing. #288
Browse files Browse the repository at this point in the history
  • Loading branch information
Martin Fenner committed Jun 9, 2019
1 parent 0d60347 commit 712723d
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 77 deletions.
27 changes: 4 additions & 23 deletions spec/lib/tasks/doi_rake_spec.rb
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
require 'rails_helper'

describe "doi:index", elasticsearch: true do
describe "doi:import", elasticsearch: true do
include ActiveJob::TestHelper
include_context "rake"

ENV['FROM_DATE'] = "2018-01-04"
ENV['UNTIL_DATE'] = "2018-08-05"

let!(:doi) { create_list(:doi, 10) }
let(:output) { "" }

Expand All @@ -18,26 +15,10 @@
expect(capture_stdout { subject.invoke }).to start_with(output)
end

it "should enqueue an DoiIndexByDayJob" do
it "should enqueue an DoiImportByIdJob" do
expect {
capture_stdout { subject.invoke }
}.to change(enqueued_jobs, :size).by(214)
expect(enqueued_jobs.last[:job]).to be(DoiIndexByDayJob)
}.to change(enqueued_jobs, :size).by(1)
expect(enqueued_jobs.last[:job]).to be(DoiImportByIdJob)
end
end

describe "doi:index_by_day", elasticsearch: true do
include ActiveJob::TestHelper
include_context "rake"

let!(:doi) { create_list(:doi, 10) }
let(:output) { "DOIs created on 2018-01-04 indexed.\n" }

it "prerequisites should include environment" do
expect(subject.prerequisites).to include("environment")
end

it "should run the rake task" do
expect(capture_stdout { subject.invoke }).to eq(output)
end
end
60 changes: 6 additions & 54 deletions spec/models/doi_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -430,68 +430,20 @@
end
end

describe "import", elasticsearch: true do
describe "import_by_ids", elasticsearch: true do
let(:provider) { create(:provider) }
let(:client) { create(:client, provider: provider) }
let(:target) { create(:client, provider: provider, symbol: provider.symbol + ".TARGET", name: "Target Client") }
let!(:dois) { create_list(:doi, 3, client: client, aasm_state: "findable") }
let(:doi) { dois.first }

before do
Doi.import
sleep 1
end

it "import one" do
response = Doi.import_one(doi_id: doi.doi)
expect(response.schema_version).to eq("http://datacite.org/schema/kernel-4")
end

it "import all" do
response = Doi.import_all
expect(response).to eq(1)
end

it "import missing" do
response = Doi.import_missing
expect(response).to eq(1)
end

it "import by day" do
response = Doi.import_by_day(from_date: Date.today.strftime("%F"))
expect(response).to eq(3)
end
end

describe "index", elasticsearch: true do
let(:provider) { create(:provider) }
let(:client) { create(:client, provider: provider) }
let(:target) { create(:client, provider: provider, symbol: provider.symbol + ".TARGET", name: "Target Client") }
let!(:dois) { create_list(:doi, 3, client: client, aasm_state: "findable") }
let(:doi) { dois.first }

before do
Doi.import
sleep 1
end

it "index" do
response = Doi.index
expect(response).to eq(1)
end

# it "index by day" do
# response = Doi.index_by_day(from_date: Date.today.strftime("%F"))
# expect(response).to eq(3)
# end

it "index by ids" do
response = Doi.index_by_ids
expect(response).to eq(500)
it "import by ids" do
response = Doi.import_by_ids
expect(response).to eq(52)
end

it "index by id" do
response = Doi.index_by_id(id: doi.id)
it "import by id" do
response = Doi.import_by_id(id: doi.id)
expect(response).to eq(3)
end
end
Expand Down

0 comments on commit 712723d

Please sign in to comment.