Sha256: 11bce98e03b0cb2f540df66895f44a4e9e95ff40490105ad48908014dfad9737

Contents?: true

Size: 1.55 KB

Versions: 10

Compression:

Stored size: 1.55 KB

Contents

# This is for testing the xml syntax given to the remote objects
# Actual response tests (with fixtures) should be done in the 
# Entity or Asset spec's

shared_examples_for "class level delegation of remote operations for" do |remote_group|
  
  before do
    @remote_group = remote_group
  end
  
  let(:email) { 'test@email.com' }
  
  let(:dynamic_key) { ("dynamic_#{remote_group}".to_sym) }
  let(:field_key) { "#{remote_group}_fields".to_sym }

  group_delegation = Eloqua::Api::Service.group_methods
  type_delegation = Eloqua::Api::Service.type_methods
  group_type_delegation = Eloqua::Api::Service.group_type_methods

  group_delegation.each do |method|
    context "#self.#{method}" do
      it "should delegate #{method} to Eloqua::Api::Service with group name" do
        flexmock(Eloqua::Api::Service).should_receive(method).\
            with(subject.remote_group).once
        subject.send(method)
      end
    end
  end

  group_type_delegation.each do |method|
    context "#self.#{method}" do
      it "should delegate #{method} to Eloqua::Api::Service with group name" do
        flexmock(Eloqua::Api::Service).should_receive(method).\
            with(subject.remote_group, subject.remote_type).once
        subject.send(method)
      end
    end
  end

  type_delegation.each do |method|
    context "#self.#{method}" do
      it "should delegate #{method} to Eloqua::Api::Service with group name" do
        flexmock(Eloqua::Api::Service).should_receive(method).\
            with(subject.remote_type).once
        subject.send(method)
      end
    end
  end

end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
eloqua-1.2.4 spec/shared/class_to_api_delegation.rb
eloqua-1.2.3 spec/shared/class_to_api_delegation.rb
eloqua-1.2.2 spec/shared/class_to_api_delegation.rb
eloqua-1.2.1 spec/shared/class_to_api_delegation.rb
eloqua-1.2.0 spec/shared/class_to_api_delegation.rb
eloqua-1.1.4 spec/shared/class_to_api_delegation.rb
eloqua-1.1.3 spec/shared/class_to_api_delegation.rb
eloqua-1.1.2 spec/shared/class_to_api_delegation.rb
eloqua-1.1.1 spec/shared/class_to_api_delegation.rb
eloqua-1.1.0 spec/shared/class_to_api_delegation.rb