SQS 0.1.5 → 0.1.6

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.
data/CHANGELOG CHANGED
@@ -1,3 +1,14 @@
1
+ 0.1.6
2
+ 2008-02-19
3
+ * Maintenance release to keep up with Amazon SQS API changes. All but one test should be
4
+ passing. See next bullet.
5
+ * Still experiencing the problem outlined here:
6
+ http://developer.amazonwebservices.com/connect/thread.jspa?threadID=15798
7
+ * Added a random string to the test queues to allow deletion in teardown (without waiting for
8
+ 60 seconds of propagation).
9
+ * Updated to require assert_statistically 0.2.1 (was using 0.1.1). Some tests may fail
10
+ with 0.1.1.
11
+
1
12
  0.1.5
2
13
  2007-07-18
3
14
  * sqs_queue_test.rb is now dependent on the assert_statistically gem. You can still
data/test/all_tests.rb CHANGED
@@ -2,5 +2,3 @@
2
2
  dir = File.expand_path( File.dirname( __FILE__ ) )
3
3
 
4
4
  Dir[File.join( File.join( File.dirname( __FILE__ ), 'unit' ), "*_test.rb" )].each { |f| require f }
5
-
6
-
@@ -6,17 +6,31 @@ require "#{File.expand_path( File.dirname( __FILE__ ) )}/test_setup"
6
6
 
7
7
  class SQS_GrantTest < Test::Unit::TestCase
8
8
  def setup
9
- @queue_prefix = 'testGRANTEE'
9
+ @used_prefixes ||= {}
10
+
11
+ @queue_prefix = "testGRANTEE#{rand( 10040932 )}"
12
+ @queue_prefix = "testGRANTEE#{rand( 10040932 )}" while @used_prefixes[@queue_prefix]
13
+
14
+ @used_prefixes[@queue_prefix] = true
15
+
10
16
  @q = SQS.create_queue( @queue_prefix ) unless SQStest.skip_live_tests?
11
17
  end
12
18
  def teardown
13
- SQS.list_queues( @queue_prefix ).each { |q| q.delete! } unless SQStest.skip_live_tests?
19
+ unless SQStest.skip_live_tests?
20
+ SQS.list_queues( @queue_prefix ).each do |q|
21
+ begin
22
+ q.delete! if q.exists?
23
+ rescue SQS::AWSSimpleQueueServiceNonExistentQueue
24
+ # Note that it's possible that the queue existed in
25
+ # the exists? clause, but does not exist in the delete clause
26
+ end
27
+ end
28
+ end
14
29
  print SQS.counter if SQStest.print_counter?
15
30
  end
16
31
 
17
32
  unless SQStest.skip_live_tests?
18
33
 
19
-
20
34
  end
21
35
 
22
36
 
@@ -15,11 +15,26 @@ end
15
15
 
16
16
  class SQS_MessageTest < Test::Unit::TestCase
17
17
  def setup
18
- @queue_prefix = 'testMSG'
18
+ @used_prefixes ||= {}
19
+
20
+ @queue_prefix = "testMSG#{rand( 10040932 )}"
21
+ @queue_prefix = "testMSG#{rand( 10040932 )}" while @used_prefixes[@queue_prefix]
22
+
23
+ @used_prefixes[@queue_prefix] = true
24
+
19
25
  @q = SQS.create_queue( @queue_prefix ) unless SQStest.skip_live_tests?
20
26
  end
21
27
  def teardown
22
- SQS.list_queues( @queue_prefix ).each { |q| q.delete! } unless SQStest.skip_live_tests?
28
+ unless SQStest.skip_live_tests?
29
+ SQS.list_queues( @queue_prefix ).each do |q|
30
+ begin
31
+ q.delete! if q.exists?
32
+ rescue SQS::AWSSimpleQueueServiceNonExistentQueue
33
+ # Note that it's possible that the queue existed in
34
+ # the exists? clause, but does not exist in the delete clause
35
+ end
36
+ end
37
+ end
23
38
  print SQS.counter if SQStest.print_counter?
24
39
  end
25
40
 
@@ -7,6 +7,7 @@ require "#{File.expand_path( File.dirname( __FILE__ ) )}/test_setup"
7
7
  require 'rubygems'
8
8
  require 'assert_statistically'
9
9
 
10
+ gem 'assert_statistically', '>= 0.2.1'
10
11
 
