From 712723d0d4286f6ee7f76bdbbb4ad694876d90b5 Mon Sep 17 00:00:00 2001 From: Martin Fenner Date: Sun, 9 Jun 2019 08:47:18 +0200 Subject: [PATCH] clean up tests for indexing. #288 --- spec/lib/tasks/doi_rake_spec.rb | 27 +++------------ spec/models/doi_spec.rb | 60 ++++----------------------------- 2 files changed, 10 insertions(+), 77 deletions(-) diff --git a/spec/lib/tasks/doi_rake_spec.rb b/spec/lib/tasks/doi_rake_spec.rb index 02a744e00..f154a1a0d 100644 --- a/spec/lib/tasks/doi_rake_spec.rb +++ b/spec/lib/tasks/doi_rake_spec.rb @@ -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) { "" } @@ -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 \ No newline at end of file diff --git a/spec/models/doi_spec.rb b/spec/models/doi_spec.rb index 6cb255a3b..f7bdf4bdd 100644 --- a/spec/models/doi_spec.rb +++ b/spec/models/doi_spec.rb @@ -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