activeforce 4.0.0 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 638019df91388b0fa0ea6888da2c2be2a9ec0f28ecc3e2c215fc667b2d3c32e8
4
- data.tar.gz: 27b89bd87142b6261c75edca39b63e24cc529d808724621a15ed91941d37cdc0
3
+ metadata.gz: 42a127fc32c1c102c7fa13e47ba09eadf1239bd2575fb3d4f36817c579616324
4
+ data.tar.gz: d8394329d3921819560b455f50ccaf462abb8fbf5c2f7a2029a69fb14d6cb73d
5
5
  SHA512:
6
- metadata.gz: 84130cde3f4eb3486d3109cb374f9b7e0df9a0e4972e8488a87ab5dbd2bacfad73d1f2c3986ecac3b4ee3fc90de7a2f170f3c6f6a55827d18e82cc6ca093a821
7
- data.tar.gz: cbd6b214d2041c33fa7a314a0a1070df1eef66cf296a525ffe9ab981941bbba5889a51afc278458c5837d24fe3844a6572a449587f963a579d9658b015c32c4a
6
+ metadata.gz: bcf5b76b42e6cd1c0f1b2e84a9e3402c4d33fb48ac70ca6922f55ea557b6aaefa9d951cb8db576092a495748f3e4a5d82d40b6c8999155d71b258176549bd245
7
+ data.tar.gz: fe93d1752de40d32df45cf65fc54d118d8f2b7bdb5e2205414935d58ef84e1be667d37878abd92a25da883ed2dabe428e4862e50dca696bcb1af8e563fb8b6c4
@@ -12,11 +12,8 @@ matrix:
12
12
  exclude:
13
13
  - rvm: 2.3.3
14
14
  gemfile: gemfiles/6.0.gemfile
15
- - rvm: ruby-head
16
- gemfile: gemfiles/4.2.gemfile
17
15
 
18
16
  gemfile:
19
- - gemfiles/4.2.gemfile
20
17
  - gemfiles/5.0.gemfile
21
18
  - gemfiles/5.2.gemfile
22
19
  - gemfiles/6.0.gemfile
data/Appraisals CHANGED
@@ -1,7 +1,3 @@
1
- appraise "4.2" do
2
- gem "rails", "~> 4.2.0"
3
- end
4
-
5
1
  appraise "5.0" do
6
2
  gem "rails", "~> 5.0.0"
7
3
  end
@@ -25,6 +25,6 @@ Gem::Specification.new do |s|
25
25
  s.add_dependency(%q<rails>, [">= 4.2", "< 6.1"])
26
26
  s.add_dependency(%q<savon>, ["~> 2.11"])
27
27
  s.add_dependency(%q<blockenspiel>, [">= 0"])
28
- s.add_dependency(%q<rest-client>, [">= 0", '< 2.0'])
28
+ s.add_dependency(%q<rest-client>, ["~> 2.0"])
29
29
  end
30
30
 
@@ -1,3 +1,3 @@
1
1
  module Activeforce
2
- VERSION = '4.0.0'.freeze
2
+ VERSION = '5.0.0'.freeze
3
3
  end
@@ -11,13 +11,13 @@ module Salesforce
11
11
  include HttpMethods
12
12
  include Conversion
13
13
  include Async
14
-
14
+
15
15
  def self.as_logged_in_user(&block)
16
- count = 0
16
+ count = 0
17
17
  begin
18
18
  Salesforce::Authentication.session_id
19
19
  block.call
20
- rescue RestClient::Request::Unauthorized, Savon::SOAPFault => e
20
+ rescue RestClient::Unauthorized, Savon::SOAPFault => e
21
21
  if count < 1 && (e.message.downcase.include?("unauthorized") || e.message.downcase.include?("invalid_login"))
22
22
  count += 1
23
23
  Salesforce::Config.on_login_failure
@@ -27,7 +27,7 @@ module Salesforce
27
27
  raise e
28
28
  end
29
29
  end
30
-
30
+
31
31
  end
32
32
  end
33
33
  end
@@ -13,14 +13,14 @@ class Salesforce.connection::AsyncTest < ActiveSupport::TestCase
13
13
  rescue => e
14
14
  raise e
15
15
  end
16
-
16
+
17
17
  def test_async_post__json
18
18
  Salesforce::Authentication.stubs(:session_id).returns('session_id')
19
19
  http_body = stub(:body => { :result => 'foo' }.to_json)
