sauberia-aws-s3 0.6.2.1254423624

Sign up to get free protection for your applications and to get access to all the features.
Files changed (93) hide show
  1. data/CHANGELOG +107 -0
  2. data/COPYING +19 -0
  3. data/INSTALL +55 -0
  4. data/README.erb +58 -0
  5. data/Rakefile +334 -0
  6. data/TODO +26 -0
  7. data/aws-s3.gemspec +42 -0
  8. data/bin/s3sh +6 -0
  9. data/bin/setup.rb +10 -0
  10. data/lib/aws/s3.rb +60 -0
  11. data/lib/aws/s3/acl.rb +636 -0
  12. data/lib/aws/s3/authentication.rb +222 -0
  13. data/lib/aws/s3/base.rb +270 -0
  14. data/lib/aws/s3/bittorrent.rb +58 -0
  15. data/lib/aws/s3/bucket.rb +372 -0
  16. data/lib/aws/s3/connection.rb +288 -0
  17. data/lib/aws/s3/error.rb +69 -0
  18. data/lib/aws/s3/exceptions.rb +133 -0
  19. data/lib/aws/s3/extensions.rb +342 -0
  20. data/lib/aws/s3/logging.rb +317 -0
  21. data/lib/aws/s3/object.rb +626 -0
  22. data/lib/aws/s3/owner.rb +46 -0
  23. data/lib/aws/s3/parsing.rb +99 -0
  24. data/lib/aws/s3/response.rb +180 -0
  25. data/lib/aws/s3/service.rb +51 -0
  26. data/lib/aws/s3/version.rb +12 -0
  27. data/site/index.erb +41 -0
  28. data/site/public/images/box-and-gem.gif +0 -0
  29. data/site/public/images/favicon.ico +0 -0
  30. data/site/public/ruby.css +18 -0
  31. data/site/public/screen.css +99 -0
  32. data/support/faster-xml-simple/COPYING +18 -0
  33. data/support/faster-xml-simple/README +8 -0
  34. data/support/faster-xml-simple/Rakefile +54 -0
  35. data/support/faster-xml-simple/lib/faster_xml_simple.rb +190 -0
  36. data/support/faster-xml-simple/test/fixtures/test-1.rails.yml +4 -0
  37. data/support/faster-xml-simple/test/fixtures/test-1.xml +3 -0
  38. data/support/faster-xml-simple/test/fixtures/test-1.yml +4 -0
  39. data/support/faster-xml-simple/test/fixtures/test-2.rails.yml +6 -0
  40. data/support/faster-xml-simple/test/fixtures/test-2.xml +3 -0
  41. data/support/faster-xml-simple/test/fixtures/test-2.yml +6 -0
  42. data/support/faster-xml-simple/test/fixtures/test-3.rails.yml +6 -0
  43. data/support/faster-xml-simple/test/fixtures/test-3.xml +5 -0
  44. data/support/faster-xml-simple/test/fixtures/test-3.yml +6 -0
  45. data/support/faster-xml-simple/test/fixtures/test-4.rails.yml +5 -0
  46. data/support/faster-xml-simple/test/fixtures/test-4.xml +7 -0
  47. data/support/faster-xml-simple/test/fixtures/test-4.yml +5 -0
  48. data/support/faster-xml-simple/test/fixtures/test-5.rails.yml +8 -0
  49. data/support/faster-xml-simple/test/fixtures/test-5.xml +7 -0
  50. data/support/faster-xml-simple/test/fixtures/test-5.yml +8 -0
  51. data/support/faster-xml-simple/test/fixtures/test-6.rails.yml +43 -0
  52. data/support/faster-xml-simple/test/fixtures/test-6.xml +29 -0
  53. data/support/faster-xml-simple/test/fixtures/test-6.yml +41 -0
  54. data/support/faster-xml-simple/test/fixtures/test-7.rails.yml +23 -0
  55. data/support/faster-xml-simple/test/fixtures/test-7.xml +22 -0
  56. data/support/faster-xml-simple/test/fixtures/test-7.yml +22 -0
  57. data/support/faster-xml-simple/test/fixtures/test-8.rails.yml +14 -0
  58. data/support/faster-xml-simple/test/fixtures/test-8.xml +8 -0
  59. data/support/faster-xml-simple/test/fixtures/test-8.yml +11 -0
  60. data/support/faster-xml-simple/test/regression_test.rb +47 -0
  61. data/support/faster-xml-simple/test/test_helper.rb +17 -0
  62. data/support/faster-xml-simple/test/xml_simple_comparison_test.rb +46 -0
  63. data/support/rdoc/code_info.rb +211 -0
  64. data/test/acl_test.rb +254 -0
  65. data/test/authentication_test.rb +118 -0
  66. data/test/base_test.rb +136 -0
  67. data/test/bucket_test.rb +74 -0
  68. data/test/connection_test.rb +216 -0
  69. data/test/error_test.rb +70 -0
  70. data/test/extensions_test.rb +340 -0
  71. data/test/fixtures.rb +89 -0
  72. data/test/fixtures/buckets.yml +133 -0
  73. data/test/fixtures/errors.yml +34 -0
  74. data/test/fixtures/headers.yml +3 -0
  75. data/test/fixtures/logging.yml +15 -0
  76. data/test/fixtures/loglines.yml +5 -0
  77. data/test/fixtures/logs.yml +7 -0
  78. data/test/fixtures/policies.yml +16 -0
  79. data/test/logging_test.rb +89 -0
  80. data/test/mocks/fake_response.rb +26 -0
  81. data/test/object_test.rb +205 -0
  82. data/test/parsing_test.rb +66 -0
  83. data/test/remote/acl_test.rb +116 -0
  84. data/test/remote/bittorrent_test.rb +45 -0
  85. data/test/remote/bucket_test.rb +146 -0
  86. data/test/remote/logging_test.rb +82 -0
  87. data/test/remote/object_test.rb +379 -0
  88. data/test/remote/test_file.data +0 -0
  89. data/test/remote/test_helper.rb +33 -0
  90. data/test/response_test.rb +68 -0
  91. data/test/service_test.rb +23 -0
  92. data/test/test_helper.rb +118 -0
  93. metadata +221 -0
