ralf 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/spec/ralf_spec.rb +86 -42
  2. metadata +1 -1
data/spec/ralf_spec.rb CHANGED
@@ -4,6 +4,12 @@ require 'ralf'
4
4
 
5
5
  describe Ralf do
6
6
 
7
+ before(:all) do
8
+ @key1 = {:name => 'log/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT', :data => 'This is content for key 1'}
9
+ @key2 = {:name => 'log/access_log-2010-02-10-00-07-28-EFREUTERGRSGDH', :data => 'This is content for key 2'}
10
+ @key3 = {:name => 'log/access_log-2010-02-11-00-09-32-SDHTFTFHDDDDDH', :data => 'This is content for key 3'}
11
+ end
12
+
7
13
  before(:each) do
8
14
  @default_params = {
9
15
  :config => File.dirname(__FILE__) + '/fixtures/config.yaml',
@@ -85,16 +91,16 @@ describe Ralf do
85
91
 
86
92
  it "should accept a range of 2 dates" do
87
93
  ralf = Ralf.new(@default_params.merge(:date => nil, :range => ['2010-02-10', '2010-02-12']))
88
- ralf.range.should eql('2010-02-10 - 2010-02-12')
94
+ ralf.range.to_s.should eql('2010-02-10..2010-02-12')
89
95
  end
90
96
 
91
97
  it "should accept a range starting with 1 date" do
92
98
  Date.should_receive(:today).any_number_of_times.and_return(Date.strptime('2010-02-17'))
93
99
  ralf = Ralf.new(@default_params.merge(:date => nil, :range => '2010-02-10'))
94
- ralf.range.should eql('2010-02-10 - 2010-02-17')
100
+ ralf.range.to_s.should eql('2010-02-10..2010-02-17')
95
101
 
96
102
  ralf = Ralf.new(@default_params.merge(:date => nil, :range => ['2010-02-10']))
97
- ralf.range.should eql('2010-02-10 - 2010-02-17')
103
+ ralf.range.to_s.should eql('2010-02-10..2010-02-17')
98
104
  end
99
105
 
100
106
  it "should accept a range defined by words" do
@@ -104,12 +110,12 @@ describe Ralf do
104
110
  )
105
111
 
106
112
  ralf = Ralf.new(@default_params.merge(:date => nil, :range => '2 days ago'))
107
- ralf.range.should eql('2010-02-15 - 2010-02-17')
113
+ ralf.range.to_s.should eql('2010-02-15..2010-02-17')
108
114
  end
109
115
 
110
116
  it "should accept a month and convert it to a range" do
111
117
  ralf = Ralf.new(@default_params.merge(:date => nil, :range => 'january'))
112
- ralf.range.should eql('2010-01-01 - 2010-01-31')
118
+ ralf.range.to_s.should eql('2010-01-01..2010-01-31')
113
119
  end
114
120
 
115
121
  end
@@ -119,11 +125,11 @@ describe Ralf do
119
125
  before(:each) do
120
126
  @ralf = Ralf.new(@default_params)
121
127
  @bucket1 = {:name => 'bucket1'}
122
- @bucket1.should_receive(:logging_info).any_number_of_times.and_return({ :enabled => true, :targetprefix => "log/access_log-" })
123
- @bucket1.should_receive(:name).any_number_of_times.and_return('media.kerdienstgemist.nl')
128
+ @bucket1.should_receive(:logging_info).any_number_of_times.and_return({ :enabled => true, :targetprefix => "log/access_log-", :targetbucket => @bucket1[:name] })
129
+ @bucket1.should_receive(:name).any_number_of_times.and_return(@bucket1[:name])
124
130
  @bucket2 = {:name => 'bucket2'}
