Sha256: bbf4d14da1f884c83fe434a8c922127d4056dc50eb3e240b5a6209e70b18fdaf
Contents?: true
Size: 1.42 KB
Versions: 5
Compression:
Stored size: 1.42 KB
Contents
require 'spec_helper' describe Blacklight::Oembed::EmbedController do routes { Blacklight::Oembed::Engine.routes } describe "show" do render_views before do Blacklight::Oembed::Engine.config.additional_params = %i[canvas_index suggested_search] end let :oembed_obj do double(html: "some-markup") end it "fetches oembed markup for a url" do allow(OEmbed::Providers).to receive(:get).with('http://some/uri', {}).and_return oembed_obj get :show, params: { url: 'http://some/uri' } json = JSON.parse(response.body) expect(json["html"]).to eq "some-markup" end it "gracefully fails to a view link" do get :show, params: { url: 'http://some/uri' } expect(response.status).to eq 400 json = JSON.parse(response.body) expect(json["html"]).to be_blank end it 'passes along configured additional keys' do allow(OEmbed::Providers).to receive(:get).with('http://some/uri', { canvas_index: '5' }).and_return oembed_obj get :show, params: { url: 'http://some/uri', canvas_index: '5' } expect(response.status).to eq 200 end it 'URI encodes data from additional keys' do allow(OEmbed::Providers).to receive(:get).with('http://some/uri', { suggested_search: 'ep%C3%A9e' }).and_return oembed_obj get :show, params: { url: 'http://some/uri', suggested_search: 'epée' } expect(response.status).to eq 200 end end end
Version data entries
5 entries across 5 versions & 1 rubygems