Sha256: 6cae5640c6af82c5607984677909facd780b24f7ec6fa1b6a1588ea071e78032

Contents?: true

Size: 1.95 KB

Versions: 4

Compression:

Stored size: 1.95 KB

Contents

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

describe "Virility::PlusOne" do
  before(:each) do
    @url = "http://creativeallies.com"
  end
  
  describe "poll" do
    context "when there is not a valid result" do
      before(:each) do
        response = double("HTTParty::Response", :parsed_response => {"fake_return_value"=> "OICU812"})
        Virility::PlusOne.stub(:get).and_return(response)
        @virility = Virility::PlusOne.new(@url)
      end

      it_should_behave_like "no context results"
    end

    context "when there is no result" do
      before(:each) do
        response = double("HTTParty::Response")
        Virility::PlusOne.stub(:get).and_return(response)
        @virility = Virility::PlusOne.new(@url)
      end

      it_should_behave_like "no context results"
    end

    context "when there is a result but no specific hash value" do
      before(:each) do
        response = double("HTTParty::Response", :parsed_response => {})
        Virility::PlusOne.stub(:get).and_return(response)
        @virility = Virility::PlusOne.new(@url)
      end

      it_should_behave_like "no context results"
    end

    context "when there is a result but parsed_response is weird" do
      before(:each) do
        response = double("HTTParty::Response", :parsed_response => Object.new)
        Virility::PlusOne.stub(:get).and_return(response)
        @virility = Virility::PlusOne.new(@url)
      end

      it_should_behave_like "no context results"
    end

    context "when there is a valid result" do
      before(:each) do
        response = double("HTTParty::Response", :parsed_response => {"shares"=>"8"})
        Virility::PlusOne.stub(:get).and_return(response)
        @virility = Virility::PlusOne.new(@url)
      end

      it "should not raise an error" do
        lambda { @virility.poll }.should_not raise_error
      end

      it "should return 8 for the count" do
        @virility.count.should == 8
      end
    end
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
virility-0.1.4 spec/strategies/plus_one_spec.rb
virility-0.1.3 spec/strategies/plus_one_spec.rb
virility-0.1.2 spec/strategies/plus_one_spec.rb
virility-0.1.1 spec/strategies/plus_one_spec.rb