activeforce 1.10.5 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -36,6 +36,7 @@ class Salesforce::Connection::SoapApiTest < ActiveSupport::TestCase
36
36
 
37
37
  def test_invoke_soap__not_login__success
38
38
  options = {
39
+ :endpoint_url => Salesforce::Config.login_url,
39
40
  :body => :soap_body,
40
41
  :other_option => 'foo'
41
42
  }
@@ -50,29 +51,31 @@ class Salesforce::Connection::SoapApiTest < ActiveSupport::TestCase
50
51
  }
51
52
 
52
53
  expected_result = result[:not_login_response][:result]
53
-
54
- soap_client_mock = mock
55
- Salesforce.connection.expects(:soap_client).with(options).returns(soap_client_mock)
54
+
55
+ # stub savon
56
+ stub_response = stub(:http => stub(:code => 200, :headers => {}, :cookies => []), :body => result)
57
+ stub_response.stubs(:kind_of?).returns(true)
58
+
59
+ Savon::Operation.any_instance.stubs(:create_response).returns(stub_response)
60
+
61
+ HTTPI.stubs(:post).with do |request, _|
62
+ assert_includes request.body, "xmlns:ns1=\"soap:enterprise:namespace\""
63
+ xml_doc = Nokogiri::XML(request.body)
64
+ assert_equal 'soap_body', xml_doc.xpath('//wsdl:notLogin/text()').to_s
65
+ assert_equal 'boyahh_session_id', xml_doc.xpath('//env:Header/ns1:SessionHeader/ns1:sessionId/text()').to_s
66
+ assert_equal '"notLogin"', request.headers['SOAPAction']
67
+ assert_equal Salesforce::Config.login_url, request.url.to_s
68
+ end.returns(stub_response)
56
69
 
57
70
  Salesforce::Config.stubs(:session_id).returns('boyahh_session_id')
58
71
  Salesforce::Config.stubs(:soap_enterprise_namespace).returns('soap:enterprise:namespace')
59
-
60
- soap_mock = mock
61
- soap_mock.expects(:body=).with(:soap_body)
62
- soap_mock.expects(:header=).with({ "ns1:SessionHeader" => { "ns1:sessionId" => 'boyahh_session_id' }})
63
-
64
-
65
- namespaces_mock = mock
66
- namespaces_mock.expects(:[]=).with("xmlns:ns1", 'soap:enterprise:namespace')
67
- soap_mock.expects(:namespaces).returns(namespaces_mock)
68
-
69
- soap_client_mock.expects(:request).with(:wsdl, :notLogin).yields(soap_mock).returns(mock(:to_hash => result))
70
72
 
71
73
  assert_equal expected_result, Salesforce.connection.send(:invoke_soap, :notLogin, options)
72
74
  end
73
75
 
74
76
  def test_invoke_soap__not_login__not_success
75
77
  options = {
78
+ :endpoint_url => Salesforce::Config.login_url,
76
79
  :body => :soap_body,
77
80
  :other_option => 'foo'
78
81
  }
@@ -85,23 +88,24 @@ class Salesforce::Connection::SoapApiTest < ActiveSupport::TestCase
85
88
  }
86
89
  }
87
90
  }
88
-
89
- soap_client_mock = mock
90
- Salesforce.connection.expects(:soap_client).with(options).returns(soap_client_mock)
91
+
92
+ # stub savon
93
+ stub_response = stub(:http => stub(:code => 200, :headers => {}, :cookies => []), :body => result)
94
+ stub_response.stubs(:kind_of?).returns(true)
95
+
96
+ Savon::Operation.any_instance.stubs(:create_response).returns(stub_response)
97
+
98
+ HTTPI.stubs(:post).with do |request, _|
99
+ assert_includes request.body, "xmlns:ns1=\"soap:enterprise:namespace\""
100
+ xml_doc = Nokogiri::XML(request.body)
101
+ assert_equal 'soap_body', xml_doc.xpath('//wsdl:notLogin/text()').to_s
102
+ assert_equal 'boyahh_session_id', xml_doc.xpath('//env:Header/ns1:SessionHeader/ns1:sessionId/text()').to_s
103
+ assert_equal '"notLogin"', request.headers['SOAPAction']
104
+ assert_equal Salesforce::Config.login_url, request.url.to_s
105
+ end.returns(stub_response)
91
106
 
