Skip to content

Commit fff748e

Browse files
committed
Merge pull request #79 from tablexi/handle_nil_deleted_at_responses
Clean up handling of deleted records query
2 parents 8682e8b + c89c391 commit fff748e

File tree

3 files changed

+14
-16
lines changed

3 files changed

+14
-16
lines changed

lib/restforce/db/cleaner.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ def deleted_salesforce_ids
4242
@runner.before,
4343
)
4444

45-
response.deletedRecords.map(&:id)
45+
response.map(&:id)
4646
end
4747

4848
# Internal: Get the IDs of records which are in the larger collection

lib/restforce/db/client.rb

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -52,24 +52,22 @@ def initialize(**_)
5252
# Time.now,
5353
# )
5454
#
55-
# #=> #<Restforce::Mash
56-
# latestDateCovered="2015-05-18T22:31:00.000+0000"
57-
# earliestDateAvailable="2015-04-11T06:44:00.000+0000"
58-
# deletedRecords=[
59-
# #<Restforce::Mash
60-
# deletedDate="2015-05-18T22:31:17.000+0000"
61-
# id="a001a000001a5vOAAQ"
62-
# >
63-
# ]
64-
# >
55+
# #=> [
56+
# #<Restforce::Mash
57+
# deletedDate="2015-05-18T22:31:17.000+0000"
58+
# id="a001a000001a5vOAAQ"
59+
# >,
60+
# ]
6561
#
66-
# Returns a Restforce::Mash with a `deletedRecords` key.
62+
# Returns an Array of Restforce::Mash objects.
6763
def get_deleted_between(sobject, start_time, end_time = Time.now)
68-
api_get(
64+
response = api_get(
6965
"sobjects/#{sobject}/deleted",
7066
start: start_time.utc.iso8601,
7167
end: end_time.utc.iso8601,
72-
).body
68+
)
69+
70+
Array(response.body["deletedRecords"])
7371
end
7472

7573
end

test/lib/restforce/db/cleaner_test.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,9 @@
7878
let(:runner) { Restforce::DB::Runner.new(0, Time.now - 300) }
7979
let(:cleaner) { Restforce::DB::Cleaner.new(mapping, runner) }
8080
let(:dummy_response) do
81-
Struct.new(:deletedRecords).new([
81+
[
8282
Restforce::Mash.new(id: salesforce_id),
83-
])
83+
]
8484
end
8585

8686
before do

0 commit comments

Comments
 (0)