discourse/spec/lib/onebox/open_graph_spec.rb
David Taylor c9dab6fd08
DEV: Automatically require 'rails_helper' in all specs (#16077)
It's very easy to forget to add `require 'rails_helper'` at the top of every core/plugin spec file, and omissions can cause some very confusing/sporadic errors.

By setting this flag in `.rspec`, we can remove the need for `require 'rails_helper'` entirely.
2022-03-01 17:50:50 +00:00

20 lines
1022 B
Ruby
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# frozen_string_literal: true
require "onebox/open_graph"
describe Onebox::OpenGraph do
it "excludes html tags in title" do
doc = Nokogiri::HTML('<html><title>Did&#8217; you &lt;b&gt;miss me&lt;/b&gt;? - Album on Imgur</title><meta name="og:description" content="Post with 7 votes and 151 views. Shared by vinothkannans. Did you &lt;b&gt;miss me&lt;/b&gt;?" /><meta property="og:image" content="https://i.imgur.com/j1CNCZY.gif?noredirect" /></html>')
og = described_class.new(doc)
expect(og.title).to eq("Did you miss me? - Album on Imgur")
expect(og.description).to eq("Post with 7 votes and 151 views. Shared by vinothkannans. Did you miss me?")
expect(og.image).to eq("https://i.imgur.com/j1CNCZY.gif?noredirect")
end
it "correctly normalizes the url properties" do
doc = Nokogiri::HTML("<html><meta property=\"og:image\" content=\"http://test.com/test'ing.mp3\" /></html>")
og = described_class.new(doc)
expect(og.image).to eq("http://test.com/test&apos;ing.mp3")
end
end