restforce-db 2.0.1 → 2.1.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.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -0
  3. data/lib/restforce/db/associations/base.rb +7 -7
  4. data/lib/restforce/db/associations/belongs_to.rb +6 -10
  5. data/lib/restforce/db/associations/foreign_key.rb +1 -2
  6. data/lib/restforce/db/associations/has_many.rb +2 -1
  7. data/lib/restforce/db/associations/has_one.rb +2 -1
  8. data/lib/restforce/db/cleaner.rb +25 -3
  9. data/lib/restforce/db/configuration.rb +7 -0
  10. data/lib/restforce/db/record_types/active_record.rb +5 -1
  11. data/lib/restforce/db/version.rb +1 -1
  12. data/lib/restforce/db.rb +1 -0
  13. data/test/cassettes/Restforce_DB/accessing_Salesforce/uses_the_configured_credentials.yml +1 -1
  14. data/test/cassettes/Restforce_DB_Associations_BelongsTo/with_an_inverse_mapping/_build/returns_an_associated_record_populated_with_the_Salesforce_attributes.yml +17 -17
  15. data/test/cassettes/Restforce_DB_Associations_BelongsTo/with_an_inverse_mapping/_build/when_no_salesforce_record_is_found_for_the_association/proceeds_without_constructing_any_records.yml +11 -11
  16. data/test/cassettes/Restforce_DB_Associations_BelongsTo/with_an_inverse_mapping/_build/when_the_associated_record_has_already_been_persisted/assigns_the_existing_record.yml +17 -17
  17. data/test/cassettes/Restforce_DB_Associations_BelongsTo/with_an_inverse_mapping/_build/when_the_associated_record_has_been_cached/uses_the_cached_record.yml +17 -17
  18. data/test/cassettes/Restforce_DB_Associations_BelongsTo/with_an_inverse_mapping/_build/when_the_association_is_non-building/proceeds_without_constructing_any_records.yml +14 -14
  19. data/test/cassettes/Restforce_DB_Associations_BelongsTo/with_an_inverse_mapping/_build/with_an_unrelated_association_mapping/proceeds_without_raising_an_error.yml +17 -17
  20. data/test/cassettes/Restforce_DB_Associations_BelongsTo/with_an_inverse_mapping/_lookups/returns_a_hash_of_the_associated_records_lookup_IDs.yml +11 -11
  21. data/test/cassettes/Restforce_DB_Associations_BelongsTo/with_an_inverse_mapping/_lookups/when_there_is_currently_no_associated_record/and_the_underlying_association_is_one-to-many/still_returns_a_nil_lookup_value_in_the_hash.yml +119 -0
  22. data/test/cassettes/Restforce_DB_Associations_BelongsTo/with_an_inverse_mapping/_lookups/when_there_is_currently_no_associated_record/returns_a_nil_lookup_value_in_the_hash.yml +6 -6
  23. data/test/cassettes/Restforce_DB_Associations_BelongsTo/with_an_inverse_mapping/_synced_for_/when_a_matching_associated_record_has_been_synchronized/returns_true.yml +17 -17
  24. data/test/cassettes/Restforce_DB_Associations_BelongsTo/with_an_inverse_mapping/_synced_for_/when_no_matching_associated_record_has_been_synchronized/returns_false.yml +17 -17
  25. data/test/cassettes/Restforce_DB_Associations_HasMany/with_an_inverse_mapping/_build/builds_a_number_of_associated_records_from_the_data_in_Salesforce.yml +29 -29
  26. data/test/cassettes/Restforce_DB_Associations_HasMany/with_an_inverse_mapping/_build/when_no_salesforce_record_is_found_for_the_association/proceeds_without_constructing_any_records.yml +11 -11
  27. data/test/cassettes/Restforce_DB_Associations_HasMany/with_an_inverse_mapping/_build/when_the_associated_records_have_alrady_been_persisted/constructs_the_association_from_the_existing_records.yml +29 -29
  28. data/test/cassettes/Restforce_DB_Associations_HasMany/with_an_inverse_mapping/_build/when_the_associated_records_have_been_cached/uses_the_cached_records.yml +29 -29
  29. data/test/cassettes/Restforce_DB_Associations_HasMany/with_an_inverse_mapping/_build/when_the_association_is_non-building/proceeds_without_constructing_any_records.yml +9 -9
  30. data/test/cassettes/Restforce_DB_Associations_HasMany/with_an_inverse_mapping/_synced_for_/when_a_matching_associated_record_has_been_synchronized/returns_true.yml +29 -29
  31. data/test/cassettes/Restforce_DB_Associations_HasMany/with_an_inverse_mapping/_synced_for_/when_no_matching_associated_record_has_been_synchronized/returns_false.yml +11 -11
  32. data/test/cassettes/Restforce_DB_Associations_HasOne/with_an_inverse_mapping/_build/and_a_nested_association_on_the_associated_mapping/recursively_builds_all_associations.yml +25 -25
  33. data/test/cassettes/Restforce_DB_Associations_HasOne/with_an_inverse_mapping/_build/returns_an_associated_record_populated_with_the_Salesforce_attributes.yml +17 -17
  34. data/test/cassettes/Restforce_DB_Associations_HasOne/with_an_inverse_mapping/_build/when_no_salesforce_record_is_found_for_the_association/proceeds_without_constructing_any_records.yml +11 -11
  35. data/test/cassettes/Restforce_DB_Associations_HasOne/with_an_inverse_mapping/_build/when_the_associated_record_has_already_been_persisted/assigns_the_existing_record.yml +17 -17
  36. data/test/cassettes/Restforce_DB_Associations_HasOne/with_an_inverse_mapping/_build/when_the_associated_record_has_been_cached/uses_the_cached_record.yml +17 -17
  37. data/test/cassettes/Restforce_DB_Associations_HasOne/with_an_inverse_mapping/_build/when_the_association_is_non-building/proceeds_without_constructing_any_records.yml +14 -14
  38. data/test/cassettes/Restforce_DB_Associations_HasOne/with_an_inverse_mapping/_synced_for_/when_a_matching_associated_record_has_been_synchronized/returns_true.yml +17 -17
  39. data/test/cassettes/Restforce_DB_Associations_HasOne/with_an_inverse_mapping/_synced_for_/when_no_matching_associated_record_has_been_synchronized/returns_false.yml +17 -17
  40. data/test/cassettes/Restforce_DB_Associator/_run/given_a_BelongsTo_association/given_another_record_for_association/when_the_Salesforce_association_is_out_of_date/updates_the_association_ID_in_Salesforce.yml +30 -30
  41. data/test/cassettes/Restforce_DB_Associator/_run/given_a_BelongsTo_association/given_another_record_for_association/when_the_database_association_is_out_of_date/updates_the_associated_record_in_the_database.yml +33 -33
  42. data/test/cassettes/Restforce_DB_Cleaner/_run/given_a_synchronized_Salesforce_record/when_the_mapping_has_no_conditions/does_not_drop_the_synchronized_database_record.yml +6 -6
  43. data/test/cassettes/Restforce_DB_Cleaner/_run/given_a_synchronized_Salesforce_record/when_the_record_does_not_meet_the_mapping_conditions/but_meets_conditions_for_a_parallel_mapping/does_not_drop_the_synchronized_database_record.yml +238 -0
  44. data/test/cassettes/Restforce_DB_Cleaner/_run/given_a_synchronized_Salesforce_record/when_the_record_does_not_meet_the_mapping_conditions/{for_a_non-Passive_strategy/drops_the_synchronized_database_record.yml → drops_the_synchronized_database_record.yml} +11 -11
  45. data/test/cassettes/Restforce_DB_Cleaner/_run/given_a_synchronized_Salesforce_record/when_the_record_meets_the_mapping_conditions/does_not_drop_the_synchronized_database_record.yml +12 -12
  46. data/test/cassettes/Restforce_DB_Collector/_run/given_a_Salesforce_record_with_an_associated_database_record/returns_the_attributes_from_both_records.yml +12 -12
  47. data/test/cassettes/Restforce_DB_Collector/_run/given_an_existing_Salesforce_record/returns_the_attributes_from_the_Salesforce_record.yml +12 -12
  48. data/test/cassettes/Restforce_DB_Collector/_run/given_an_existing_database_record/returns_the_attributes_from_the_database_record.yml +3 -3
  49. data/test/cassettes/Restforce_DB_Initializer/_run/given_an_existing_Salesforce_record/for_a_Passive_strategy/does_not_create_a_database_record.yml +6 -6
  50. data/test/cassettes/Restforce_DB_Initializer/_run/given_an_existing_Salesforce_record/for_an_Always_strategy/creates_a_matching_database_record.yml +10 -10
  51. data/test/cassettes/Restforce_DB_Initializer/_run/given_an_existing_database_record/for_an_Always_strategy/populates_Salesforce_with_the_new_record.yml +17 -17
  52. data/test/cassettes/Restforce_DB_Instances_Salesforce/_synced_/when_a_matching_database_record_exists/returns_true.yml +9 -9
  53. data/test/cassettes/Restforce_DB_Instances_Salesforce/_synced_/when_no_matching_database_record_exists/returns_false.yml +9 -9
  54. data/test/cassettes/Restforce_DB_Instances_Salesforce/_update_/updates_the_local_record_with_the_passed_attributes.yml +14 -14
  55. data/test/cassettes/Restforce_DB_Instances_Salesforce/_update_/updates_the_record_in_Salesforce_with_the_passed_attributes.yml +17 -17
  56. data/test/cassettes/Restforce_DB_RecordTypes_Salesforce/_all/returns_a_list_of_the_existing_records_in_Salesforce.yml +9 -9
  57. data/test/cassettes/Restforce_DB_RecordTypes_Salesforce/_create_/creates_a_record_in_Salesforce_from_the_passed_database_record_s_attributes.yml +12 -12
  58. data/test/cassettes/Restforce_DB_RecordTypes_Salesforce/_create_/updates_the_database_record_with_the_Salesforce_record_s_ID.yml +12 -12
  59. data/test/cassettes/Restforce_DB_RecordTypes_Salesforce/_find/finds_existing_records_in_Salesforce.yml +9 -9
  60. data/test/cassettes/Restforce_DB_RecordTypes_Salesforce/_find/given_a_set_of_mapping_conditions/when_a_record_does_not_meet_the_conditions/does_not_find_the_record.yml +8 -8
  61. data/test/cassettes/Restforce_DB_RecordTypes_Salesforce/_find/given_a_set_of_mapping_conditions/when_a_record_meets_the_conditions/finds_the_record.yml +9 -9
  62. data/test/cassettes/Restforce_DB_RecordTypes_Salesforce/_find/returns_nil_when_no_matching_record_exists.yml +3 -3
  63. data/test/cassettes/Restforce_DB_Strategies_Always/_build_/given_a_Salesforce_record/wants_to_build_a_new_matching_record.yml +9 -9
  64. data/test/cassettes/Restforce_DB_Strategies_Always/_build_/given_a_Salesforce_record/with_a_corresponding_database_record/does_not_want_to_build_a_new_record.yml +9 -9
  65. data/test/cassettes/Restforce_DB_Strategies_Associated/_build_/given_an_inverse_mapping/with_a_synchronized_association_record/wants_to_build_a_new_record.yml +17 -17
  66. data/test/cassettes/Restforce_DB_Strategies_Associated/_build_/given_an_inverse_mapping/with_an_existing_database_record/does_not_want_to_build_a_new_record.yml +14 -14
  67. data/test/cassettes/Restforce_DB_Strategies_Associated/_build_/given_an_inverse_mapping/with_no_synchronized_association_record/does_not_want_to_build_a_new_record.yml +17 -17
  68. data/test/cassettes/Restforce_DB_Synchronizer/_run/given_a_Salesforce_record_with_an_associated_database_record/updates_the_database_record.yml +14 -14
  69. data/test/cassettes/Restforce_DB_Synchronizer/_run/given_a_Salesforce_record_with_an_associated_database_record/updates_the_salesforce_record.yml +17 -17
  70. data/test/cassettes/Restforce_DB_Synchronizer/_run/given_a_Salesforce_record_with_no_associated_database_record/does_nothing_for_this_specific_mapping.yml +12 -12
  71. data/test/lib/restforce/db/associations/belongs_to_test.rb +17 -0
  72. data/test/lib/restforce/db/cleaner_test.rb +20 -4
  73. data/test/support/active_record.rb +3 -0
  74. data/test/support/vcr.rb +8 -0
  75. metadata +5 -3