125
- @bucket2.should_receive(:logging_info).any_number_of_times.and_return({ :enabled => false, :targetprefix => "log/" })
126
- @bucket2.should_receive(:name).any_number_of_times.and_return('media.kerdienstgemist.nl')
131
+ @bucket2.should_receive(:logging_info).any_number_of_times.and_return({ :enabled => false, :targetprefix => "log/", :targetbucket => @bucket2[:name] })
132
+ @bucket2.should_receive(:name).any_number_of_times.and_return(@bucket2[:name])
127
133
  end
128
134
 
129
135
  it "should find buckets with logging enabled" do
@@ -133,35 +139,73 @@ describe Ralf do
133
139
  @ralf.buckets_with_logging.should eql([@bucket1])
134
140
  end
135
141
 
136
- it "should save logging to disk" do
137
- @key1 = {:name => 'log/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT', :data => 'This is content'}
138
- @key2 = {:name => 'log/access_log-2010-02-10-00-07-28-EFREUTERGRSGDH', :data => 'This is content'}
139
- @bucket1.should_receive(:keys).any_number_of_times.and_return([@key1, @key2])
140
- @key1.should_receive(:name).any_number_of_times.and_return(@key1[:name])
141
- @key2.should_receive(:name).any_number_of_times.and_return(@key2[:name])
142
- @key1.should_receive(:data).any_number_of_times.and_return(@key1[:data])
143
- @key2.should_receive(:data).any_number_of_times.and_return(@key2[:data])
144
- File.should_receive(:makedirs).twice.with('/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10').and_return(true)
145
- File.should_receive(:exists?).once.with( '/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10/access_log-2010-02-10-00-07-28-EFREUTERGRSGDH').and_return(true)
146
- File.should_receive(:exists?).once.with( '/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT').and_return(false)
147
- File.should_receive(:open).once.with( '/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT', "w").and_return(true)
142
+ it "should return the new organized path" do
143
+ @key1.should_receive(:name).and_return(@key1[:name])
144
+ @ralf.s3_organized_log_file(@bucket1, @key1).should eql('log/2010/02/10/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT')
145
+ end
146
+
147
+ describe "logging" do
148
+
149
+ before(:each) do
150
+ @key1.should_receive(:name).any_number_of_times.and_return(@key1[:name])
151
+ @key2.should_receive(:name).any_number_of_times.and_return(@key2[:name])
152
+ @key1.should_receive(:data).any_number_of_times.and_return(@key1[:data])
153
+ @key2.should_receive(:data).any_number_of_times.and_return(@key2[:data])
154
+ end
155
+
156
+ it "should save logging to disk" do
157
+ @bucket1.should_receive(:keys).any_number_of_times.and_return([@key1, @key2])
158
+
159
+ File.should_receive(:makedirs).twice.with('/Users/berl/S3/bucket1/log/2010/02/10').and_return(true)
160
+ File.should_receive(:exists?).once.with( '/Users/berl/S3/bucket1/log/2010/02/10/access_log-2010-02-10-00-07-28-EFREUTERGRSGDH').and_return(true)
161
+ File.should_receive(:exists?).once.with( '/Users/berl/S3/bucket1/log/2010/02/10/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT').and_return(false)
162
+ File.should_receive(:open).once.with( '/Users/berl/S3/bucket1/log/2010/02/10/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT', "w").and_return(true)
163
+
164
+ @ralf.save_logging_to_local_disk(@bucket1, '2010-02-10').should eql([@key1, @key2])
165
+ end
166
+
167
+ it "should save logging for range to disk" do
168
+ @bucket1.should_receive(:keys).any_number_of_times.and_return([@key1, @key2], [@key3], [])
169
+ @key3.should_receive(:name).any_number_of_times.and_return(@key3[:name])
170
+ @key3.should_receive(:data).any_number_of_times.and_return(@key3[:data])
171
+
172
+ @ralf.date = nil
173
+ @ralf.range = ['2010-02-10', '2010-02-12']
174
+
175
+ File.should_receive(:exists?).once.with( '/Users/berl/S3/bucket1/log/2010/02/10/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT').and_return(false)
176
+ File.should_receive(:exists?).once.with( '/Users/berl/S3/bucket1/log/2010/02/10/access_log-2010-02-10-00-07-28-EFREUTERGRSGDH').and_return(true)
177
+ File.should_receive(:exists?).once.with( '/Users/berl/S3/bucket1/log/2010/02/11/access_log-2010-02-11-00-09-32-SDHTFTFHDDDDDH').and_return(false)
178
+ File.should_receive(:open).once.with( '/Users/berl/S3/bucket1/log/2010/02/10/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT', "w").and_return(true)
179
+ File.should_receive(:open).once.with( '/Users/berl/S3/bucket1/log/2010/02/11/access_log-2010-02-11-00-09-32-SDHTFTFHDDDDDH', "w").and_return(true)
180
+
181
+ @ralf.save_logging(@bucket1).class.should eql(Range)
182
+ end
183
+
184
+ it "should save logging if a different targetbucket is given" do
185
+ @ralf.s3.should_receive(:bucket).and_return(@bucket1)
186
+ @bucket3 = {:name => 'bucket3'}
187
+ @bucket3.should_receive(:logging_info).any_number_of_times.and_return({ :enabled => false, :targetprefix => "log/", :targetbucket => 'bucket1' })
188
+ @bucket3.should_receive(:name).any_number_of_times.and_return(@bucket3[:name])
189
+ @bucket1.should_receive(:keys).any_number_of_times.and_return([@key1, @key2])
190
+
191
+ @ralf.save_logging_to_local_disk(@bucket3, '2010-02-10').should eql([@key1, @key2])
192
+ end
148
193
 
