mirror of
https://github.com/discourse/discourse.git
synced 2025-06-01 02:04:53 +08:00
FEATURE: Support Spotify Onebox (#27540)
This commit is contained in:

committed by
GitHub

parent
604ca4d46e
commit
b2a9676f0b
39
spec/lib/onebox/engine/spotify_onebox_spec.rb
Normal file
39
spec/lib/onebox/engine/spotify_onebox_spec.rb
Normal file
@ -0,0 +1,39 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
RSpec.describe Onebox::Engine::SpotifyOnebox do
|
||||
let(:link) { "https://open.spotify.com/show/5eXZwvvxt3K2dxha3BSaAe" }
|
||||
let(:api_link) do
|
||||
"https://open.spotify.com/oembed?url=https%3A%2F%2Fopen.spotify.com%2Fshow%2F5eXZwvvxt3K2dxha3BSaAe"
|
||||
end
|
||||
let(:html) { described_class.new(link).to_html }
|
||||
let(:placeholder_html) { described_class.new(link).placeholder_html }
|
||||
|
||||
before { stub_request(:get, api_link).to_return(status: 200, body: onebox_response("spotify")) }
|
||||
|
||||
describe "#placeholder_html" do
|
||||
it "returns an image as the placeholder" do
|
||||
expect(placeholder_html).to include(
|
||||
"https://i.scdn.co/image/ab67656300005f1f3ed9a52396207aad8858a28a",
|
||||
)
|
||||
end
|
||||
|
||||
it "has a fixed height" do
|
||||
expect(placeholder_html).to include("height='300'")
|
||||
end
|
||||
end
|
||||
|
||||
describe "#to_html" do
|
||||
it "returns iframe embed" do
|
||||
expect(html).to include(URI(link).path)
|
||||
expect(html).to include("iframe")
|
||||
end
|
||||
|
||||
it "has object id" do
|
||||
expect(html).to include("5eXZwvvxt3K2dxha3BSaAe")
|
||||
end
|
||||
|
||||
it "has the a fixed height" do
|
||||
expect(html).to include('height="152"')
|
||||
end
|
||||
end
|
||||
end
|
Reference in New Issue
Block a user