11
12
  class SQS_QueueTest < Test::Unit::TestCase
12
13
  def self.other_aws_account
@@ -14,17 +15,27 @@ class SQS_QueueTest < Test::Unit::TestCase
14
15
  end
15
16
 
16
17
  def setup
17
- @queue_prefix = 'test_queue_'
18
- @q = SQStest.skip_live_tests? ? SQS::Queue.new( 'http://nowhere.com/nothing' ) : SQS.create_queue( @queue_prefix )
19
-
20
- unless SQStest.skip_live_tests?
21
- assert_statistically( :of => 3, :min => 1, :sleep => 0.25 ) do
22
- begin
23
- @q = SQS.get_queue( @queue_prefix )
24
- rescue
25
- false
26
- else
27
- true
18
+ @used_prefixes ||= {}
19
+
20
+ @queue_prefix = "test_queue_#{rand( 10040932 )}"
21
+ @queue_prefix = "test_queue_#{rand( 10040932 )}" while @used_prefixes[@queue_prefix]
22
+
23
+ @used_prefixes[@queue_prefix] = true
24
+
25
+ if SQStest.skip_live_tests?
26
+ @q = SQS::Queue.new( 'http://nowhere.com/nothing' )
27
+ else
28
+ @q = SQS.create_queue( @queue_prefix )
29
+
30
+ unless @q.exists?
31
+ assert_statistically( :of => 2, :after => lambda{ |i,s| sleep 0.25 } ) do
32
+ begin
33
+ @q = SQS.get_queue( @queue_prefix )
34
+ rescue
35
+ false
36
+ else
37
+ true
38
+ end
28
39
  end
29
40
  end
30
41
  end
@@ -32,7 +43,12 @@ class SQS_QueueTest < Test::Unit::TestCase
32
43
  def teardown
33
44
  unless SQStest.skip_live_tests?
34
45
  SQS.list_queues( @queue_prefix ).each do |q|
35
- q.delete!
46
+ begin
47
+ q.delete! if q.exists?
48
+ rescue SQS::AWSSimpleQueueServiceNonExistentQueue
49
+ # Note that it's possible that the queue existed in
50
+ # the exists? clause, but does not exist in the delete clause
51
+ end
36
52
  end
37
53
  end
38
54
 
@@ -40,6 +56,7 @@ class SQS_QueueTest < Test::Unit::TestCase
40
56
  end
41
57
 
42
58
  unless SQStest.skip_live_tests?
59
+
43
60
  def test_delete
44
61
  assert @q.is_a?( SQS::Queue )
45
62
  q2 = SQS.get_queue( @queue_prefix )
@@ -48,6 +65,11 @@ class SQS_QueueTest < Test::Unit::TestCase
48
65
 
49
66
  assert @q.delete
50
67
 
68
+ # Per the specs, it can take 60 seconds to delete a queue. Argh.
69
+ # http://docs.amazonwebservices.com/AWSSimpleQueueService/2007-05-01/SQSDeveloperGuide/
70
+ # See API Reference -> Query and SOAP API Reference -> DeleteQueue
71
+ sleep 60
72
+
51
73
  begin
52
74
  q3 = SQS.get_queue( @queue_prefix )
53
75
  rescue
@@ -106,29 +128,29 @@ class SQS_QueueTest < Test::Unit::TestCase
106
128
  (1..10).to_a.each do |i|
107
129
  @q.send_message( "I am receiving message ##{i}" )
108
130
  end
109
-
110
- sleep 5
111
-
112
- begin
113
- @q.delete
114
- rescue
115
- assert_equal 'SQS::AWSSimpleQueueServiceNonEmptyQueue', $!.class.name
116
- else
117
- flunk 'Was supposed to raise an SQS::AWSSimpleQueueServiceNonEmptyQueue'
131
+
132
+ assert_statistically( :of => 3, :after => lambda{ |i,s| sleep( i * 5 ) } ) do
133
+ begin
134
+ @q.delete
135
+ rescue
136
+ 'SQS::AWSSimpleQueueServiceNonEmptyQueue' == $!.class.name
137
+ else
138
+ false
139
+ end
118
140
  end
119
141
 
120
142
  assert_nothing_raised do
121
143
  @q.force_delete
122
144
  end
123
145
 