149
- @ralf.save_logging_to_local_disk(@bucket1).should eql([@key1, @key2])
150
194
  end
151
195
 
152
196
  it "should merge all logs" do
153
197
  out_string = StringIO.new
154
198
 
155
- Dir.should_receive(:glob).with('/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10/access_log-2010-02-10*').and_return(
156
- ['/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT',
157
- '/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10/access_log-2010-02-10-00-07-28-EFREUTERGRSGDH'])
199
+ Dir.should_receive(:glob).with('/Users/berl/S3/bucket1/log/2010/02/10/access_log-2010-02-10*').and_return(
200
+ ['/Users/berl/S3/bucket1/log/2010/02/10/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT',
201
+ '/Users/berl/S3/bucket1/log/2010/02/10/access_log-2010-02-10-00-07-28-EFREUTERGRSGDH'])
158
202
 
159
- File.should_receive(:open).with('/Users/berl/S3/s3_combined_media.kerdienstgemist.nl_2010-02-10.alf', "w").and_yield(out_string)
203
+ File.should_receive(:open).with('/Users/berl/S3/s3_combined_bucket1_2010-02-10.alf', "w").and_yield(out_string)
160
204
 
161
205
  LogMerge::Merger.should_receive(:merge).with(
162
206
  out_string,
163
- '/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT',
164
- '/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10/access_log-2010-02-10-00-07-28-EFREUTERGRSGDH'
207
+ '/Users/berl/S3/bucket1/log/2010/02/10/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT',
208
+ '/Users/berl/S3/bucket1/log/2010/02/10/access_log-2010-02-10-00-07-28-EFREUTERGRSGDH'
165
209
  )
166
210
 
167
211
  @ralf.merge_to_combined(@bucket1)
@@ -170,27 +214,27 @@ describe Ralf do
170
214
  end
171
215
 
172
216
  it "should save logs which have a targetprefix containing a '/'" do
173
- @ralf.local_log_dirname(@bucket1).should eql('/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10')
174
- @ralf.local_log_dirname(@bucket2).should eql('/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10')
217
+ @ralf.local_log_dirname(@bucket1).should eql('/Users/berl/S3/bucket1/log/2010/02/10')
218
+ @ralf.local_log_dirname(@bucket2).should eql('/Users/berl/S3/bucket2/log/2010/02/10')
175
219
  end
