Sha256: 9e18f2863f6f182538fbfa97ed880530073939dac3612d710185a90b7894c06b

Contents?: true

Size: 652 Bytes

Versions: 11

Compression:

Stored size: 652 Bytes

Contents

require 'singleton'

class IntegrationTest
  include Singleton
  
  attr_accessor :enabled
  
  def initialize
    enabled = false
    clear_mocks
  end
  
  def clear_mocks
    @mock = {}
  end
  
  def mock provider, mock
    @mock[provider.to_sym] = mock
  end
  
  def mock_authorization_from_user provider
    [302, {"Content-Type" => "application/x-www-form-urlencoded", "location" => provider.redirect_path}, []]
  end
  
  def mock_fetch_contacts provider
    result = @mock[provider.class_name.to_sym] || []
    if result.is_a? Array
      result
    elsif result.is_a? Hash
      [result]
    else
      raise result.to_s
    end
  end
  
end

Version data entries

11 entries across 11 versions & 2 rubygems

Version Path
omnigroupcontacts-0.3.11 lib/omnigroupcontacts/integration_test.rb
omnicontacts-0.3.7 lib/omnicontacts/integration_test.rb
omnicontacts-0.3.6 lib/omnicontacts/integration_test.rb
omnicontacts-0.3.5 lib/omnicontacts/integration_test.rb
omnicontacts-0.3.4 lib/omnicontacts/integration_test.rb
omnicontacts-0.3.3 lib/omnicontacts/integration_test.rb
omnicontacts-0.3.2 lib/omnicontacts/integration_test.rb
omnicontacts-0.3.1 lib/omnicontacts/integration_test.rb
omnicontacts-0.3.0 lib/omnicontacts/integration_test.rb
omnicontacts-0.2.5 lib/omnicontacts/integration_test.rb
omnicontacts-0.2.4 lib/omnicontacts/integration_test.rb