124
- sleep 5
125
-
126
- begin
127
- q = SQS.get_queue( @queue_prefix )
128
- rescue
129
- assert_equal 'SQS::UnavailableQueue', $!.class.name
130
- else
131
- flunk 'Was supposed to raise an SQS::UnavailableQueue'
146
+ assert_statistically( :of => 3, :after => lambda{ |i,s| sleep( i * 0.5 ) } ) do
147
+ begin
148
+ q = SQS.get_queue( @queue_prefix )
149
+ rescue
150
+ 'SQS::UnavailableQueue' == $!.class.name
151
+ else
152
+ false
153
+ end
132
154
  end
133
155
  end
134
156
 
@@ -140,12 +162,13 @@ class SQS_QueueTest < Test::Unit::TestCase
140
162
  assert q2.exist?
141
163
 
142
164
  assert @q.delete
143
- sleep 2
144
-
145
- assert !@q.exists?
146
- assert !@q.exist?
147
- assert !q2.exists?
148
- assert !q2.exist?
165
+
166
+ # Per the specs, it can take 60 seconds to delete a queue. Argh.
167
+ # http://docs.amazonwebservices.com/AWSSimpleQueueService/2007-05-01/SQSDeveloperGuide/
168
+ # See API Reference -> Query and SOAP API Reference -> DeleteQueue
169
+ assert_statistically( :of => 6, :before => lambda{ |i,s| sleep 10 } ) do
170
+ !( @q.exists? || @q.exist? || q2.exists? || q2.exist? )
171
+ end
149
172
 
150
173
  q3 = SQS::Queue.new( 'http://borker.borked/borkee' )
151
174
  assert !q3.exists?
@@ -170,7 +193,7 @@ class SQS_QueueTest < Test::Unit::TestCase
170
193
  #
171
194
  #Also, the Amazon API allows you to post a body to a URL
172
195
  # with query parameters in it, to send a message up to 256K
173
- # in length. Something to consider.
196
+ # in length. Something to consider.
174
197
  end
175
198
 
176
199
  def test_get_and_set_queue_attributes
@@ -186,7 +209,7 @@ class SQS_QueueTest < Test::Unit::TestCase
186
209
  assert_nothing_raised do
187
210
  @q.get_queue_attributes( true )
188
211
  end
189
- assert_statistically( :of => 10, :min => 1, :sleep => 1 ) do
212
+ assert_statistically( :of => 10, :after => lambda{ |i,s| sleep( i * 0.25 ) } ) do
190
213
  @q.get_queue_attributes( true )
191
214
  400 == @q.attributes[:VisibilityTimeout]
192
215
  end
@@ -236,28 +259,31 @@ class SQS_QueueTest < Test::Unit::TestCase
236
259
 
237
260
  # Update happens in situ
238
261
  assert_equal 500, @q.visibility_timeout
239
- assert_statistically( :of => 10, :min => 1, :sleep => 1 ) do
262
+ assert_statistically( :of => 10, :after => lambda{ |i,s| sleep( i * 0.5 ) } ) do
240
263
  @q.visibility_timeout( true ) == 500
241
264
  end
242
265
  end
243
266
 
244
267
  def test_empty?
245
268
  assert @q.empty?
246
-
269
+
247
270
  @q.send_message( 'no longer empty' )
248
- sleep 3
249
- assert !@q.empty?
271
+ assert_statistically( :of => 3, :after => lambda{ |i,s| sleep( i * 0.5 ) } ) do
272
+ !@q.empty?
273
+ end
250
274
 
251
275
  @q.send_message( 'no longer empty again' )
252
276
 
253
- assert !@q.empty?
277
+ assert_statistically( :of => 3, :after => lambda{ |i,s| sleep 0.5 } ) do
278
+ !@q.empty?
279
+ end
254
280
 
255
- sleep 3
256
281
  while m = @q.receive_message
257
282
  m.delete
283
+ sleep 1
258
284
  end
259
-
260
- assert_statistically( :min => 1, :of => 3, :sleep => 1, :message => 'Attempt %d failed' ) do
285
+
286
+ assert_statistically( :of => 3, :after => lambda{ |i,s| sleep( i * 1 ) }, :message => 'Attempt %d failed' ) do
261
287
  @q.empty?
262
288
  end
263
289
  end
@@ -265,16 +291,20 @@ class SQS_QueueTest < Test::Unit::TestCase
265
291
 