@@ -38,11 +38,11 @@ http_interactions:
38
38
  body:
39
39
  encoding: ASCII-8BIT
40
40
  string: '{"id":"https://login.salesforce.com/id/00D1a000000H3O9EAK/0051a000000UGT8AAO","issued_at":"1428715798755","token_type":"Bearer","instance_url":"https://<host>","signature":"/GkLEgWKmoxA2MrX0e/J3mV+I37ybalQOsRqYmS4YNU=","access_token":"00D1a000000H3O9!AQ4AQKzh13pKuR2SlS.Cq04BnD.sliu.0jLuP2qUQvVfZBc5RaiRknImPjcZu5w_dvIzyN831OnqnR.o9XKdgX14n3l6dNnj"}'
41
- http_version:
41
+ http_version:
42
42
  recorded_at: Sat, 11 Apr 2015 01:29:59 GMT
43
43
  - request:
44
44
  method: post
45
- uri: https://<host>/services/data/v26.0/sobjects/CustomObject__c
45
+ uri: https://<host>/services/data/<api_version>/sobjects/CustomObject__c
46
46
  body:
47
47
  encoding: UTF-8
48
48
  string: '{"Name":"Sample object"}'
@@ -72,7 +72,7 @@ http_interactions:
72
72
  Sforce-Limit-Info:
73
73
  - api-usage=170/15000
74
74
  Location:
75
- - "/services/data/v26.0/sobjects/CustomObject__c/a001a000001LXh3AAG"
75
+ - "/services/data/<api_version>/sobjects/CustomObject__c/a001a000001LXh3AAG"
76
76
  Content-Type:
77
77
  - application/json;charset=UTF-8
78
78
  Transfer-Encoding:
@@ -80,11 +80,11 @@ http_interactions:
80
80
  body:
81
81
  encoding: ASCII-8BIT
82
82
  string: '{"id":"a001a000001LXh3AAG","success":true,"errors":[]}'
83
- http_version:
83
+ http_version:
84
84
  recorded_at: Sat, 11 Apr 2015 01:30:00 GMT
85
85
  - request:
86
86
  method: get
87
- uri: https://<host>/services/data/v26.0/query?q=select%20Id,%20SystemModstamp,%20Name,%20Example_Field__c%20from%20CustomObject__c%20where%20Id%20=%20%27a001a000001LXh3AAG%27
87
+ uri: https://<host>/services/data/<api_version>/query?q=select%20Id,%20SystemModstamp,%20Name,%20Example_Field__c%20from%20CustomObject__c%20where%20Id%20=%20%27a001a000001LXh3AAG%27
88
88
  body:
89
89
  encoding: US-ASCII
90
90
  string: ''
@@ -117,13 +117,13 @@ http_interactions:
117
117
  - chunked
118
118
  body:
119
119
  encoding: ASCII-8BIT
120
- string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"CustomObject__c","url":"/services/data/v26.0/sobjects/CustomObject__c/a001a000001LXh3AAG"},"Id":"a001a000001LXh3AAG","SystemModstamp":"2015-04-11T01:30:00.000+0000","Name":"Sample
120
+ string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"CustomObject__c","url":"/services/data/<api_version>/sobjects/CustomObject__c/a001a000001LXh3AAG"},"Id":"a001a000001LXh3AAG","SystemModstamp":"2015-04-11T01:30:00.000+0000","Name":"Sample
121
121
  object","Example_Field__c":null}]}'
122
- http_version:
122
+ http_version:
123
123
  recorded_at: Sat, 11 Apr 2015 01:30:01 GMT
124
124
  - request:
125
125
  method: get
126
- uri: https://<host>/services/data/v26.0/query?q=select%20Id,%20SystemModstamp,%20Name,%20CustomObject__c%20from%20CustomObjectDetail__c%20where%20CustomObject__c%20=%20%27a001a000001LXh3AAG%27
126
+ uri: https://<host>/services/data/<api_version>/query?q=select%20Id,%20SystemModstamp,%20Name,%20CustomObject__c%20from%20CustomObjectDetail__c%20where%20CustomObject__c%20=%20%27a001a000001LXh3AAG%27
127
127
  body:
128
128
  encoding: US-ASCII
129
129
  string: ''
@@ -157,11 +157,11 @@ http_interactions:
157
157
  body:
158
158
  encoding: ASCII-8BIT
159
159
  string: '{"totalSize":0,"done":true,"records":[]}'
160
- http_version:
160
+ http_version:
161
161
  recorded_at: Sat, 11 Apr 2015 01:30:02 GMT
162
162
  - request:
163
163
  method: delete
164
- uri: https://<host>/services/data/v26.0/sobjects/CustomObject__c/a001a000001LXh3AAG
164
+ uri: https://<host>/services/data/<api_version>/sobjects/CustomObject__c/a001a000001LXh3AAG
165
165
  body:
166
166
  encoding: US-ASCII
167
167
  string: ''
@@ -191,6 +191,6 @@ http_interactions:
191
191
  body:
192
192
  encoding: UTF-8
193
193
  string: ''
194
- http_version:
194
+ http_version:
195
195
  recorded_at: Sat, 11 Apr 2015 01:30:03 GMT
196
196
  recorded_with: VCR 2.9.3
@@ -38,11 +38,11 @@ http_interactions:
38
38
  body:
39
39
  encoding: ASCII-8BIT
40
40
  string: '{"id":"https://login.salesforce.com/id/00D1a000000H3O9EAK/0051a000000UGT8AAO","issued_at":"1429212359162","token_type":"Bearer","instance_url":"https://<host>","signature":"GigH5zHmZ1IsG+SaU0QdxmWhrvcKdrCm9X2rf1EkiwM=","access_token":"00D1a000000H3O9!AQ4AQPSOXZt5DLhfr69D_LCpoJzz_hcsgL5M3__5XXvOQMahZ5HtzzBveYd9BpdCGejgkgFYX6_ZfJkTvkaXqAWbAEpg555q"}'