20
20
  RestClient.expects(:post).with('https://awesome-2000.something.salesforce.com/services/async/22.0/path', :body, {'X-SFDC-Session' => 'session_id', :content_type => 'application/json'}).returns(http_body)
21
21
  assert_equal({'result' => 'foo'}, Salesforce.connection.async_post('path', :body, :format => :json))
22
22
  end
23
-
23
+
24
24
  def test_async_post__404_error_json
25
25
  Salesforce::Authentication.stubs(:session_id).returns('session_id')
26
26
  error = RestClient::BadRequest.new
@@ -34,13 +34,13 @@ class Salesforce.connection::AsyncTest < ActiveSupport::TestCase
34
34
  assert_equal "MALFORMED_QUERY: someproblem while accessing https://awesome-2000.something.salesforce.com/services/async/22.0/path", e.message
35
35
  end
36
36
  end
37
-
37
+
38
38
  def test_async_post__404_error_xml
39
39
  Salesforce::Authentication.stubs(:session_id).returns('session_id')
40
40
  error = RestClient::BadRequest.new
41
41
  error.stubs(:http_body).returns("<?xml version=\"1.0\" encoding=\"UTF-8\"?><Errors><Error><errorCode>MALFORMED_QUERY</errorCode><message>someproblem</message></Error></Errors>" )
42
42
  RestClient.expects(:post).with('https://awesome-2000.something.salesforce.com/services/async/22.0/path', :body, {'X-SFDC-Session' => 'session_id', :content_type => 'application/xml'}).raises(error)
43
-
43
+
44
44
  begin
45
45
  Salesforce.connection.async_post('path', :body, :format => :xml)
46
46
  assert false, "Shouldn't have gotten here"
@@ -49,7 +49,7 @@ class Salesforce.connection::AsyncTest < ActiveSupport::TestCase
49
49
  assert_equal "MALFORMED_QUERY: someproblem while accessing https://awesome-2000.something.salesforce.com/services/async/22.0/path", e.message
50
50
  end
51
51
  end
52
-
52
+
53
53
  def test_async_post__400_error_json
54
54
  Salesforce::Authentication.stubs(:session_id).returns('session_id')
55
55
  error = RestClient::ResourceNotFound.new
@@ -63,13 +63,13 @@ class Salesforce.connection::AsyncTest < ActiveSupport::TestCase
63
63
  assert_equal "MALFORMED_QUERY: someproblem while accessing https://awesome-2000.something.salesforce.com/services/async/22.0/path", e.message
64
64
  end
65
65
  end
66
-
66
+
67
67
  def test_async_post__400_error_xml
68
68
  Salesforce::Authentication.stubs(:session_id).returns('session_id')
69
69
  error = RestClient::ResourceNotFound.new
70
70
  error.stubs(:http_body).returns("<?xml version=\"1.0\" encoding=\"UTF-8\"?><Errors><Error><errorCode>MALFORMED_QUERY</errorCode><message>someproblem</message></Error></Errors>" )
71
71
  RestClient.expects(:post).with('https://awesome-2000.something.salesforce.com/services/async/22.0/path', :body, {'X-SFDC-Session' => 'session_id', :content_type => 'application/xml'}).raises(error)
72
-
72
+
73
73
  begin
74
74
  Salesforce.connection.async_post('path', :body, :format => :xml)
75
75
  assert false, "Shouldn't have gotten here"
@@ -78,27 +78,27 @@ class Salesforce.connection::AsyncTest < ActiveSupport::TestCase
78
78
  assert_equal "MALFORMED_QUERY: someproblem while accessing https://awesome-2000.something.salesforce.com/services/async/22.0/path", e.message
79
79
  end
80
80
  end
81
-
81
+
82
82
  def test_async_post__xml
83
83
  Salesforce::Authentication.stubs(:session_id).returns('session_id')
84
84
  http_body = stub(:body => { :result => 'foo' }.to_xml)
85
85
  RestClient.expects(:post).with('https://awesome-2000.something.salesforce.com/services/async/22.0/path', :body, {'X-SFDC-Session' => 'session_id', :content_type => 'application/xml'}).returns(http_body)
86
86
  assert_equal({'result' => 'foo'}, Salesforce.connection.async_post('path', :body, :format => :xml))
87
87
  end
88
-
88
+
89
89
  def test_async_get__json
90
90
  Salesforce::Authentication.stubs(:session_id).returns('session_id')
91
91
  http_body = stub(:body => { :result => 'foo' }.to_json)