@@ -0,0 +1,23 @@
1
+ require File.dirname(__FILE__) + '/test_helper'
2
+
3
+ class ServiceTest < Test::Unit::TestCase
4
+ def test_bucket_list_with_empty_bucket_list
5
+ mock_connection_for(Service, :returns => {:body => Fixtures::Buckets.empty_bucket_list, :code => 200})
6
+ list = Service.buckets(:reload)
7
+ assert_equal [], list
8
+ end
9
+
10
+ def test_bucket_list_with_bucket_list_containing_one_bucket
11
+ mock_connection_for(Service, :returns => {:body => Fixtures::Buckets.bucket_list_with_one_bucket, :code => 200})
12
+ list = Service.buckets(:reload)
13
+ assert_equal 1, list.size
14
+ assert_equal 'marcel_molina', list.first.name
15
+ end
16
+
17
+ def test_bucket_list_with_bucket_list_containing_more_than_one_bucket
18
+ mock_connection_for(Service, :returns => {:body => Fixtures::Buckets.bucket_list_with_more_than_one_bucket, :code => 200})
19
+ list = Service.buckets(:reload)
20
+ assert_equal 2, list.size
21
+ assert_equal %w(marcel_molina marcel_molina_jr), list.map {|bucket| bucket.name}.sort
22
+ end
23
+ end
@@ -0,0 +1,118 @@
1
+ require 'test/unit'
2
+ $:.unshift File.dirname(__FILE__) + '/../lib'
3
+ require 'aws/s3'
4
+ require File.dirname(__FILE__) + '/mocks/fake_response'
5
+ require File.dirname(__FILE__) + '/fixtures'
6
+ begin
7
+ require_library_or_gem 'ruby-debug'
8
+ rescue LoadError
9
+ end
10
+ require_library_or_gem 'flexmock'
11
+ require_library_or_gem 'flexmock/test_unit'
12
+
13
+
14
+ # Data copied from http://docs.amazonwebservices.com/AmazonS3/2006-03-01/RESTAuthentication.html
15
+ module AmazonDocExampleData
16
+ module Example1
17
+ module_function
18
+
19
+ def request
20
+ request = Net::HTTP::Put.new('/nelson')
21
+ request['Content-Md5'] = 'c8fdb181845a4ca6b8fec737b3581d76'
22
+ request['Content-Type'] = 'text/html'
23
+ request['Date'] = 'Thu, 17 Nov 2005 18:49:58 GMT'
24
+ request['X-Amz-Meta-Author'] = 'foo@bar.com'
25
+ request['X-Amz-Magic'] = 'abracadabra'
26
+ request
27
+ end
28
+
29
+ def current_host
30
+ "quotes"
31
+ end
32
+
33
+ def canonical_string
34
+ "PUT\nc8fdb181845a4ca6b8fec737b3581d76\ntext/html\nThu, 17 Nov 2005 18:49:58 GMT\nx-amz-magic:abracadabra\nx-amz-meta-author:foo@bar.com\n/quotes/nelson"
35
+ end
36
+
37
+ def access_key_id
38
+ '44CF9590006BF252F707'
39
+ end
40
+
41
+ def secret_access_key
42
+ 'OtxrzxIsfpFjA7SwPzILwy8Bw21TLhquhboDYROV'
43
+ end
44
+
45
+ def signature
46
+ 'jZNOcbfWmD/A/f3hSvVzXZjM2HU='
47
+ end
48
+
49
+ def authorization_header
50
+ 'AWS 44CF9590006BF252F707:jZNOcbfWmD/A/f3hSvVzXZjM2HU='
51
+ end
52
+ end
53
+
54
+ module Example3
55
+ module_function
56
+
57
+ def request
58
+ request = Net::HTTP::Get.new('/nelson')
59
+ request['Date'] = date
60
+ request
61
+ end
62
+
63
+ def current_host
64
+ "quotes"
65
+ end
66
+
67
+ def date
68
+ 'Thu Mar 9 01:24:20 CST 2006'
69
+ end
70
+
71
+ def access_key_id
72
+ Example1.access_key_id
73
+ end
74
+
75
+ def secret_access_key
76
+ Example1.secret_access_key
77
+ end
78
+
79
+ def expires
80
+ 1141889120
81
+ end
82
+
83
+ def query_string
84
+ 'AWSAccessKeyId=44CF9590006BF252F707&Expires=1141889120&Signature=vjbyPxybdZaNmGa%2ByT272YEAiv4%3D'
85
+ end
86
+
87
+ def canonical_string
88
+ "GET\n\n\n1141889120\n/quotes/nelson"
89
+ end
90
+
91
+ end
92
+ end
93
+
94
+ class Test::Unit::TestCase
95
+ include AWS::S3
96
+
97
+ def sample_proxy_settings
98
+ {:host => 'http://google.com', :port => 8080, :user => 'marcel', :password => 'secret'}
99
+ end
100
+
101
+ def mock_connection_for(klass, options = {})
102
+ data = options[:returns]
103
+ return_values = case data
104
+ when Hash
105
+ FakeResponse.new(data)
106
+ when Array
107
+ data.map {|hash| FakeResponse.new(hash)}
108
+ else
109
+ abort "Response data for mock connection must be a Hash or an Array. Was #{data.inspect}."
110
+ end
111
+
112
+ connection = flexmock('Mock connection') do |mock|
113
+ mock.should_receive(:request).and_return(*return_values).at_least.once
114
+ end
115
+
116
+ flexmock(klass).should_receive(:connection).and_return(connection)
117
+ end
118
+ end
metadata ADDED
@@ -0,0 +1,221 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: sauberia-aws-s3
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.6.2.1254423624
5
+ platform: ruby
6
+ authors:
7
+ - marcel@vernix.org
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-10-01 00:00:00 +01:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: xml-simple
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: builder
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: "0"
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: mime-types
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: "0"
44
+ version:
45
+ description: Client library for Amazon's Simple Storage Service's REST API.
46
+ email: Marcel Molina Jr.
47
+ executables:
48
+ - s3sh
49
+ - setup.rb
50
+ extensions: []
51
+
52
+ extra_rdoc_files:
53
+ - CHANGELOG
54
+ - COPYING
55
+ - README.erb
56
+ - TODO
57
+ - bin/s3sh
58
+ - bin/setup.rb
59
+ - lib/aws/s3.rb
60
+ - lib/aws/s3/acl.rb
61
+ - lib/aws/s3/authentication.rb
62
+ - lib/aws/s3/base.rb
63
+ - lib/aws/s3/bittorrent.rb
64
+ - lib/aws/s3/bucket.rb
65
+ - lib/aws/s3/connection.rb
66
+ - lib/aws/s3/error.rb
67
+ - lib/aws/s3/exceptions.rb
68
+ - lib/aws/s3/extensions.rb
69
+ - lib/aws/s3/logging.rb
70
+ - lib/aws/s3/object.rb
71
+ - lib/aws/s3/owner.rb
72
+ - lib/aws/s3/parsing.rb
73
+ - lib/aws/s3/response.rb
74
+ - lib/aws/s3/service.rb
75
+ - lib/aws/s3/version.rb
76
+ files:
77
+ - CHANGELOG
78
+ - COPYING
79
+ - INSTALL
80
+ - README.erb
81
+ - Rakefile
82
+ - TODO
83
+ - aws-s3.gemspec
84
+ - bin/s3sh
85
+ - bin/setup.rb
86
+ - lib/aws/s3.rb
87
+ - lib/aws/s3/acl.rb
88
+ - lib/aws/s3/authentication.rb
89
+ - lib/aws/s3/base.rb
90
+ - lib/aws/s3/bittorrent.rb
91
+ - lib/aws/s3/bucket.rb
92
+ - lib/aws/s3/connection.rb
93
+ - lib/aws/s3/error.rb
94
+ - lib/aws/s3/exceptions.rb
95
+ - lib/aws/s3/extensions.rb
96
+ - lib/aws/s3/logging.rb
97
+ - lib/aws/s3/object.rb
98
+ - lib/aws/s3/owner.rb
99
+ - lib/aws/s3/parsing.rb
100
+ - lib/aws/s3/response.rb
101
+ - lib/aws/s3/service.rb
102
+ - lib/aws/s3/version.rb
103
+ - site/index.erb
104
+ - site/public/images/box-and-gem.gif
105
+ - site/public/images/favicon.ico
106
+ - site/public/ruby.css
107
+ - site/public/screen.css
108
+ - support/faster-xml-simple/COPYING
109
+ - support/faster-xml-simple/README
110
+ - support/faster-xml-simple/Rakefile
111
+ - support/faster-xml-simple/lib/faster_xml_simple.rb
112
+ - support/faster-xml-simple/test/fixtures/test-1.rails.yml
113
+ - support/faster-xml-simple/test/fixtures/test-1.xml
114
+ - support/faster-xml-simple/test/fixtures/test-1.yml
115
+ - support/faster-xml-simple/test/fixtures/test-2.rails.yml
116
+ - support/faster-xml-simple/test/fixtures/test-2.xml
117
+ - support/faster-xml-simple/test/fixtures/test-2.yml
118
+ - support/faster-xml-simple/test/fixtures/test-3.rails.yml
119
+ - support/faster-xml-simple/test/fixtures/test-3.xml
120
+ - support/faster-xml-simple/test/fixtures/test-3.yml
121
+ - support/faster-xml-simple/test/fixtures/test-4.rails.yml
122
+ - support/faster-xml-simple/test/fixtures/test-4.xml
123
+ - support/faster-xml-simple/test/fixtures/test-4.yml
124
+ - support/faster-xml-simple/test/fixtures/test-5.rails.yml
125
+ - support/faster-xml-simple/test/fixtures/test-5.xml
126
+ - support/faster-xml-simple/test/fixtures/test-5.yml
127
+ - support/faster-xml-simple/test/fixtures/test-6.rails.yml
128
+ - support/faster-xml-simple/test/fixtures/test-6.xml
129
+ - support/faster-xml-simple/test/fixtures/test-6.yml
130
+ - support/faster-xml-simple/test/fixtures/test-7.rails.yml
131
+ - support/faster-xml-simple/test/fixtures/test-7.xml
132
+ - support/faster-xml-simple/test/fixtures/test-7.yml
133
+ - support/faster-xml-simple/test/fixtures/test-8.rails.yml
134
+ - support/faster-xml-simple/test/fixtures/test-8.xml
135
+ - support/faster-xml-simple/test/fixtures/test-8.yml
136
+ - support/faster-xml-simple/test/regression_test.rb
137
+ - support/faster-xml-simple/test/test_helper.rb
138
+ - support/faster-xml-simple/test/xml_simple_comparison_test.rb
139
+ - support/rdoc/code_info.rb
140
+ - test/acl_test.rb
141
+ - test/authentication_test.rb
142
+ - test/base_test.rb
143
+ - test/bucket_test.rb
144
+ - test/connection_test.rb
145
+ - test/error_test.rb
146
+ - test/extensions_test.rb
147
+ - test/fixtures.rb
148
+ - test/fixtures/buckets.yml
149
+ - test/fixtures/errors.yml
150
+ - test/fixtures/headers.yml
151
+ - test/fixtures/logging.yml
152
+ - test/fixtures/loglines.yml
153
+ - test/fixtures/logs.yml
154
+ - test/fixtures/policies.yml
155
+ - test/logging_test.rb
156
+ - test/mocks/fake_response.rb
157
+ - test/object_test.rb
158
+ - test/parsing_test.rb
159
+ - test/remote/acl_test.rb
160
+ - test/remote/bittorrent_test.rb
161
+ - test/remote/bucket_test.rb
162
+ - test/remote/logging_test.rb
163
+ - test/remote/object_test.rb
164
+ - test/remote/test_file.data
165
+ - test/remote/test_helper.rb
166
+ - test/response_test.rb
167
+ - test/service_test.rb
168
+ - test/test_helper.rb
169
+ has_rdoc: true
170
+ homepage: http://amazon.rubyforge.org
171
+ licenses: []
172
+
173
+ post_install_message:
174
+ rdoc_options:
175
+ - --line-numbers
176
+ - --inline-source
177
+ - --title
178
+ - Aws-s3
179
+ - --main
180
+ - README.erb
181
+ require_paths:
182
+ - lib
183
+ required_ruby_version: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ">="
186
+ - !ruby/object:Gem::Version
187
+ version: "0"
188
+ version:
189
+ required_rubygems_version: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - ">="
192
+ - !ruby/object:Gem::Version
193
+ version: "1.2"
194
+ version:
195
+ requirements: []
196
+
197
+ rubyforge_project: aws-s3
198
+ rubygems_version: 1.3.5
199
+ signing_key:
200
+ specification_version: 2
201
+ summary: Client library for Amazon's Simple Storage Service's REST API.
202
+ test_files:
203
+ - test/acl_test.rb
204
+ - test/authentication_test.rb
205
+ - test/base_test.rb
206
+ - test/bucket_test.rb
207
+ - test/connection_test.rb
208
+ - test/error_test.rb
209
+ - test/extensions_test.rb
210
+ - test/logging_test.rb
211
+ - test/object_test.rb
212
+ - test/parsing_test.rb
213
+ - test/remote/acl_test.rb
214
+ - test/remote/bittorrent_test.rb
215
+ - test/remote/bucket_test.rb
216
+ - test/remote/logging_test.rb
217
+ - test/remote/object_test.rb
218
+ - test/remote/test_helper.rb
219
+ - test/response_test.rb
220
+ - test/service_test.rb
221
+ - test/test_helper.rb