41
- http_version:
41
+ http_version:
42
42
  recorded_at: Thu, 16 Apr 2015 19:25:58 GMT
43
43
  - request:
44
44
  method: post
45
- uri: https://<host>/services/data/v26.0/sobjects/Contact
45
+ uri: https://<host>/services/data/<api_version>/sobjects/Contact
46
46
  body:
47
47
  encoding: UTF-8
48
48
  string: '{"Email":"somebody@example.com","LastName":"Somebody"}'
@@ -72,7 +72,7 @@ http_interactions:
72
72
  Sforce-Limit-Info:
73
73
  - api-usage=1/15000
74
74
  Location:
75
- - "/services/data/v26.0/sobjects/Contact/0031a000002JQEpAAO"
75
+ - "/services/data/<api_version>/sobjects/Contact/0031a000002JQEpAAO"
76
76
  Content-Type:
77
77
  - application/json;charset=UTF-8
78
78
  Transfer-Encoding:
@@ -80,11 +80,11 @@ http_interactions:
80
80
  body:
81
81
  encoding: ASCII-8BIT
82
82
  string: '{"id":"0031a000002JQEpAAO","success":true,"errors":[]}'
83
- http_version:
83
+ http_version:
84
84
  recorded_at: Thu, 16 Apr 2015 19:26:00 GMT
85
85
  - request:
86
86
  method: post
87
- uri: https://<host>/services/data/v26.0/sobjects/CustomObject__c
87
+ uri: https://<host>/services/data/<api_version>/sobjects/CustomObject__c
88
88
  body:
89
89
  encoding: UTF-8
90
90
  string: '{"Friend__c":"0031a000002JQEpAAO"}'
@@ -114,7 +114,7 @@ http_interactions:
114
114
  Sforce-Limit-Info:
115
115
  - api-usage=2/15000
116
116
  Location:
117
- - "/services/data/v26.0/sobjects/CustomObject__c/a001a000001LoG1AAK"
117
+ - "/services/data/<api_version>/sobjects/CustomObject__c/a001a000001LoG1AAK"
118
118
  Content-Type:
119
119
  - application/json;charset=UTF-8
120
120
  Transfer-Encoding:
@@ -122,11 +122,11 @@ http_interactions:
122
122
  body:
123
123
  encoding: ASCII-8BIT
124
124
  string: '{"id":"a001a000001LoG1AAK","success":true,"errors":[]}'
125
- http_version:
125
+ http_version:
126
126
  recorded_at: Thu, 16 Apr 2015 19:26:01 GMT
127
127
  - request:
128
128
  method: post
129
- uri: https://<host>/services/data/v26.0/sobjects/CustomObjectDetail__c
129
+ uri: https://<host>/services/data/<api_version>/sobjects/CustomObjectDetail__c
130
130
  body:
131
131
  encoding: UTF-8
132
132
  string: '{"CustomObject__c":"a001a000001LoG1AAK"}'
@@ -156,7 +156,7 @@ http_interactions:
156
156
  Sforce-Limit-Info:
157
157
  - api-usage=2/15000
158
158
  Location:
159
- - "/services/data/v26.0/sobjects/CustomObjectDetail__c/a011a000000hKfnAAE"
159
+ - "/services/data/<api_version>/sobjects/CustomObjectDetail__c/a011a000000hKfnAAE"
160
160
  Content-Type:
161
161
  - application/json;charset=UTF-8
162
162
  Transfer-Encoding:
@@ -164,11 +164,11 @@ http_interactions:
164
164
  body:
165
165
  encoding: ASCII-8BIT
166
166
  string: '{"id":"a011a000000hKfnAAE","success":true,"errors":[]}'
167
- http_version:
167
+ http_version:
168
168
  recorded_at: Thu, 16 Apr 2015 19:26:02 GMT
169
169
  - request:
170
170
  method: get
171
- uri: https://<host>/services/data/v26.0/query?q=select%20Id,%20SystemModstamp,%20Email%20from%20Contact%20where%20Id%20=%20%270031a000002JQEpAAO%27
171
+ uri: https://<host>/services/data/<api_version>/query?q=select%20Id,%20SystemModstamp,%20Email%20from%20Contact%20where%20Id%20=%20%270031a000002JQEpAAO%27
172
172
  body:
173
173
  encoding: US-ASCII
174
174
  string: ''
@@ -201,12 +201,12 @@ http_interactions:
201
201
  - chunked
202
202
  body:
203
203
  encoding: ASCII-8BIT
204
- string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"Contact","url":"/services/data/v26.0/sobjects/Contact/0031a000002JQEpAAO"},"Id":"0031a000002JQEpAAO","SystemModstamp":"2015-04-16T19:26:00.000+0000","Email":"somebody@example.com"}]}'
205
- http_version:
204
+ string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"Contact","url":"/services/data/<api_version>/sobjects/Contact/0031a000002JQEpAAO"},"Id":"0031a000002JQEpAAO","SystemModstamp":"2015-04-16T19:26:00.000+0000","Email":"somebody@example.com"}]}'
205
+ http_version:
206
206
  recorded_at: Thu, 16 Apr 2015 19:26:03 GMT
207
207
  - request:
208
208
  method: get
209
- uri: https://<host>/services/data/v26.0/query?q=select%20Id,%20SystemModstamp,%20Name,%20Example_Field__c,%20Friend__c%20from%20CustomObject__c%20where%20Friend__c%20=%20%270031a000002JQEpAAO%27
209
+ uri: https://<host>/services/data/<api_version>/query?q=select%20Id,%20SystemModstamp,%20Name,%20Example_Field__c,%20Friend__c%20from%20CustomObject__c%20where%20Friend__c%20=%20%270031a000002JQEpAAO%27
210
210
  body:
211
211
  encoding: US-ASCII
212
212
  string: ''
@@ -239,12 +239,12 @@ http_interactions:
239
239
  - chunked
240
240
  body:
241
241
  encoding: ASCII-8BIT
