Sha256: ec1636555cd71b1e4d0c40ad5ec8c7e678100db5a2ae08097a320114da627c3f

Contents?: true

Size: 1.43 KB

Versions: 4

Compression:

Stored size: 1.43 KB

Contents

require File.expand_path(File.dirname(__FILE__) + '/spec_helper')

describe Sniffles do
  describe "#sniff", :vcr => { :cassette_name => "squidoo_com" } do
    let(:squidoo) { page_body("http://www.squidoo.com") }
    
    context "one sniffer" do
      it  { subject.sniff(squidoo, :mixpanel).should eq :mixpanel => { :found => true } }
    end
    
    context "using multiple sniffers" do
      it { subject.sniff(squidoo, :jquery, :mixpanel).should include(:jquery, :mixpanel) }
    end
    
    context "using groups" do
      it { subject.sniff(squidoo, :analytics).should include(:mixpanel, :google_analytics) }
    end
    
    context "w/o supplying groups or sniffers" do
      it { subject.sniff(squidoo).count.should eq SNIFFER_COUNT }
    end
    
    context "using a non-existent sniffer" do
      it "should raise an error" do
        expect { subject.sniff(squidoo, :fake_ass_sniffer) }.to raise_error(Sniffles::UnknownSniffer, "fake_ass_sniffer not found!")
      end
    end
  end
  
  describe "#group?" do
    context "group exists" do
      it { subject.group?(:cms).should be true }
    end
    
    context "group doesn't exist" do
      it { subject.group?(:wordpress).should be false }
    end
  end
  
  describe "#sniffer?" do
    context "sniffer exists" do
      it { subject.sniffer?(:wordpress).should be true }
    end
    
    context "sniffer doesn't exist" do
      it { subject.sniffer?(:cms).should be false }
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
sniffles-0.1.5 spec/sniffles_spec.rb
sniffles-0.1.4 spec/sniffles_spec.rb
sniffles-0.1.3 spec/sniffles_spec.rb
sniffles-0.1.2 spec/sniffles_spec.rb