266
292
  def test_peek_message
267
293
  @q.send_message( 'I am receiving a message from beyond' )
268
- sleep 2
269
- m = @q.peek_message
270
294
 
271
- assert m.is_a?( SQS::Message )
295
+ m = nil
296
+ assert_statistically( :of => 3, :after => lambda{ |i,s| sleep( i * 3 ) } ) do
297
+ m = @q.peek_message
298
+ m.is_a?( SQS::Message )
299
+ end
272
300
  assert_equal @q, m.queue
273
301
  assert_equal 'I am receiving a message from beyond', m.body
274
302
 
275
- sleep 2
276
- m2 = @q.receive_message
277
- assert m.is_a?( SQS::Message )
303
+ m2 = nil
304
+ assert_statistically( :of => 3, :after => lambda{ |i,s| sleep 0.5 } ) do
305
+ m2 = @q.receive_message
306
+ m2.is_a?( SQS::Message )
307
+ end
278
308
  assert_equal m.id, m2.id
279
309
  assert_equal m.body, m2.body
280
310
  end
@@ -289,10 +319,11 @@ class SQS_QueueTest < Test::Unit::TestCase
289
319
  @q.send_message( "I am receiving message #{i}" )
290
320
  end
291
321
 
292
- sleep 10
293
-
294
- messages = @q.peek_messages :count => 2
295
- assert messages.size == 1 || messages.size == 2, "Weird array size: #{messages.size}"
322
+ messages = nil
323
+ assert_statistically( :of => 3, :after => lambda{ |i,s| sleep( i * 0.5 ) } ) do
324
+ messages = @q.peek_messages :count => 2
325
+ messages.size == 1 || messages.size == 2
326
+ end
296
327
 
297
328
  assert messages.is_a?( Array )
298
329
  messages.each do |m|
@@ -305,20 +336,21 @@ class SQS_QueueTest < Test::Unit::TestCase
305
336
  assert messages.is_a?( Array )
306
337
  assert messages.size > 0 && messages.size < 12, "Weird array size: #{messages.size}"
307
338
 
308
- sleep 2
309
-
310
- messages = @q.receive_messages :count => 12
311
- assert messages.is_a?( Array )
312
- assert messages.size > 0 && messages.size < 12, "Weird array size: #{messages.size}"
339
+ assert_statistically( :of => 3, :after => lambda{ |i,s| sleep( i * 0.5 ) } ) do
340
+ messages = @q.receive_messages :count => 12
341
+ messages.is_a?( Array ) && messages.size > 0 && messages.size < 12
342
+ end
313
343
  end
314
344
 
315
-
316
345
  def test_receive_message
317
346
  @q.send_message( 'I am receiving a message from beyond' )
318
- sleep 2
319
- m = @q.receive_message
320
347
 
321
- assert m.is_a?( SQS::Message )
348
+ m = nil
349
+ assert_statistically( :of => 3, :after => lambda{ |i,s| sleep( i * 0.5 ) } ) do
350
+ m = @q.receive_message
351
+ m.is_a?( SQS::Message )
352
+ end
353
+
322
354
  assert_equal @q, m.queue
323
355
  assert_equal 'I am receiving a message from beyond', m.body
324
356
  end
@@ -333,10 +365,11 @@ class SQS_QueueTest < Test::Unit::TestCase
333
365
  @q.send_message( "I am receiving message #{i}" )
334
366
  end
335
367
 
336
- sleep 10
337
-
338
- messages = @q.receive_messages :count => 2
339
- assert messages.size == 1 || messages.size == 2, "Weird array size: #{messages.size}"
368
+ messages = nil
369
+ assert_statistically( :of => 3, :after => lambda{ |i,s| sleep( i * 0.5 ) } ) do
370
+ messages = @q.receive_messages :count => 2
371
+ messages.size == 1 || messages.size == 2
372
+ end
340
373
 
341
374
  assert messages.is_a?( Array )
342
375
  messages.each do |m|
@@ -350,7 +383,6 @@ class SQS_QueueTest < Test::Unit::TestCase
350
383
  assert messages.size > 0 && messages.size < 12, "Weird array size: #{messages.size}"
351
384
  end
352
385
 
353
-
354
386
  class DUMMY
355
387
  def self.email
356
388
  SQS_QueueTest::other_aws_account[:email]