242
- string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"CustomObject__c","url":"/services/data/v26.0/sobjects/CustomObject__c/a001a000001LoG1AAK"},"Id":"a001a000001LoG1AAK","SystemModstamp":"2015-04-16T19:26:01.000+0000","Name":"a001a000001LoG1","Example_Field__c":null,"Friend__c":"0031a000002JQEpAAO"}]}'
243
- http_version:
242
+ string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"CustomObject__c","url":"/services/data/<api_version>/sobjects/CustomObject__c/a001a000001LoG1AAK"},"Id":"a001a000001LoG1AAK","SystemModstamp":"2015-04-16T19:26:01.000+0000","Name":"a001a000001LoG1","Example_Field__c":null,"Friend__c":"0031a000002JQEpAAO"}]}'
243
+ http_version:
244
244
  recorded_at: Thu, 16 Apr 2015 19:26:04 GMT
245
245
  - request:
246
246
  method: get
247
- uri: https://<host>/services/data/v26.0/query?q=select%20Id,%20SystemModstamp,%20Name,%20CustomObject__c%20from%20CustomObjectDetail__c%20where%20CustomObject__c%20=%20%27a001a000001LoG1AAK%27
247
+ uri: https://<host>/services/data/<api_version>/query?q=select%20Id,%20SystemModstamp,%20Name,%20CustomObject__c%20from%20CustomObjectDetail__c%20where%20CustomObject__c%20=%20%27a001a000001LoG1AAK%27
248
248
  body:
249
249
  encoding: US-ASCII
250
250
  string: ''
@@ -277,12 +277,12 @@ http_interactions:
277
277
  - chunked
278
278
  body:
279
279
  encoding: ASCII-8BIT
280
- string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"CustomObjectDetail__c","url":"/services/data/v26.0/sobjects/CustomObjectDetail__c/a011a000000hKfnAAE"},"Id":"a011a000000hKfnAAE","SystemModstamp":"2015-04-16T19:26:02.000+0000","Name":"a011a000000hKfn","CustomObject__c":"a001a000001LoG1AAK"}]}'
281
- http_version:
280
+ string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"CustomObjectDetail__c","url":"/services/data/<api_version>/sobjects/CustomObjectDetail__c/a011a000000hKfnAAE"},"Id":"a011a000000hKfnAAE","SystemModstamp":"2015-04-16T19:26:02.000+0000","Name":"a011a000000hKfn","CustomObject__c":"a001a000001LoG1AAK"}]}'
281
+ http_version:
282
282
  recorded_at: Thu, 16 Apr 2015 19:26:05 GMT
283
283
  - request:
284
284
  method: delete
285
- uri: https://<host>/services/data/v26.0/sobjects/Contact/0031a000002JQEpAAO
285
+ uri: https://<host>/services/data/<api_version>/sobjects/Contact/0031a000002JQEpAAO
286
286
  body:
287
287
  encoding: US-ASCII
288
288
  string: ''
@@ -312,11 +312,11 @@ http_interactions:
312
312
  body:
313
313
  encoding: UTF-8
314
314
  string: ''
315
- http_version:
315
+ http_version:
316
316
  recorded_at: Thu, 16 Apr 2015 19:26:07 GMT
317
317
  - request:
318
318
  method: delete
319
- uri: https://<host>/services/data/v26.0/sobjects/CustomObject__c/a001a000001LoG1AAK
319
+ uri: https://<host>/services/data/<api_version>/sobjects/CustomObject__c/a001a000001LoG1AAK
320
320
  body:
321
321
  encoding: US-ASCII
322
322
  string: ''
@@ -346,11 +346,11 @@ http_interactions:
346
346
  body:
347
347
  encoding: UTF-8
348
348
  string: ''
349
- http_version:
349
+ http_version:
350
350
  recorded_at: Thu, 16 Apr 2015 19:26:08 GMT
351
351
  - request:
352
352
  method: delete
353
- uri: https://<host>/services/data/v26.0/sobjects/CustomObjectDetail__c/a011a000000hKfnAAE
353
+ uri: https://<host>/services/data/<api_version>/sobjects/CustomObjectDetail__c/a011a000000hKfnAAE
354
354
  body:
355
355
  encoding: US-ASCII
356
356
  string: ''
@@ -384,6 +384,6 @@ http_interactions:
384
384
  body:
385
385
  encoding: UTF-8
386
386
  string: '[{"message":"entity is deleted","errorCode":"ENTITY_IS_DELETED","fields":[]}]'
387
- http_version:
387
+ http_version:
388
388
  recorded_at: Thu, 16 Apr 2015 19:26:09 GMT
389
389
  recorded_with: VCR 2.9.3
@@ -38,11 +38,11 @@ http_interactions:
38
38
  body:
39
39
  encoding: ASCII-8BIT
40
40
  string: '{"id":"https://login.salesforce.com/id/00D1a000000H3O9EAK/0051a000000UGT8AAO","issued_at":"1428694613574","token_type":"Bearer","instance_url":"https://<host>","signature":"kgBP47lDsnoj+9xAXQq93nEJXbBT/5IPiHiIdQBA9W4=","access_token":"00D1a000000H3O9!AQ4AQO48p7VCPJTqs85KtBx3kEBjPhP.lCvkGK3ayiFCcg2H2nbFwdKZaBetwWzVAndOSywkSvoT7_YZEmwLnhtbJ1A3E5NZ"}'
41
- http_version:
41
+ http_version:
42
42
  recorded_at: Fri, 10 Apr 2015 19:36:53 GMT
43
43
  - request:
44
44
  method: post
45
- uri: https://<host>/services/data/v26.0/sobjects/Contact
45
+ uri: https://<host>/services/data/<api_version>/sobjects/Contact
46
46
  body:
47
47
  encoding: UTF-8
48
48
  string: '{"Email":"somebody@example.com","LastName":"Somebody"}'
@@ -72,7 +72,7 @@ http_interactions:
72
72
  Sforce-Limit-Info:
73
73
  - api-usage=63/15000
74
74
  Location:
75
- - "/services/data/v26.0/sobjects/Contact/0031a000001yUpDAAU"
75
+ - "/services/data/<api_version>/sobjects/Contact/0031a000001yUpDAAU"
76
76
  Content-Type:
77
77
  - application/json;charset=UTF-8
78
78
  Transfer-Encoding:
@@ -80,11 +80,11 @@ http_interactions:
80
80
  body:
81
81
  encoding: ASCII-8BIT
82
82
  string: '{"id":"0031a000001yUpDAAU","success":true,"errors":[]}'
83
- http_version:
83
+ http_version:
84
84
  recorded_at: Fri, 10 Apr 2015 19:36:54 GMT
85
85
  - request:
86
86
  method: post
87
- uri: https://<host>/services/data/v26.0/sobjects/CustomObject__c
87
+ uri: https://<host>/services/data/<api_version>/sobjects/CustomObject__c
88
88
  body:
89
89
  encoding: UTF-8
90
90
  string: '{"Friend__c":"0031a000001yUpDAAU"}'
@@ -114,7 +114,7 @@ http_interactions:
114
114
  Sforce-Limit-Info:
115
115
  - api-usage=63/15000
116
116
  Location:
117
- - "/services/data/v26.0/sobjects/CustomObject__c/a001a000001LXL8AAO"
117
+ - "/services/data/<api_version>/sobjects/CustomObject__c/a001a000001LXL8AAO"
118
118
  Content-Type:
119
119
  - application/json;charset=UTF-8
120
120
  Transfer-Encoding:
@@ -122,11 +122,11 @@ http_interactions:
122
122
  body:
123
123
  encoding: ASCII-8BIT
124
124
  string: '{"id":"a001a000001LXL8AAO","success":true,"errors":[]}'
125
- http_version:
125
+ http_version:
126
126
  recorded_at: Fri, 10 Apr 2015 19:36:54 GMT
127
127
  - request:
128
128
  method: get
129
- uri: https://<host>/services/data/v26.0/query?q=select%20Id,%20SystemModstamp,%20Email%20from%20Contact%20where%20Id%20=%20%270031a000001yUpDAAU%27
129
+ uri: https://<host>/services/data/<api_version>/query?q=select%20Id,%20SystemModstamp,%20Email%20from%20Contact%20where%20Id%20=%20%270031a000001yUpDAAU%27
130
130
  body:
131
131
  encoding: US-ASCII
132
132
  string: ''
@@ -159,12 +159,12 @@ http_interactions:
159
159
  - chunked
160
160
  body:
161
161
  encoding: ASCII-8BIT
162
- string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"Contact","url":"/services/data/v26.0/sobjects/Contact/0031a000001yUpDAAU"},"Id":"0031a000001yUpDAAU","SystemModstamp":"2015-04-10T19:36:53.000+0000","Email":"somebody@example.com"}]}'
163
- http_version:
162
+ string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"Contact","url":"/services/data/<api_version>/sobjects/Contact/0031a000001yUpDAAU"},"Id":"0031a000001yUpDAAU","SystemModstamp":"2015-04-10T19:36:53.000+0000","Email":"somebody@example.com"}]}'
163
+ http_version:
164
164
  recorded_at: Fri, 10 Apr 2015 19:36:54 GMT
165
165
  - request:
166
166
  method: get
167
- uri: https://<host>/services/data/v26.0/query?q=select%20Id,%20SystemModstamp,%20Name,%20Example_Field__c,%20Friend__c%20from%20CustomObject__c%20where%20Friend__c%20=%20%270031a000001yUpDAAU%27
167
+ uri: https://<host>/services/data/<api_version>/query?q=select%20Id,%20SystemModstamp,%20Name,%20Example_Field__c,%20Friend__c%20from%20CustomObject__c%20where%20Friend__c%20=%20%270031a000001yUpDAAU%27
168
168
  body:
169
169
  encoding: US-ASCII
170
170
  string: ''
@@ -197,12 +197,12 @@ http_interactions:
197
197
  - chunked
198
198
  body:
199
199
  encoding: ASCII-8BIT
200
- string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"CustomObject__c","url":"/services/data/v26.0/sobjects/CustomObject__c/a001a000001LXL8AAO"},"Id":"a001a000001LXL8AAO","SystemModstamp":"2015-04-10T19:36:54.000+0000","Name":"a001a000001LXL8","Example_Field__c":null,"Friend__c":"0031a000001yUpDAAU"}]}'
201
- http_version:
200
+ string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"CustomObject__c","url":"/services/data/<api_version>/sobjects/CustomObject__c/a001a000001LXL8AAO"},"Id":"a001a000001LXL8AAO","SystemModstamp":"2015-04-10T19:36:54.000+0000","Name":"a001a000001LXL8","Example_Field__c":null,"Friend__c":"0031a000001yUpDAAU"}]}'
201
+ http_version:
202
202
  recorded_at: Fri, 10 Apr 2015 19:36:54 GMT
203
203
  - request:
204
204
  method: delete
205
- uri: https://<host>/services/data/v26.0/sobjects/Contact/0031a000001yUpDAAU
205
+ uri: https://<host>/services/data/<api_version>/sobjects/Contact/0031a000001yUpDAAU
206
206
  body:
207
207
  encoding: US-ASCII
208
208
  string: ''
@@ -232,11 +232,11 @@ http_interactions:
232
232
  body:
233
233
  encoding: UTF-8
234
234
  string: ''
235
- http_version:
235
+ http_version:
236
236
  recorded_at: Fri, 10 Apr 2015 19:36:55 GMT
237
237
  - request:
238
238
  method: delete
239
- uri: https://<host>/services/data/v26.0/sobjects/CustomObject__c/a001a000001LXL8AAO
239
+ uri: https://<host>/services/data/<api_version>/sobjects/CustomObject__c/a001a000001LXL8AAO
240
240
  body:
241
241
  encoding: US-ASCII
242
242
  string: ''
@@ -266,6 +266,6 @@ http_interactions:
266
266
  body:
267
267
  encoding: UTF-8
268
268
  string: ''
269
- http_version:
269
+ http_version:
270
270
  recorded_at: Fri, 10 Apr 2015 19:36:55 GMT
271
271
  recorded_with: VCR 2.9.3
@@ -38,11 +38,11 @@ http_interactions:
38
38
  body:
39
39
  encoding: ASCII-8BIT