92
92
  RestClient.expects(:get).with('https://awesome-2000.something.salesforce.com/services/async/22.0/path', {'X-SFDC-Session' => 'session_id', :content_type => 'application/json'}).returns(http_body)
93
93
  assert_equal({'result' => 'foo'}, Salesforce.connection.async_get('path', :format => :json))
94
94
  end
95
-
95
+
96
96
  def test_async_get__error_json
97
97
  Salesforce::Authentication.stubs(:session_id).returns('session_id')
98
98
  error = RestClient::BadRequest.new
99
99
  error.stubs(:http_body).returns("[{\"message\":\"someproblem\",\"errorCode\":\"MALFORMED_QUERY\"}]")
100
100
  RestClient.expects(:get).with('https://awesome-2000.something.salesforce.com/services/async/22.0/path', {'X-SFDC-Session' => 'session_id', :content_type => 'application/json'}).raises(error)
101
-
101
+
102
102
  begin
103
103
  Salesforce.connection.async_get('path', :format => :json)
104
104
  assert false, "Shouldn't have gotten here"
@@ -107,13 +107,13 @@ class Salesforce.connection::AsyncTest < ActiveSupport::TestCase
107
107
  assert_equal "MALFORMED_QUERY: someproblem while accessing https://awesome-2000.something.salesforce.com/services/async/22.0/path", e.message
108
108
  end
109
109
  end
110
-
110
+
111
111
  def test_async_get__error_xml
112
112
  Salesforce::Authentication.stubs(:session_id).returns('session_id')
113
113
  error = RestClient::BadRequest.new
114
114
  error.stubs(:http_body).returns("<?xml version=\"1.0\" encoding=\"UTF-8\"?><Errors><Error><errorCode>MALFORMED_QUERY</errorCode><message>someproblem</message></Error></Errors>" )
115
115
  RestClient.expects(:get).with('https://awesome-2000.something.salesforce.com/services/async/22.0/path', {'X-SFDC-Session' => 'session_id', :content_type => 'application/xml'}).raises(error)
116
-
116
+
117
117
  begin
118
118
  Salesforce.connection.async_get('path', :format => :xml)
119
119
  assert false, "Shouldn't have gotten here"
@@ -122,22 +122,22 @@ class Salesforce.connection::AsyncTest < ActiveSupport::TestCase
122
122
  assert_equal "MALFORMED_QUERY: someproblem while accessing https://awesome-2000.something.salesforce.com/services/async/22.0/path", e.message
123
123
  end
124
124
  end
125
-
125
+
126
126
  def test_async_get__xml
127
127
  Salesforce::Authentication.stubs(:session_id).returns('session_id')
128
128
  http_body = stub(:body => { :result => 'foo' }.to_xml)
129
129
  RestClient.expects(:get).with('https://awesome-2000.something.salesforce.com/services/async/22.0/path', {'X-SFDC-Session' => 'session_id', :content_type => 'application/xml'}).returns(http_body)
130
130
  assert_equal({'result' => 'foo'}, Salesforce.connection.async_get('path', :format => :xml))
131
131
  end
132
-
132
+
133
133
  def test_async_api_url
134
134
  assert_equal 'https://awesome-2000.something.salesforce.com/services/async/22.0/path', Salesforce.connection.async_api_url('path')
135
135
  end
136
-
137
-
138
-
139
-
140
-
141
-
142
-
136
+
137
+
138
+
139
+
140
+
141
+
142
+
143
143
  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::Request::Unauthorized.new
34
+ error = RestClient::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::Request::Unauthorized.new
50
- assert_raises RestClient::Request::Unauthorized do
49
+ error = RestClient::Unauthorized.new
50
+ assert_raises RestClient::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
68
  error = Savon::SOAPFault.new(stub(:body => xml), Nori.new, xml)
69
-
69
+
70
70
  flag = nil
71
71
  Salesforce::Authentication.expects(:session_id).twice
72
72
  Salesforce::Authentication.expects(:logout)
@@ -77,28 +77,28 @@ 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
96
  error = Savon::SOAPFault.new(stub(:body => xml), Nori.new, xml)
97
-
97
+
98
98
  flag = nil
99
99
  Salesforce::Authentication.expects(:session_id).twice
100
100
  Salesforce::Authentication.expects(:logout)
101
-
101
+
102
102
  assert_raises Savon::SOAPFault do
103
103
  Salesforce.connection.as_logged_in_user do
104
104
  raise error
@@ -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
116
  error = Savon::SOAPFault.new(stub(:body => xml), Nori.new, xml)