@@ -362,36 +394,42 @@ class SQS_QueueTest < Test::Unit::TestCase
362
394
 
363
395
  assert_equal 1, @q.list_grants.size
364
396
 
365
- assert @q.add_grant( :email => SQStest.other_aws_account[:email], :permission => :full )
366
- assert_statistically( :of => 3, :min => 1, :sleep => 0.5 ) do
367
- 2 == @q.list_grants.size
368
- end
369
-
370
397
  assert @q.add_grant( :email => SQStest.other_aws_account[:email], :permission => :send )
371
- assert_statistically( :of => 3, :min => 1, :sleep => 0.5 ) do
372
- 3 == @q.list_grants.size
398
+ assert_statistically( :of => 6, :after => lambda{ |i,s| sleep 5 } ) do
399
+ grants = @q.list_grants
400
+ 2 == grants.size
373
401
  end
374
402
 
375
403
  assert @q.add_grant( :email => SQStest.other_aws_account[:email], :permission => :receive )
376
- assert_statistically( :of => 3, :min => 1, :sleep => 0.5 ) do
377
- 4 == @q.list_grants.size
404
+ assert_statistically( :of => 6, :after => lambda{ |i,s| sleep 5 } ) do
405
+ grants = @q.list_grants
406
+ 3 == grants.size
407
+ end
408
+
409
+ assert @q.add_grant( :email => SQStest.other_aws_account[:email], :permission => :full )
410
+ assert_statistically( :of => 6, :after => lambda{ |i,s| sleep 5 } ) do
411
+ grants = @q.list_grants
412
+ 4 == grants.size
378
413
  end
379
414
 
380
415
  assert_nothing_raised do
381
416
  #DUMMY responds to :email (is not an address itself)
382
417
  @q.add_grant( :email => DUMMY, :permission => :receive )
383
418
  end
384
- assert_equal 4, @q.list_grants.size
419
+ assert_statistically( :of => 6, :after => lambda{ |i,s| sleep 5 } ) do
420
+ grants = @q.list_grants
421
+ 4 == grants.size
422
+ end
385
423
 
386
424
  begin
387
425
  @q.add_grant( :email => 'invalid@email.address', :permission => :receive )
388
426
  rescue
389
- assert_equal 'SQS::ServiceUnavailable', $!.class.name
427
+ assert_equal 'SQS::InvalidParameterValue', $!.class.name
390
428
  else
391
- flunk "Was supposed to raise an SQS::ServiceUnavailable"
429
+ flunk "Was supposed to raise an SQS::InvalidParameterValue"
392
430
  end
393
431
  end
394
-
432
+
395
433
  def test_remove_grant
396
434
  assert_respond_to @q, :remove_grant
397
435
 
@@ -441,13 +479,55 @@ class SQS_QueueTest < Test::Unit::TestCase
441
479
  end
442
480
  end
443
481
  end
444
-
482
+
483
+ def test_SQS_thread_15798
484
+ # See http://developer.amazonwebservices.com/connect/thread.jspa?threadID=15798
485
+
486
+ # Add a receive permission
487
+ @q.add_grant( :email => SQStest.other_aws_account[:email], :permission => :receive)
488
+
489
+ # There should be two total
490
+ grants = nil
491
+ assert_statistically( :of => 4, :after => lambda{ |i,s| sleep( i * 0.25 ) } ) do
492
+ grants = @q.list_grants
493
+ 2 == grants.size
494
+ end
495
+
496
+ # There should be one send (my account)
497
+ grants = @q.list_grants( :permission => :send )
498
+ assert_equal 1, grants.size
499
+ grants.each do |g|
500
+ assert_kind_of SQS::Grant, g
501
+ assert_equal SQStest.my_aws_account[:display_name], g.display_name
502
+ end
503
+
504
+ # There should be one receive and it should be the other users
505
+ grants = @q.list_grants( :permission => :receive )
506
+ # This should fail until the issue is resolved.
507
+ assert_equal 1, grants.size, "Apparently http://developer.amazonwebservices.com/connect/thread.jspa?threadID=15798 is still unresolved"
508
+ assert_kind_of SQS::Grant, grants.first
509
+ assert_equal SQStest.other_aws_account[:display_name], grants.first.display_name
510
+
511
+ # There should be one with my email address
512
+ grants = @q.list_grants( :email => SQStest.my_aws_account[:email] )
513
+ assert_equal 1, grants.size
514
+ assert_kind_of SQS::Grant, grants.first
515
+ assert_equal SQStest.other_aws_account[:display_name], grants.first.display_name
516
+
517
+ # There should be one with the other email address
518
+ grants = @q.list_grants( :email => SQStest.other_aws_account[:email] )
519
+ # This should fail until the issue is resolved.
520
+ assert_equal 1, grants.size, "Apparently http://developer.amazonwebservices.com/connect/thread.jspa?threadID=15798 is still unresolved"
521
+ assert_kind_of SQS::Grant, grants.first
522
+ assert_equal SQStest.other_aws_account[:display_name], grants.first.display_name
523
+ end
524
+
445
525
  def test_list_grants