176
220
 
177
221
  it "should save to a subdir when a out_seperator is given" do
178
- @ralf.local_log_dirname(@bucket1).should eql('/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10')
222
+ @ralf.local_log_dirname(@bucket1).should eql('/Users/berl/S3/bucket1/log/2010/02/10')
179
223
 
180
224
  @ralf.out_seperator = ':year/w:week'
181
- @ralf.local_log_dirname(@bucket1).should eql('/Users/berl/S3/media.kerdienstgemist.nl/log/2010/w06')
225
+ @ralf.local_log_dirname(@bucket1).should eql('/Users/berl/S3/bucket1/log/2010/w06')
182
226
  end
183
227
 
184
228
  it "should get the proper directories" do
185
- @key.should_receive(:name).and_return('log/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT')
229
+ @key1.should_receive(:name).and_return('log/access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT')
186
230
  @ralf.local_log_file_basename_prefix(@bucket1).should eql('access_log-')
187
- @ralf.local_log_file_basename(@bucket1, @key).should eql('access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT')
188
- @ralf.local_log_dirname(@bucket1).should eql('/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10')
231
+ @ralf.local_log_file_basename(@bucket1, @key1).should eql('access_log-2010-02-10-00-05-32-ZDRFGTCKUYVJCT')
232
+ @ralf.local_log_dirname(@bucket1).should eql('/Users/berl/S3/bucket1/log/2010/02/10')
189
233
 
190
- @key.should_receive(:name).and_return('log/2010-02-10-00-05-32-ZDRFGTCKUYVJCT')
234
+ @key1.should_receive(:name).and_return('log/2010-02-10-00-05-32-ZDRFGTCKUYVJCT')
191
235
  @ralf.local_log_file_basename_prefix(@bucket2).should eql('')
192
- @ralf.local_log_file_basename(@bucket2, @key).should eql('2010-02-10-00-05-32-ZDRFGTCKUYVJCT')
193
- @ralf.local_log_dirname(@bucket2).should eql('/Users/berl/S3/media.kerdienstgemist.nl/log/2010/02/10')
236
+ @ralf.local_log_file_basename(@bucket2, @key1).should eql('2010-02-10-00-05-32-ZDRFGTCKUYVJCT')
237
+ @ralf.local_log_dirname(@bucket2).should eql('/Users/berl/S3/bucket2/log/2010/02/10')
194
238
  end
195
239
 
196
240
  end
@@ -198,14 +242,14 @@ describe Ralf do
198
242
  describe "Conversion" do
199
243
 
200
244
  before(:each) do
201
- @ralf = Ralf.new(@default_params)
245
+ @ralf = Ralf.new(@default_params)
202
246
  @bucket1 = {:name => 'bucket1'}
203
- @bucket1.should_receive(:name).any_number_of_times.and_return('media.kerdienstgemist.nl')
247
+ @bucket1.should_receive(:name).any_number_of_times.and_return('bucket1')
204
248
  end
205
249
 
206
250
  it "should convert the alf to clf" do
207
- File.should_receive(:open).once.with("/Users/berl/S3/s3_combined_media.kerdienstgemist.nl_2010-02-10.log", "w").and_return(File)
208
- File.should_receive(:open).once.with("/Users/berl/S3/s3_combined_media.kerdienstgemist.nl_2010-02-10.alf", "r").and_return(File)
251
+ File.should_receive(:open).once.with("/Users/berl/S3/s3_combined_bucket1_2010-02-10.log", "w").and_return(File)
252
+ File.should_receive(:open).once.with("/Users/berl/S3/s3_combined_bucket1_2010-02-10.alf", "r").and_return(File)
209
253
  File.should_receive(:close).once.and_return(true)
210
254
  @ralf.convert_alt_to_clf(@bucket1).should eql(true)
211
255
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ralf
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Klaas Jan Wierenga