Sha256: c682a1ba73ffc28a99f0a0f1410577929f89ff6f20e6c299ab7a1c56fc690610

Contents?: true

Size: 1.4 KB

Versions: 48

Compression:

Stored size: 1.4 KB

Contents

require "spec_helper"

class TestEngine
  def self.===(uri)
    true
  end
end

describe Onebox::Matcher do

  describe "oneboxed" do

    describe "with a path" do
      let(:url) { "http://party.time.made.up-url.com/beep/boop" }
      let(:matcher) { Onebox::Matcher.new(url) }

      it "finds an engine" do
        matcher.stubs(:ordered_engines).returns([TestEngine])
        expect(matcher.oneboxed).not_to be_nil
      end
    end

    describe "without a path" do
      let(:url) { "http://party.time.made.up-url.com/" }
      let(:matcher) { Onebox::Matcher.new(url) }

      it "doesn't find an engine" do
        matcher.stubs(:ordered_engines).returns([TestEngine])
        expect(matcher.oneboxed).to be_nil
      end
    end

    describe "without a path but has a query string" do
      let(:url) { "http://party.time.made.up-url.com/?article_id=1234" }
      let(:matcher) { Onebox::Matcher.new(url) }

      it "it finds an engine" do
        matcher.stubs(:ordered_engines).returns([TestEngine])
        expect(matcher.oneboxed).not_to be_nil
      end
    end

    describe "without a path but has a fragment string" do
      let(:url) { "http://party.time.made.up-url.com/#article_id=1234" }
      let(:matcher) { Onebox::Matcher.new(url) }

      it "it finds an engine" do
        matcher.stubs(:ordered_engines).returns([TestEngine])
        expect(matcher.oneboxed).not_to be_nil
      end
    end

  end
end

Version data entries

48 entries across 48 versions & 1 rubygems

Version Path
onebox-1.5.25 spec/lib/onebox/matcher_spec.rb
onebox-1.5.24 spec/lib/onebox/matcher_spec.rb
onebox-1.5.23 spec/lib/onebox/matcher_spec.rb
onebox-1.5.22 spec/lib/onebox/matcher_spec.rb
onebox-1.5.21 spec/lib/onebox/matcher_spec.rb
onebox-1.5.20 spec/lib/onebox/matcher_spec.rb
onebox-1.5.19 spec/lib/onebox/matcher_spec.rb
onebox-1.5.18 spec/lib/onebox/matcher_spec.rb