Sha256: 43226be041b47abdded79bb4aa5897fb46d172364e01339b9d45584baf768a47

Contents?: true

Size: 1.81 KB

Versions: 1

Compression:

Stored size: 1.81 KB

Contents

require 'spec_helper'

describe Invoker::Power::UrlRewriter do
  let(:rewriter) { Invoker::Power::UrlRewriter.new }

  context "matching domain part of incoming request" do
    before(:all) do
      @original_invoker_config = Invoker.config

      Invoker.config = mock
      Invoker.config.stubs(:tld).returns("test")
    end

    after(:all) do
      Invoker.config = @original_invoker_config
    end

    it "should match foo.test" do
      match = rewriter.extract_host_from_domain("foo.test")
      expect(match).to_not be_empty

      matching_string = match[0]
      expect(matching_string).to eq("foo")
    end

    it "should match foo.test:1080" do
      match = rewriter.extract_host_from_domain("foo.test:1080")
      expect(match).to_not be_empty

      matching_string = match[0]
      expect(matching_string).to eq("foo")
    end

    it "should match emacs.bar.test" do
      match = rewriter.extract_host_from_domain("emacs.bar.test")
      expect(match).to_not be_empty

      expect(match[0]).to eq("emacs.bar")
      expect(match[1]).to eq("bar")
    end

    it "should match hello-world.test" do
      match = rewriter.extract_host_from_domain("hello-world.test")
      expect(match).to_not be_nil

      expect(match[0]).to eq("hello-world")
    end

    context 'user sets up a custom top level domain' do
      before(:all) do
        @original_invoker_config = Invoker.config

        Invoker.config = mock
        Invoker.config.stubs(:tld).returns("local")
      end

      it 'should match domain part of incoming request correctly' do
        match = rewriter.extract_host_from_domain("foo.local")
        expect(match).to_not be_empty

        matching_string = match[0]
        expect(matching_string).to eq("foo")
      end

      after(:all) do
        Invoker.config = @original_invoker_config
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
invoker-1.5.6 spec/invoker/power/url_rewriter_spec.rb