@@ -28,7 +28,7 @@ def setup
2828 CONFIG = %[
2929 aws_key_id test_key_id
3030 aws_sec_key test_sec_key
31- s3_bucket test_bucket
31+ s3_buckets test_bucket
3232 buffer_type memory
3333 <sqs>
3434 queue_name test_queue
@@ -47,7 +47,7 @@ def test_default
4747 actual = {
4848 aws_key_id : d . instance . aws_key_id ,
4949 aws_sec_key : d . instance . aws_sec_key ,
50- s3_bucket : d . instance . s3_bucket ,
50+ s3_buckets : d . instance . s3_buckets ,
5151 s3_region : d . instance . s3_region ,
5252 sqs_queue_name : d . instance . sqs . queue_name ,
5353 extractor_ext : extractor . ext ,
@@ -56,7 +56,7 @@ def test_default
5656 expected = {
5757 aws_key_id : "test_key_id" ,
5858 aws_sec_key : "test_sec_key" ,
59- s3_bucket : "test_bucket" ,
59+ s3_buckets : "test_bucket" ,
6060 s3_region : "us-east-1" ,
6161 sqs_queue_name : "test_queue" ,
6262 extractor_ext : "gz" ,
@@ -65,6 +65,77 @@ def test_default
6565 assert_equal ( expected , actual )
6666 end
6767
68+ def test_with_multiple_buckets
69+ conf = %[
70+ aws_key_id test_key_id
71+ aws_sec_key test_sec_key
72+ s3_buckets test_bucket1,test_bucket2
73+ buffer_type memory
74+ <sqs>
75+ queue_name test_queue
76+ queue_owner_aws_account_id 123456789123
77+ </sqs>
78+ ]
79+ d = create_driver ( conf )
80+ extractor = d . instance . instance_variable_get ( :@extractor )
81+ actual = {
82+ aws_key_id : d . instance . aws_key_id ,
83+ aws_sec_key : d . instance . aws_sec_key ,
84+ s3_buckets : d . instance . s3_buckets ,
85+ s3_region : d . instance . s3_region ,
86+ sqs_queue_name : d . instance . sqs . queue_name ,
87+ extractor_ext : extractor . ext ,
88+ extractor_content_type : extractor . content_type
89+ }
90+ expected = {
91+ aws_key_id : "test_key_id" ,
92+ aws_sec_key : "test_sec_key" ,
93+ s3_buckets : "test_bucket1,test_bucket2" ,
94+ s3_region : "us-east-1" ,
95+ sqs_queue_name : "test_queue" ,
96+ extractor_ext : "gz" ,
97+ extractor_content_type : "application/x-gzip"
98+ }
99+ assert_equal ( expected , actual )
100+ end
101+
102+ def test_with_multiple_buckets_and_sqs_queue_url_override
103+ conf = %[
104+ aws_key_id test_key_id
105+ aws_sec_key test_sec_key
106+ s3_buckets test_bucket1,test_bucket2
107+ buffer_type memory
108+ <sqs>
109+ queue_name test_queue
110+ queue_owner_aws_account_id 123456789123
111+ queue_url https://sqs.us-east-1.amazonaws.com/345678912345/test_override_queue
112+ </sqs>
113+ ]
114+ d = create_driver ( conf )
115+ extractor = d . instance . instance_variable_get ( :@extractor )
116+ actual = {
117+ aws_key_id : d . instance . aws_key_id ,
118+ aws_sec_key : d . instance . aws_sec_key ,
119+ s3_buckets : d . instance . s3_buckets ,
120+ s3_region : d . instance . s3_region ,
121+ sqs_queue_name : d . instance . sqs . queue_name ,
122+ extractor_ext : extractor . ext ,
123+ extractor_content_type : extractor . content_type ,
124+ sqs_queue_url : d . instance . sqs . queue_url
125+ }
126+ expected = {
127+ aws_key_id : "test_key_id" ,
128+ aws_sec_key : "test_sec_key" ,
129+ s3_buckets : "test_bucket1,test_bucket2" ,
130+ s3_region : "us-east-1" ,
131+ sqs_queue_name : "test_queue" ,
132+ extractor_ext : "gz" ,
133+ extractor_content_type : "application/x-gzip" ,
134+ sqs_queue_url : "https://sqs.us-east-1.amazonaws.com/345678912345/test_override_queue"
135+ }
136+ assert_equal ( expected , actual )
137+ end
138+
68139 def test_empty
69140 assert_raise ( Fluent ::ConfigError ) do
70141 create_driver ( "" )
@@ -75,7 +146,7 @@ def test_without_sqs_section
75146 conf = %[
76147 aws_key_id test_key_id
77148 aws_sec_key test_sec_key
78- s3_bucket test_bucket
149+ s3_buckets test_bucket
79150 ]
80151 assert_raise_message ( "'<sqs>' sections are required" ) do
81152 create_driver ( conf )
@@ -137,7 +208,7 @@ def test_sqs_endpoint_with_invalid_endpoint(endpoint)
137208 conf = <<"EOS"
138209aws_key_id test_key_id
139210aws_sec_key test_sec_key
140- s3_bucket test_bucket
211+ s3_buckets test_bucket
141212buffer_type memory
142213<sqs>
143214 queue_name test_queue
0 commit comments