40
40
  string: '{"id":"https://login.salesforce.com/id/00D1a000000H3O9EAK/0051a000000UGT8AAO","issued_at":"1429557345288","token_type":"Bearer","instance_url":"https://<host>","signature":"KWVtlhIqzN6OZ3uEXDa7ZakPVzRL4UeHWNXC7QKJacs=","access_token":"00D1a000000H3O9!AQ4AQJoC69lofp3.BkQNHdxEquIbjgARO_AQ3LgRth6RSFmB4_KVDLfm9_.J64ouFAGqhXyiThQHypNf.xCD1enx2SQbZDcP"}'
41
- http_version:
41
+ http_version:
42
42
  recorded_at: Mon, 20 Apr 2015 19:15:45 GMT
43
43
  - request:
44
44
  method: post
45
- uri: https://<host>/services/data/v26.0/sobjects/Contact
45
+ uri: https://<host>/services/data/<api_version>/sobjects/Contact
46
46
  body:
47
47
  encoding: UTF-8
48
48
  string: '{"Email":"somebody@example.com","LastName":"Somebody"}'
@@ -72,7 +72,7 @@ http_interactions:
72
72
  Sforce-Limit-Info:
73
73
  - api-usage=1/15000
74
74
  Location:
75
- - "/services/data/v26.0/sobjects/Contact/0031a000002bvGPAAY"
75
+ - "/services/data/<api_version>/sobjects/Contact/0031a000002bvGPAAY"
76
76
  Content-Type:
77
77
  - application/json;charset=UTF-8
78
78
  Transfer-Encoding:
@@ -80,11 +80,11 @@ http_interactions:
80
80
  body:
81
81
  encoding: ASCII-8BIT
82
82
  string: '{"id":"0031a000002bvGPAAY","success":true,"errors":[]}'
83
- http_version:
83
+ http_version:
84
84
  recorded_at: Mon, 20 Apr 2015 19:15:46 GMT
85
85
  - request:
86
86
  method: get
87
- uri: https://<host>/services/data/v26.0/query?q=select%20Id,%20SystemModstamp,%20Email%20from%20Contact%20where%20Id%20=%20%270031a000002bvGPAAY%27
87
+ uri: https://<host>/services/data/<api_version>/query?q=select%20Id,%20SystemModstamp,%20Email%20from%20Contact%20where%20Id%20=%20%270031a000002bvGPAAY%27
88
88
  body:
89
89
  encoding: US-ASCII
90
90
  string: ''
@@ -117,12 +117,12 @@ http_interactions:
117
117
  - chunked
118
118
  body:
119
119
  encoding: ASCII-8BIT
120
- string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"Contact","url":"/services/data/v26.0/sobjects/Contact/0031a000002bvGPAAY"},"Id":"0031a000002bvGPAAY","SystemModstamp":"2015-04-20T19:15:46.000+0000","Email":"somebody@example.com"}]}'
121
- http_version:
120
+ string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"Contact","url":"/services/data/<api_version>/sobjects/Contact/0031a000002bvGPAAY"},"Id":"0031a000002bvGPAAY","SystemModstamp":"2015-04-20T19:15:46.000+0000","Email":"somebody@example.com"}]}'
121
+ http_version:
122
122
  recorded_at: Mon, 20 Apr 2015 19:15:47 GMT
123
123
  - request:
124
124
  method: get
125
- uri: https://<host>/services/data/v26.0/query?q=select%20Id,%20SystemModstamp,%20Name,%20Example_Field__c,%20Friend__c%20from%20CustomObject__c%20where%20Friend__c%20=%20%270031a000002bvGPAAY%27
125
+ uri: https://<host>/services/data/<api_version>/query?q=select%20Id,%20SystemModstamp,%20Name,%20Example_Field__c,%20Friend__c%20from%20CustomObject__c%20where%20Friend__c%20=%20%270031a000002bvGPAAY%27
126
126
  body:
127
127
  encoding: US-ASCII
128
128
  string: ''
@@ -156,11 +156,11 @@ http_interactions:
156
156
  body:
157
157
  encoding: ASCII-8BIT
158
158
  string: '{"totalSize":0,"done":true,"records":[]}'
159
- http_version:
159
+ http_version:
160
160
  recorded_at: Mon, 20 Apr 2015 19:15:49 GMT
161
161
  - request:
162
162
  method: delete
163
- uri: https://<host>/services/data/v26.0/sobjects/Contact/0031a000002bvGPAAY
163
+ uri: https://<host>/services/data/<api_version>/sobjects/Contact/0031a000002bvGPAAY
164
164
  body:
165
165
  encoding: US-ASCII
166
166
  string: ''
@@ -190,6 +190,6 @@ http_interactions:
190
190
  body:
191
191
  encoding: UTF-8
192
192
  string: ''
193
- http_version:
193
+ http_version:
194
194
  recorded_at: Mon, 20 Apr 2015 19:15:50 GMT
195
195
  recorded_with: VCR 2.9.3
@@ -38,11 +38,11 @@ http_interactions:
38
38
  body:
39
39
  encoding: ASCII-8BIT
40
40
  string: '{"id":"https://login.salesforce.com/id/00D1a000000H3O9EAK/0051a000000UGT8AAO","issued_at":"1430498002630","token_type":"Bearer","instance_url":"https://<host>","signature":"Z6A0wnihwjoySQ2kx85fiWIU125nofxKEitXsJVPx+I=","access_token":"00D1a000000H3O9!AQ4AQDv3Hk9TRSKHVK.6TQHDjiXPpFDEH7AxoxdK.ytZcKr4gkBGokBh2ZhUcaf0_eFqhFa6YVCzmfP.bUKsz9xIJOy41iQD"}'
41
- http_version:
41
+ http_version:
42
42
  recorded_at: Fri, 01 May 2015 16:33:22 GMT
43
43
  - request:
44
44
  method: post
45
- uri: https://<host>/services/data/v26.0/sobjects/Contact
45
+ uri: https://<host>/services/data/<api_version>/sobjects/Contact
46
46
  body:
47
47
  encoding: UTF-8
48
48
  string: '{"Email":"somebody@example.com","LastName":"Somebody"}'
@@ -72,7 +72,7 @@ http_interactions:
72
72
  Sforce-Limit-Info:
73
73
  - api-usage=13/15000
74
74
  Location:
75
- - "/services/data/v26.0/sobjects/Contact/0031a000002jr5tAAA"
75
+ - "/services/data/<api_version>/sobjects/Contact/0031a000002jr5tAAA"
76
76
  Content-Type:
77
77
  - application/json;charset=UTF-8
78
78
  Transfer-Encoding:
@@ -80,11 +80,11 @@ http_interactions:
80
80
  body:
81
81
  encoding: ASCII-8BIT
82
82
  string: '{"id":"0031a000002jr5tAAA","success":true,"errors":[]}'
83
- http_version:
83
+ http_version:
84
84
  recorded_at: Fri, 01 May 2015 16:33:23 GMT
85
85
  - request:
86
86
  method: post
87
- uri: https://<host>/services/data/v26.0/sobjects/CustomObject__c
87
+ uri: https://<host>/services/data/<api_version>/sobjects/CustomObject__c
88
88
  body:
89
89
  encoding: UTF-8
90
90
  string: '{"Friend__c":"0031a000002jr5tAAA"}'
@@ -114,7 +114,7 @@ http_interactions:
114
114
  Sforce-Limit-Info:
115
115
  - api-usage=12/15000
116
116
  Location:
117
- - "/services/data/v26.0/sobjects/CustomObject__c/a001a000001TuP7AAK"
117
+ - "/services/data/<api_version>/sobjects/CustomObject__c/a001a000001TuP7AAK"
118
118
  Content-Type:
119
119
  - application/json;charset=UTF-8
120
120
  Transfer-Encoding:
@@ -122,11 +122,11 @@ http_interactions:
122
122
  body:
123
123
  encoding: ASCII-8BIT
124
124
  string: '{"id":"a001a000001TuP7AAK","success":true,"errors":[]}'
125
- http_version:
125
+ http_version:
126
126
  recorded_at: Fri, 01 May 2015 16:33:23 GMT
127
127
  - request:
128
128
  method: get
129
- uri: https://<host>/services/data/v26.0/query?q=select%20Id,%20SystemModstamp,%20Email%20from%20Contact%20where%20Id%20=%20%270031a000002jr5tAAA%27
129
+ uri: https://<host>/services/data/<api_version>/query?q=select%20Id,%20SystemModstamp,%20Email%20from%20Contact%20where%20Id%20=%20%270031a000002jr5tAAA%27
130
130
  body:
131
131
  encoding: US-ASCII
132
132
  string: ''
@@ -159,12 +159,12 @@ http_interactions:
159
159
  - chunked
160
160
  body:
161
161
  encoding: ASCII-8BIT
162
- string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"Contact","url":"/services/data/v26.0/sobjects/Contact/0031a000002jr5tAAA"},"Id":"0031a000002jr5tAAA","SystemModstamp":"2015-05-01T16:33:22.000+0000","Email":"somebody@example.com"}]}'
163
- http_version:
162
+ string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"Contact","url":"/services/data/<api_version>/sobjects/Contact/0031a000002jr5tAAA"},"Id":"0031a000002jr5tAAA","SystemModstamp":"2015-05-01T16:33:22.000+0000","Email":"somebody@example.com"}]}'
163
+ http_version:
164
164
  recorded_at: Fri, 01 May 2015 16:33:23 GMT
165
165
  - request:
166
166
  method: get
167
- uri: https://<host>/services/data/v26.0/query?q=select%20Id,%20SystemModstamp,%20Name,%20Example_Field__c,%20Friend__c%20from%20CustomObject__c%20where%20Friend__c%20=%20%270031a000002jr5tAAA%27
167
+ uri: https://<host>/services/data/<api_version>/query?q=select%20Id,%20SystemModstamp,%20Name,%20Example_Field__c,%20Friend__c%20from%20CustomObject__c%20where%20Friend__c%20=%20%270031a000002jr5tAAA%27
168
168
  body:
169
169
  encoding: US-ASCII
170
170
  string: ''
@@ -197,12 +197,12 @@ http_interactions:
197
197
  - chunked
198
198
  body:
199
199
  encoding: ASCII-8BIT
200
- string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"CustomObject__c","url":"/services/data/v26.0/sobjects/CustomObject__c/a001a000001TuP7AAK"},"Id":"a001a000001TuP7AAK","SystemModstamp":"2015-05-01T16:33:23.000+0000","Name":"a001a000001TuP7","Example_Field__c":null,"Friend__c":"0031a000002jr5tAAA"}]}'
201
- http_version:
200
+ string: '{"totalSize":1,"done":true,"records":[{"attributes":{"type":"CustomObject__c","url":"/services/data/<api_version>/sobjects/CustomObject__c/a001a000001TuP7AAK"},"Id":"a001a000001TuP7AAK","SystemModstamp":"2015-05-01T16:33:23.000+0000","Name":"a001a000001TuP7","Example_Field__c":null,"Friend__c":"0031a000002jr5tAAA"}]}'
201
+ http_version:
202
202
  recorded_at: Fri, 01 May 2015 16:33:23 GMT
203
203
  - request:
204
204
  method: delete
205
- uri: https://<host>/services/data/v26.0/sobjects/Contact/0031a000002jr5tAAA
205
+ uri: https://<host>/services/data/<api_version>/sobjects/Contact/0031a000002jr5tAAA
206
206
  body:
207
207
  encoding: US-ASCII
208
208
  string: ''
@@ -232,11 +232,11 @@ http_interactions:
232
232
  body:
233
233
  encoding: UTF-8
234
234
  string: ''
235
- http_version:
235
+ http_version:
236
236
  recorded_at: Fri, 01 May 2015 16:33:24 GMT
237
237
  - request:
238
238
  method: delete
239
- uri: https://<host>/services/data/v26.0/sobjects/CustomObject__c/a001a000001TuP7AAK
239
+ uri: https://<host>/services/data/<api_version>/sobjects/CustomObject__c/a001a000001TuP7AAK
240
240
  body:
241
241
  encoding: US-ASCII
242
242
  string: ''
@@ -266,6 +266,6 @@ http_interactions:
266
266
  body:
267
267
  encoding: UTF-8
268
268
  string: ''
269
- http_version:
269
+ http_version:
270
270
  recorded_at: Fri, 01 May 2015 16:33:24 GMT
271
271
  recorded_with: VCR 2.9.3