92
107
  Salesforce::Config.stubs(:session_id).returns('boyahh_session_id')
93
108
  Salesforce::Config.stubs(:soap_enterprise_namespace).returns('soap:enterprise:namespace')
94
-
95
- soap_mock = mock
96
- soap_mock.expects(:body=).with(:soap_body)
97
- soap_mock.expects(:header=).with({ "ns1:SessionHeader" => { "ns1:sessionId" => 'boyahh_session_id' }})
98
-
99
-
100
- namespaces_mock = mock
101
- namespaces_mock.expects(:[]=).with("xmlns:ns1", 'soap:enterprise:namespace')
102
- soap_mock.expects(:namespaces).returns(namespaces_mock)
103
-
104
- soap_client_mock.expects(:request).with(:wsdl, :notLogin).yields(soap_mock).returns(mock(:to_hash => result))
105
109
 
106
110
  assert_raises Salesforce::Connection::SoapApi::Error do
107
111
  Salesforce.connection.send(:invoke_soap, :notLogin, options)
@@ -110,6 +114,7 @@ class Salesforce::Connection::SoapApiTest < ActiveSupport::TestCase
110
114
 
111
115
  def test_invoke_soap__login
112
116
  options = {
117
+ :endpoint_url => Salesforce::Config.login_url,
113
118
  :body => :soap_body,
114
119
  :other_option => 'foo'
115
120
  }
@@ -123,13 +128,21 @@ class Salesforce::Connection::SoapApiTest < ActiveSupport::TestCase
123
128
  }
124
129
 
125
130
  expected_result = result[:login_response][:result]
126
-
127
- soap_client_mock = mock
128
- Salesforce.connection.expects(:soap_client).with(options).returns(soap_client_mock)
129
131
 
130
- soap_mock = mock
131
- soap_mock.expects(:body=).with(:soap_body)
132
- soap_client_mock.expects(:request).with(:wsdl, :login).yields(soap_mock).returns(mock(:to_hash => result))
132
+ stub_response = stub(:http => stub(:code => 200, :headers => {}, :cookies => []), :body => result)
133
+ stub_response.stubs(:kind_of?).returns(true)
134
+
135
+ Savon::Operation.any_instance.stubs(:create_response).returns(stub_response)
136
+
137
+ HTTPI.stubs(:post).with do |request, _|
138
+ xml_doc = Nokogiri::XML(request.body)
139
+ assert_equal 'soap_body', xml_doc.xpath('//wsdl:login/text()').to_s
140
+ assert_equal '"login"', request.headers['SOAPAction']
141
+ assert_equal Salesforce::Config.login_url, request.url.to_s
142
+ end.returns(stub_response)
143
+
144
+ Salesforce::Config.stubs(:session_id).returns('boyahh_session_id')
145
+ Salesforce::Config.stubs(:soap_enterprise_namespace).returns('soap:enterprise:namespace')
133
146
 
134
147
  assert_equal expected_result, Salesforce.connection.send(:invoke_soap, :login, options)
135
148
  end
@@ -137,12 +150,12 @@ class Salesforce::Connection::SoapApiTest < ActiveSupport::TestCase
137
150
  def test_soap_client
138
151
  options = {
139
152
  :namespace => 'my:name:space',
140
- :endpoint_url => 'https://my.endpoint.url.com'
153
+ :endpoint => 'https://my.endpoint.url.com'
141
154
  }
142
155
 
143
156
  client = Salesforce.connection.send(:soap_client, options)
144
- assert_equal 'https://my.endpoint.url.com', client.wsdl.endpoint
145
- assert_equal 'my:name:space', client.wsdl.namespace
157
+ assert_equal 'https://my.endpoint.url.com', client.globals[:endpoint]
158
+ assert_equal 'my:name:space', client.globals[:namespace]
146
159
  end
147
160
 
148
- end
161
+ end
@@ -5,20 +5,20 @@ class Salesforce::ConnectionTest < ActiveSupport::TestCase
5
5
  Salesforce.connection.expects(:get).with("query.json?q=SELECT+Id+FROM+Account", :format => :json).returns({ "records" => [{ :record => 1, "attributes" => 'foo'}], "done" => true, "totalSize" => 1999})
