spec/lib/onebox/engine/pubmed_onebox_spec.rb in onebox-1.8.1 vs spec/lib/onebox/engine/pubmed_onebox_spec.rb in onebox-1.8.2

- old
+ new

@@ -27,7 +27,53 @@ end it "has the URL to the resource" do expect(html).to include(link) end + + context "Pubmed electronic print" do + let(:link) { "http://www.ncbi.nlm.nih.gov/pubmed/24737116" } + let(:xml_link) { "http://www.ncbi.nlm.nih.gov/pubmed/24737116?report=xml&format=text" } + let(:html) { described_class.new(link).to_html } + + before do + fake(link, response("pubmed-electronic")) + fake(xml_link, response("pubmed-electronic-xml")) + end + + it "has the paper's title" do + expect(html).to include("Cushingoid facies on (18)F-FDG PET/CT.") + end + + it "has the paper's author" do + expect(html).to include("van Rheenen") + end + + it "has the paper's date" do + expect(html).to include("Jul 2014") + end + + it "has the URL to the resource" do + expect(html).to include(link) + end + end + + context "regex URI match" do + + it "matches on specific articles" do + expect(match("http://www.ncbi.nlm.nih.gov/pubmed/7288891")).to eq true + end + + it "does not match on search" do + expect(match("http://www.ncbi.nlm.nih.gov/pubmed/?term=rheenen+r")).to eq false + end + + it "does not match on the root" do + expect(match("http://www.ncbi.nlm.nih.gov/pubmed/")).to eq false + end + + def match(url) + Onebox::Engine::PubmedOnebox === URI(url) + end + end end