446
526
  assert_respond_to @q, :list_grants
447
527
  grant = @q.list_grants
448
528
  assert_equal 1, grant.size
449
529
  grant = grant.first
450
- assert_equal SQS.permissions[:full], grant.permission
530
+ assert_equal SQS.permissions[:full], grant.permission
451
531
  assert_equal nil, grant.email
452
532
  assert_equal SQStest.my_aws_account[:display_name], grant.display_name
453
533
 
@@ -455,7 +535,7 @@ class SQS_QueueTest < Test::Unit::TestCase
455
535
 
456
536
  grants = @q.list_grants
457
537
  if grants.size != 2
458
- assert_statistically( :of => 4, :min => 1, :sleep => 0.5 ) do
538
+ assert_statistically( :of => 4, :after => lambda{ |i,s| sleep( i * 0.25 ) } ) do
459
539
  grants = @q.list_grants
460
540
  2 == grants.size
461
541
  end
@@ -473,24 +553,8 @@ class SQS_QueueTest < Test::Unit::TestCase
473
553
  flunk "'#{grant.display_name}' is an unknown display name"
474
554
  end
475
555
  end
476
-
477
-
478
- grants = @q.list_grants( :email => SQStest.other_aws_account[:email] )
479
- assert_equal 1, grants.size
480
- grants.each do |g|
481
- assert_kind_of SQS::Grant, g
482
- assert_equal SQStest.other_aws_account[:display_name], g.display_name
483
- end
484
-
485
- grants = @q.list_grants( :permission => :receive )
486
- assert_equal 1, grants.size
487
- grants.each do |g|
488
- assert_kind_of SQS::Grant, g
489
- assert_equal SQStest.other_aws_account[:display_name], g.display_name
490
- end
491
556
  end
492
557
 
493
-
494
558
  def test_each_message
495
559
  assert_respond_to @q, :each_message
496
560
  1.upto( 10 ) do |i|
@@ -585,6 +649,7 @@ class SQS_QueueTest < Test::Unit::TestCase
585
649
  q.delete
586
650
  end
587
651
  end
652
+
588
653
  end
589
654
 
590
655
  def test_default_visibility_timeout
@@ -17,7 +17,13 @@ end
17
17
 
18
18
  class SQSTest < Test::Unit::TestCase
19
19
  def setup
20
- @queue_prefix = 'testSQS'
20
+ @used_prefixes ||= {}
21
+
22
+ @queue_prefix = "testSQS#{rand( 10040932 )}"
23
+ @queue_prefix = "testSQS#{rand( 10040932 )}" while @used_prefixes[@queue_prefix]
24
+
25
+ @used_prefixes[@queue_prefix] = true
26
+
21
27
  @q = SQS.create_queue( @queue_prefix ) unless SQStest.skip_live_tests?
22
28
 
23
29
  SQS.add_reasons_to_retry 'ServiceUnavailable'
@@ -25,7 +31,16 @@ class SQSTest < Test::Unit::TestCase
25
31
  SQS.retry_attempts = 10
26
32
  end
27
33
  def teardown
28
- SQS.list_queues( @queue_prefix ).each { |q| q.delete! } unless SQStest.skip_live_tests?
34
+ unless SQStest.skip_live_tests?
35
+ SQS.list_queues( @queue_prefix ).each do |q|
36
+ begin
37
+ q.delete! if q.exists?
38
+ rescue SQS::AWSSimpleQueueServiceNonExistentQueue
39
+ # Note that it's possible that the queue existed in
40
+ # the exists? clause, but does not exist in the delete clause
41
+ end
42
+ end
43
+ end
29
44
  print SQS.counter if SQStest.print_counter?