6
6
  assert_equal [{ :record => 1 }], Salesforce.connection.soql("SELECT Id FROM Account")
7
7
  end
8
-
8
+
9
9
  def test_query__more_than_2000_records
10
- Salesforce.connection.expects(:get).with("query.json?q=SELECT+Id+FROM+Account", :format => :json).returns({
10
+ Salesforce.connection.expects(:get).with("query.json?q=SELECT+Id+FROM+Account", :format => :json).returns({
11
11
  "records" => [ { :record => 1, "attributes" => "foo" } ], "done" => false, "totalSize" => 4999, "nextRecordsUrl" =>"/services/data/v22.0/query/01g8000000L9FSmAAN-2000"})
12
-
13
- Salesforce.connection.expects(:get).with("/services/data/v22.0/query/01g8000000L9FSmAAN-2000.json", :format => :json).returns({
12
+
13
+ Salesforce.connection.expects(:get).with("/services/data/v22.0/query/01g8000000L9FSmAAN-2000.json", :format => :json).returns({
14
14
  "records" => [ { :record => 2, "attributes" => "foo" } ], "done" => false, "totalSize" => 4999, "nextRecordsUrl" =>"/services/data/v22.0/query/01g8000000L9FSmAAN-4000"})
15
15
 
16
- Salesforce.connection.expects(:get).with("/services/data/v22.0/query/01g8000000L9FSmAAN-4000.json", :format => :json).returns({
16
+ Salesforce.connection.expects(:get).with("/services/data/v22.0/query/01g8000000L9FSmAAN-4000.json", :format => :json).returns({
17
17
  "records" => [ { :record => 3, "attributes" => "foo" } ], "done" => true, "totalSize" => 4999})
18
-
18
+
19
19
  assert_equal [{ :record => 1}, { :record => 2}, { :record => 3}], Salesforce.connection.soql("SELECT Id FROM Account")
20
20
  end
21
-
21
+
22
22
  def test_as_logged_in_user__login_succeeded__calls_block
23
23
  Salesforce::Authentication.expects(:session_id)
24
24
  results = Salesforce.connection.as_logged_in_user do
@@ -26,12 +26,12 @@ class Salesforce::ConnectionTest < ActiveSupport::TestCase
26
26
  end
27
27
  assert_equal :results, results
28
28
  end
29
-
29
+
30
30
  def test_as_logged_in_user__logged_out__recovers
31
31
  flag = nil
32
32
  Salesforce::Authentication.expects(:session_id).twice
33
33
  Salesforce::Authentication.expects(:logout)
34
- error = RestClient::Unauthorized.new
34
+ error = RestClient::Request::Unauthorized.new
35
35
  results = Salesforce.connection.as_logged_in_user do
36
36
  unless flag
37
37
  flag = true
@@ -41,32 +41,32 @@ class Salesforce::ConnectionTest < ActiveSupport::TestCase
41
41
  end
42
42
  assert_equal :results, results
43
43
  end
44
-
44
+
45
45
  def test_as_logged_in_user__authorization_failure
46
46
  flag = nil
47
47
  Salesforce::Authentication.expects(:session_id).times(2)
48
48
  Salesforce::Authentication.expects(:logout)
49
- error = RestClient::Unauthorized.new
50
- assert_raises RestClient::Unauthorized do
49
+ error = RestClient::Request::Unauthorized.new
50
+ assert_raises RestClient::Request::Unauthorized do
51
51
  Salesforce.connection.as_logged_in_user do
52
52
  raise error
53
53
  end
54
54
  end
55
55
  end
56
-
56
+
57
57
  def test_as_logged_in_user__invalid_username_password__recovers
58
58
  on_login_failure_called = false
59
59
 
60
- Salesforce.configure do
60
+ Salesforce.configure do
61
61
  on_login_failure { on_login_failure_called = true }
62
62
  end
63
-
63
+
64
64
  xml = <<-XML
65
65
  <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault xmlns:fns="http://fault.api.zuora.com/"><faultcode>sf:INVALID_LOGIN</faultcode><faultstring>INVALID_LOGIN: Invalid username, password, security token; or user locked out.</faultstring><detail><fns:LoginFault><fns:FaultCode>INVALID_LOGIN</fns:FaultCode><fns:FaultMessage>Invalid username, password, security token; or user locked out.</fns:FaultMessage></fns:LoginFault></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>
66
66
  XML
67
67
 
68
- error = Savon::SOAP::Fault.new(stub(:body => xml))
69
-
68
+ error = Savon::SOAPFault.new(stub(:body => xml), Nori.new, xml)
69
+
70
70
  flag = nil
71
71
  Salesforce::Authentication.expects(:session_id).twice
72
72
  Salesforce::Authentication.expects(:logout)
@@ -77,29 +77,29 @@ class Salesforce::ConnectionTest < ActiveSupport::TestCase
77
77
  end
78
78
  :results
79
79
  end
80
-
80
+
81
81
  assert_equal :results, results
82
82
  assert on_login_failure_called, "Salesforce::Config.on_login_failure was not called upon login failure"
83
83
  end
84
-
84
+
85
85
  def test_as_logged_in_user__invalid_username_password__doesnt_recover
86
86
  on_login_failure_called = 0
87
87
 
88
- Salesforce.configure do
88
+ Salesforce.configure do
89
89
  on_login_failure { on_login_failure_called += 1 }
90
90
  end
91
-
91
+
92
92
  xml = <<-XML
93
93
  <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault xmlns:fns="http://fault.api.zuora.com/"><faultcode>sf:INVALID_LOGIN</faultcode><faultstring>INVALID_LOGIN: Invalid username, password, security token; or user locked out.</faultstring><detail><fns:LoginFault><fns:FaultCode>INVALID_LOGIN</fns:FaultCode><fns:FaultMessage>Invalid username, password, security token; or user locked out.</fns:FaultMessage></fns:LoginFault></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>
94
94
  XML
95
95
 
96
- error = Savon::SOAP::Fault.new(stub(:body => xml))
97
-
96
+ error = Savon::SOAPFault.new(stub(:body => xml), Nori.new, xml)
97
+
98
98
  flag = nil
99
99
  Salesforce::Authentication.expects(:session_id).twice
100
100
  Salesforce::Authentication.expects(:logout)
101
-
102
- assert_raises Savon::SOAP::Fault do
101
+
102
+ assert_raises Savon::SOAPFault do
103
103
  Salesforce.connection.as_logged_in_user do
104
104
  raise error
105
105
  end
@@ -107,14 +107,14 @@ class Salesforce::ConnectionTest < ActiveSupport::TestCase
107
107
 
108
108
  assert_equal 1, on_login_failure_called, "Salesforce::Config.on_login_failure was not called upon login failure"
109
109
  end
110
-
110
+
111
111
  def test_as_logged_in_user__invalid_username_password__recovers__no_on_login_failure_hook
112
112
  xml = <<-XML
113
113
  <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault xmlns:fns="http://fault.api.zuora.com/"><faultcode>sf:INVALID_LOGIN</faultcode><faultstring>INVALID_LOGIN: Invalid username, password, security token; or user locked out.</faultstring><detail><fns:LoginFault><fns:FaultCode>INVALID_LOGIN</fns:FaultCode><fns:FaultMessage>Invalid username, password, security token; or user locked out.</fns:FaultMessage></fns:LoginFault></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>
114
114
  XML
115
115
 
116
- error = Savon::SOAP::Fault.new(stub(:body => xml))
117
-
116
+ error = Savon::SOAPFault.new(stub(:body => xml), Nori.new, xml)
117
+
118
118
  flag = nil
119
119
  Salesforce::Authentication.expects(:session_id).twice
120
120
  Salesforce::Authentication.expects(:logout)
@@ -125,15 +125,15 @@ class Salesforce::ConnectionTest < ActiveSupport::TestCase
125
125
  end
126
126
  :results
127
127
  end
128
-
128
+
129
129
  assert_equal :results, results
130
130
  end
131
-
131
+
132
132
  def test_as_logged_in_user__other_failure
133
133
  Salesforce::Authentication.stubs(:session_id)
134
134
  Salesforce::Authentication.stubs(:logout)
135
135
 
136
- expects(:my_method).twice.raises(RestClient::Unauthorized.new).then.raises(StandardError.new("some other error"))
136
+ expects(:my_method).twice.raises(RestClient::Request::Unauthorized.new).then.raises(StandardError.new("some other error"))
137
137
 
138
138
  assert_raises StandardError do
139
139
  Salesforce.connection.as_logged_in_user do
@@ -141,14 +141,8 @@ class Salesforce::ConnectionTest < ActiveSupport::TestCase
141
141
  end
142
142
  end
143
143
  end
144
-
144
+
145
145
  def test_convert
146
146
  assert_equal "str", Salesforce.connection.convert("str", {})
147
147
  end
148
-
149
- private
150
-
151
- def my_method
152
- # Defined so it can be stubbed in a test
153
- end
154
148
  end
data/test/test_helper.rb CHANGED
@@ -15,14 +15,14 @@ require 'activeforce'
15
15
  Dir.glob(File.expand_path('../../app/models/salesforce/**.rb', __FILE__)).each { |file| require(file) }
16
16
 
17
17
  require 'mocha/setup'
18
- Mocha::Configuration.prevent(:stubbing_non_existent_method)
18
+
19
19
 
20
20
  Time.zone = 'America/Los_Angeles'
21
21
 
22
22
  class ActiveSupport::TestCase
23
23
  setup :clean_configuration
24
24
  setup :stub_soap
25
-
25
+
26
26
  class ::Salesforce::BulkTable < Salesforce::Base
27
27
  self.custom_object = true
28
28
  end
@@ -30,50 +30,50 @@ class ActiveSupport::TestCase
30
30
  def clean_configuration
31
31
  Salesforce::Config.instance_variable_set(:@instance, nil)
32
32
  end
33
-
33
+
34
34
  def stub_soap
35
- Mocha::Configuration.allow(:stubbing_non_existent_method) do
36
- Savon::Client.any_instance.stubs(:request)
37
- end
35
+ Savon::Client.any_instance.stubs(:request)
38
36
  end
39
-
37
+
40
38
  def clear_columns_for_bulk_table
41
39
  Salesforce::BulkTable.cached_columns = nil
42
40
  end
43
-
41
+
44
42
  def clear_columns_for_account
45
43
  Salesforce::Account.cached_columns = nil
46
44
  end
47
-
45
+
48
46
  def setup_columns_for_bulk_table
49
47
  clear_columns_for_bulk_table
50
- columns_hash = [
51
- { "name" => "Id", "type" => "id", "createable" => false, "updateable" => false},
52
- { "name" => "Account__c", "type" => "reference", "createable" => true, "updateable" => false, "custom" => true },
48
+ columns_hash = [
49
+ { "name" => "Id", "type" => "id", "createable" => false, "updateable" => false},
50
+ { "name" => "Account__c", "type" => "reference", "createable" => true, "updateable" => false, "custom" => true },
53
51
  { "name" => "Car__c", "type" => "reference", "createable" => false, "updateable" => true, "custom" => true},
54
52
  { "name" => "Name__c", "type" => "string", "createable" => true, "updateable" => true, "custom" => true},
55
- { "name" => "dob__c", "type" => "date", "createable" => true, "updateable" => true, "custom" => true}
53
+ { "name" => "dob__c", "type" => "date", "createable" => true, "updateable" => true, "custom" => true}
56
54
  ]
57
-
55
+
58
56
  Salesforce.connection.stubs(:fields).with("BulkTable__c").returns(columns_hash).twice
59
57
  columns = Salesforce::Columns.new("BulkTable__c")
60
58
  assert_equal columns, Salesforce::BulkTable.columns
61
59
  end
62
-
60
+
63
61
  def setup_columns_for_account
64
62
  clear_columns_for_account
65
- columns_hash = [
66
- { "name" => "Id", "type" => "id", "createable" => false, "updateable" => false},
67
- { "name" => "Name", "type" => "string", "createable" => true, "updateable" => true},
68
- { "name" => "Type", "type" => "string", "createable" => true, "updateable" => true},
69
- { "name" => "Address", "type" => "string", "createable" => true, "updateable" => true},
70
- { "name" => "City", "type" => "string", "createable" => true, "updateable" => true},
63
+ columns_hash = [
64
+ { "name" => "Id", "type" => "id", "createable" => false, "updateable" => false},
65
+ { "name" => "Name", "type" => "string", "createable" => true, "updateable" => true},
66
+ { "name" => "Type", "type" => "string", "createable" => true, "updateable" => true},
67
+ { "name" => "Address", "type" => "string", "createable" => true, "updateable" => true},
68
+ { "name" => "City", "type" => "string", "createable" => true, "updateable" => true},
71
69
  { "name" => "State", "type" => "string", "createable" => true, "updateable" => true},
72
70
  { "name" => "Number", "type" => "string", "createable" => true, "updateable" => false}
73
71
  ]
74
-
72
+
75
73
  Salesforce.connection.stubs(:fields).with("Account").returns(columns_hash).twice
76
74
  columns = Salesforce::Columns.new("Account")
77
75
  assert_equal columns, Salesforce::Account.columns
78
76
  end
77
+
78
+
79
79
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activeforce
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.5
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tushar Ranka
@@ -17,34 +17,34 @@ dependencies:
17
17
  requirements:
18
18
  - - ">="
19
19
  - !ruby/object:Gem::Version
20
- version: '4.2'
20
+ version: '4.0'
21
21
  - - "<"
22
22
  - !ruby/object:Gem::Version
23
- version: '6.1'
23
+ version: '5.0'
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
28
  - - ">="
29
29
  - !ruby/object:Gem::Version
30
- version: '4.2'
30
+ version: '4.0'
31
31
  - - "<"
32
32
  - !ruby/object:Gem::Version
33
- version: '6.1'
33
+ version: '5.0'
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: savon
36
36
  requirement: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.0'
40
+ version: '2.11'
41
41
  type: :runtime
42
42
  prerelease: false
43
43
  version_requirements: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.0'
47
+ version: '2.11'
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: blockenspiel
50
50
  requirement: !ruby/object:Gem::Requirement
@@ -63,14 +63,20 @@ dependencies:
63
63
  name: rest-client
64
64
  requirement: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - - "<"
67
70
  - !ruby/object:Gem::Version
68
71
  version: '2.0'
69
72
  type: :runtime
70
73
  prerelease: false
71
74
  version_requirements: !ruby/object:Gem::Requirement
72
75
  requirements:
73
- - - "~>"
76
+ - - ">="
77
+ - !ruby/object:Gem::Version
78
+ version: '0'
79
+ - - "<"
74
80
  - !ruby/object:Gem::Version
75
81
  version: '2.0'
76
82
  - !ruby/object:Gem::Dependency
@@ -90,6 +96,7 @@ dependencies:
90
96
  description: " Activeforce provides a simple to use and extend interface to Salesforce
91
97
  using the REST API"
92
98
  email:
99
+ - tusharranka@gmail.com
93
100
  - andrew.mutz@appfolio.com
94
101
  executables: []
95
102
  extensions: []
@@ -152,9 +159,9 @@ files:
152
159
  - app/models/salesforce/user.rb
153
160
  - app/models/salesforce/user_role.rb
154
161
  - app/models/salesforce/vote.rb
155
- - gemfiles/5.0.gemfile
156
- - gemfiles/5.2.gemfile
157
- - gemfiles/6.0.gemfile
162
+ - gemfiles/4.0.gemfile
163
+ - gemfiles/4.1.gemfile
164
+ - gemfiles/4.2.gemfile
158
165
  - lib/activeforce.rb
159
166
  - lib/activeforce/version.rb
160
167
  - lib/ruby_187_range_extension.rb
@@ -202,14 +209,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
202
209
  requirements:
203
210
  - - ">="
204
211
  - !ruby/object:Gem::Version
205
- version: '2.3'
212
+ version: '2.0'
206
213
  required_rubygems_version: !ruby/object:Gem::Requirement
207
214
  requirements:
208
215
  - - ">="
209
216
  - !ruby/object:Gem::Version
210
217
  version: '0'
211
218
  requirements: []
212
- rubygems_version: 3.0.3
219
+ rubyforge_project:
220
+ rubygems_version: 2.5.1
213
221
  signing_key:
214
222
  specification_version: 4
215
223
  summary: A Simple gem to interact with the Salesforce REST API