1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00

Fixed bug in SQS :receive_message mock

This commit is contained in:
Joshua Krall 2012-01-04 04:00:36 -06:00
parent f07e59472f
commit 77d0a1b061

View file

@ -37,9 +37,9 @@ module Fog
max_number_of_messages = options['MaxNumberOfMessages'] || 1
now = Time.now
keys = queue[:messages].keys[0, max_number_of_messages]
messages = []
messages = queue[:messages].values_at(*keys).map do |m|
queue[:messages].values.each do |m|
message_id = m['MessageId']
invisible = if (received_handles = queue[:receipt_handles][message_id])
@ -49,9 +49,7 @@ module Fog
false
end
if invisible
nil
else
unless invisible
receipt_handle = Fog::Mock.random_base64(300)
queue[:receipt_handles][message_id] ||= {}
@ -62,11 +60,12 @@ module Fog
attrs['ApproximateReceiveCount'] = (attrs['ApproximateReceiveCount'] || 0) + 1
end
m.merge({
messages << m.merge({
'ReceiptHandle' => receipt_handle
})
break if messages.size >= max_number_of_messages
end
end.compact
end
response.body = {
'ResponseMetadata' => {