30
45
  end
31
46
 
@@ -94,7 +109,7 @@ class SQSTest < Test::Unit::TestCase
94
109
  begin
95
110
  SQS.call_web_service( :Something => 'for nothing' )
96
111
  rescue
97
- assert_equal 'SQS::InvalidAction', $!.class.name
112
+ assert_equal 'SQS::MissingParameter', $!.class.name
98
113
  else
99
114
  flunk "Was supposed to raise an SQS::InvalidAction"
100
115
  end
@@ -107,7 +122,6 @@ class SQSTest < Test::Unit::TestCase
107
122
  end
108
123
  end
109
124
 
110
-
111
125
  def test_get_exception_class
112
126
  assert_raises ArgumentError do
113
127
  SQS.get_exception_class
@@ -517,7 +531,6 @@ class SQSTest < Test::Unit::TestCase
517
531
  assert_equal 'SENDMESSAGE', SQS.permissions( 'SENDMESSAGE' )
518
532
  assert_equal 'FULLCONTROL', SQS.permissions( 'FULLCONTROL' )
519
533
  end
520
-
521
534
  end
522
535
 
523
536
 
metadata CHANGED
@@ -1,33 +1,28 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.0
3
- specification_version: 1
4
2
  name: SQS
5
3
  version: !ruby/object:Gem::Version
6
- version: 0.1.5
7
- date: 2007-07-18 00:00:00 -07:00
8
- summary: A Ruby interface to Amazon's Simple Queue Service
9
- require_paths:
10
- - lib
11
- email: z@wzph.com
12
- homepage:
13
- rubyforge_project: SQS
14
- description: SQS is a Ruby interface to Amazon's Simple Queue Service. SQS uses the Query API, exposing all the published API calls, plus a few more. For more information on the Simple Queue Service, see http://www.amazonaws.com
15
- autorequire: sqs
16
- default_executable:
17
- bindir: bin
18
- has_rdoc: false
19
- required_ruby_version: !ruby/object:Gem::Version::Requirement
20
- requirements:
21
- - - ">"
22
- - !ruby/object:Gem::Version
23
- version: 0.0.0
24
- version:
4
+ version: 0.1.6
25
5
  platform: ruby
26
- signing_key:
27
- cert_chain:
28
- post_install_message:
29
6
  authors:
30
- - Zachary Holt
7
+ - Zach Holt
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-02-20 00:00:00 -08:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description: SQS is a Ruby interface to Amazon's Simple Queue Service. SQS uses the Query API, exposing all the published API calls, plus a few more. For more information on the Simple Queue Service, see http://www.amazonaws.com
17
+ email: z@wzph.com
18
+ executables: []
19
+
20
+ extensions: []
21
+
22
+ extra_rdoc_files:
23
+ - README
24
+ - MIT-LICENSE
25
+ - CHANGELOG
31
26
  files:
32
27
  - lib/sqs.rb
33
28
  - lib/sqs/grant.rb
@@ -42,6 +37,32 @@ files:
42
37
  - README
43
38
  - MIT-LICENSE
44
39
  - CHANGELOG
40
+ has_rdoc: false
41
+ homepage: http://sqs.rubyforge.org
42
+ post_install_message:
43
+ rdoc_options: []
44
+
45
+ require_paths:
46
+ - lib
47
+ required_ruby_version: !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ version: "0"
52
+ version:
53
+ required_rubygems_version: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ version: "0"
58
+ version:
59
+ requirements: []
60
+
61
+ rubyforge_project: SQS
62
+ rubygems_version: 1.0.1
63
+ signing_key:
64
+ specification_version: 2
65
+ summary: A Ruby interface to Amazon's Simple Queue Service
45
66
  test_files:
46
67
  - test/all_tests.rb
47
68
  - test/unit/sqs_grant_test.rb
@@ -49,17 +70,3 @@ test_files:
49
70
  - test/unit/sqs_queue_test.rb
50
71
  - test/unit/sqs_test.rb
51
72
  - test/unit/test_setup.rb
52
- rdoc_options: []
53
-
54
- extra_rdoc_files:
55
- - README
56
- - MIT-LICENSE
57
- - CHANGELOG
58
- executables: []
59
-
60
- extensions: []
61
-
62
- requirements: []
63
-
64
- dependencies: []
65
-