117
-
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::Request::Unauthorized.new).then.raises(StandardError.new("some other error"))
136
+ expects(:my_method).twice.raises(RestClient::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,8 +141,14 @@ 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
148
154
  end
@@ -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
-
18
+ Mocha::Configuration.prevent(:stubbing_non_existent_method)
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
- Savon::Client.any_instance.stubs(:request)
35
+ Mocha::Configuration.allow(:stubbing_non_existent_method) do
36
+ Savon::Client.any_instance.stubs(:request)
37
+ end
36
38
  end
37
-
39
+
38
40
  def clear_columns_for_bulk_table
39
41
  Salesforce::BulkTable.cached_columns = nil
40
42
  end
41
-
43
+
42
44
  def clear_columns_for_account
43
45
  Salesforce::Account.cached_columns = nil
44
46
  end
45
-
47
+
46
48
  def setup_columns_for_bulk_table
47
49
  clear_columns_for_bulk_table
48
- columns_hash = [
49
- { "name" => "Id", "type" => "id", "createable" => false, "updateable" => false},
50
- { "name" => "Account__c", "type" => "reference", "createable" => true, "updateable" => false, "custom" => true },
50
+ columns_hash = [
51
+ { "name" => "Id", "type" => "id", "createable" => false, "updateable" => false},
52
+ { "name" => "Account__c", "type" => "reference", "createable" => true, "updateable" => false, "custom" => true },
51
53
  { "name" => "Car__c", "type" => "reference", "createable" => false, "updateable" => true, "custom" => true},
52
54
  { "name" => "Name__c", "type" => "string", "createable" => true, "updateable" => true, "custom" => true},
53
- { "name" => "dob__c", "type" => "date", "createable" => true, "updateable" => true, "custom" => true}
55
+ { "name" => "dob__c", "type" => "date", "createable" => true, "updateable" => true, "custom" => true}
54
56
  ]
55
-
57
+
56
58
  Salesforce.connection.stubs(:fields).with("BulkTable__c").returns(columns_hash).twice
57
59
  columns = Salesforce::Columns.new("BulkTable__c")
58
60
  assert_equal columns, Salesforce::BulkTable.columns
59
61
  end
60
-
62
+
61
63
  def setup_columns_for_account
62
64
  clear_columns_for_account
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},
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},
69
71
  { "name" => "State", "type" => "string", "createable" => true, "updateable" => true},
70
72
  { "name" => "Number", "type" => "string", "createable" => true, "updateable" => false}
71
73
  ]
72
-
74
+
73
75
  Salesforce.connection.stubs(:fields).with("Account").returns(columns_hash).twice
74
76
  columns = Salesforce::Columns.new("Account")
75
77
  assert_equal columns, Salesforce::Account.columns
76
78
  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: 4.0.0
4
+ version: 5.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tushar Ranka
@@ -63,20 +63,14 @@ dependencies:
63
63
  name: rest-client
64
64
  requirement: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - - "<"
66
+ - - "~>"
70
67
  - !ruby/object:Gem::Version
71
68
  version: '2.0'
72
69
  type: :runtime
73
70
  prerelease: false
74
71
  version_requirements: !ruby/object:Gem::Requirement
75
72
  requirements:
76
- - - ">="
77
- - !ruby/object:Gem::Version
78
- version: '0'
79
- - - "<"
73
+ - - "~>"
80
74
  - !ruby/object:Gem::Version
81
75
  version: '2.0'
82
76
  description: " Activeforce provides a simple to use and extend interface to Salesforce
@@ -144,7 +138,6 @@ files:
144
138
  - app/models/salesforce/user.rb
145
139
  - app/models/salesforce/user_role.rb
146
140
  - app/models/salesforce/vote.rb
147
- - gemfiles/4.2.gemfile
148
141
  - gemfiles/5.0.gemfile
149
142
  - gemfiles/5.2.gemfile
150
143
  - gemfiles/6.0.gemfile
@@ -202,7 +195,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
202
195
  - !ruby/object:Gem::Version
203
196
  version: '0'
204
197
  requirements: []
205
- rubygems_version: 3.0.3
198
+ rubyforge_project:
199
+ rubygems_version: 2.7.9
206
200
  signing_key:
207
201
  specification_version: 4
208
202
  summary: A Simple gem to interact with the Salesforce REST API
@@ -1,9 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "appraisal"
6
- gem "mocha", "0.14.0", require: false
7
- gem "rails", "~> 4.2.0"
8
-
9
- gemspec path: "../"