Sha256: d60e1c522ab42a286c9c4d7f91615c9f3014fb623f18f07fb1eb03dce56df888

Contents?: true

Size: 1.46 KB

Versions: 2

Compression:

Stored size: 1.46 KB

Contents

require 'spec_helper'

describe ShareChecker do
  it "should be valid" do
    ShareChecker.should be_a(Module)
  end
  
  context "providers" do
    it "should return provider class" do
      ShareChecker::Providers.get("facebook").should == ShareChecker::Providers::Facebook
      ShareChecker::Providers.get("twitter").should == ShareChecker::Providers::Twitter
    end
    
    it "should return full list of avariable providers" do
      ShareChecker::Providers.avariable.should == [:facebook, :odnoklassniki, :tweetracker, :twitter, :vkontakte]
    end
    
    it "should get google search page" do
      body = ShareChecker::Provider.get("http://www.google.com/")
      body.should include("<title>Google</title>")
    end
  end
  
  context "setup" do
    before(:each) do
      ShareChecker.setup do |config|
        config.vkontakte = { :app_id => 123456 } 
        config.facebook = { :some_param => 'test' }
      end
    end
    
    it "should set provider options" do
      ShareChecker.provider("vkontakte", "test").app_id.should == 123456
      ShareChecker.provider("facebook", "test").some_param.should == 'test'
    end
    
    it "should overwritte default options" do
      ShareChecker.provider("vkontakte", "test", :app_id => 'new_app').app_id.should == 'new_app'
    end
    
    it "should raise error on not exists option" do
      lambda {
        ShareChecker.provider("vkontakte", "test").some_param
      }.should raise_error(StandardError)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
share_checker-0.1.7 spec/share_checker_spec.rb
share_checker-0.1.6 spec/share_checker_spec.rb