Sha256: fd81f20d68e353c5c52ffa8b7554ea668d956af1e87a6fdf5da0718dd3a49608

Contents?: true

Size: 1.12 KB

Versions: 17

Compression:

Stored size: 1.12 KB

Contents

#
# This file is part of the ballast gem. Copyright (C) 2013 and above Shogun <shogun@cowtech.it>.
# Licensed under the MIT license, which can be found at http://www.opensource.org/licenses/mit-license.php.
#

require "spec_helper"

describe Ballast::RequestDomainMatcher do
  describe ".initialize" do
    it "should save the attributes" do
      block = Proc.new {}
      subject = Ballast::RequestDomainMatcher.new("A", "B", "C", &block)
      expect(subject.domains).to eq(["A"])
      expect(subject.replace_pattern).to eq("B")
      expect(subject.replace_string).to eq("C")
      expect(subject.replace_block).to be(block)
    end
  end

  describe "#matches?" do
    subject { Ballast::RequestDomainMatcher.new(["A", "ABB", "AC"], "B", "C") { |a| a * 2 } }

    it "should correctly match a request" do
      expect(subject.matches?(OpenStruct.new(host: "A"))).to be_true
      expect(subject.matches?(OpenStruct.new(host: "AB"))).to be_true
      subject.replace_block = nil
      expect(subject.matches?(OpenStruct.new(host: "AB"))).to be_true
      expect(subject.matches?(OpenStruct.new(host: "DD"))).to be_false
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
ballast-1.9.3 spec/ballast/request_domain_matcher_spec.rb
ballast-1.9.2 spec/ballast/request_domain_matcher_spec.rb
ballast-1.9.1 spec/ballast/request_domain_matcher_spec.rb
ballast-1.9.0 spec/ballast/request_domain_matcher_spec.rb
ballast-1.8.0 spec/ballast/request_domain_matcher_spec.rb
ballast-1.7.0 spec/ballast/request_domain_matcher_spec.rb
ballast-1.6.0 spec/ballast/request_domain_matcher_spec.rb
ballast-1.5.3 spec/ballast/request_domain_matcher_spec.rb
ballast-1.5.2 spec/ballast/request_domain_matcher_spec.rb
ballast-1.5.1 spec/ballast/request_domain_matcher_spec.rb
ballast-1.5.0 spec/ballast/request_domain_matcher_spec.rb
ballast-1.4.0 spec/ballast/request_domain_matcher_spec.rb
ballast-1.3.0 spec/ballast/request_domain_matcher_spec.rb
ballast-1.2.0 spec/ballast/request_domain_matcher_spec.rb
ballast-1.1.2 spec/ballast/request_domain_matcher_spec.rb
ballast-1.1.1 spec/ballast/request_domain_matcher_spec.rb
ballast-1.1.0 spec/ballast/request_domain_matcher_spec.rb