28 lines
640 B
Crystal
28 lines
640 B
Crystal
require "../spec_helper"
|
|
|
|
include Nodes
|
|
|
|
describe IFrameMediaResolver do
|
|
around_each do |example|
|
|
original_client = IFrameMediaResolver.http_client
|
|
IFrameMediaResolver.http_client = FakeMediumClient
|
|
example.run
|
|
IFrameMediaResolver.http_client = original_client
|
|
end
|
|
|
|
it "returns a url of the embedded page" do
|
|
iframe = PostResponse::IFrame.from_json <<-JSON
|
|
{
|
|
"mediaResource": {
|
|
"id": "d4515fff7ecd02786e75fc8997c94bbf"
|
|
}
|
|
}
|
|
JSON
|
|
resolver = IFrameMediaResolver.new(iframe: iframe)
|
|
|
|
result = resolver.fetch_href
|
|
|
|
result.should eq("https://example.com")
|
|
end
|
|
end
|