easy-s3 0.3.0 → 0.4.0

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: ddcbdb408a33e00fd7c30b56314680c351b9feed
4
+ data.tar.gz: 9f4f7c0660e43f800938761626eb6174439add07
5
+ SHA512:
6
+ metadata.gz: 55730cfe926b08a85cfd241e49981fcdbec8bdf2debd6f828555088a91c04648a74e9b2c8ee59b151258b55a6bbea20a95780e014628418dcc4f92c261781386
7
+ data.tar.gz: 3c196e64a5e843cdbdb995bf8e05c3b0955495b89d543032be7d1cf73a4c3ff7eb20ad83cb520185c68d30b38522efcc9d1ce364a7d4d44165c3c31e43b4124f
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## 0.4.0 (15/07/2015)
2
+
3
+ ### Enhancements
4
+ * Update fog version
5
+ * File digest before extension
6
+
1
7
  ## 0.3.0 (06/11/2013)
2
8
 
3
9
  ### Enhancements
data/Gemfile CHANGED
@@ -1,7 +1,5 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- ruby '1.9.3'
4
-
5
3
  # Specify your gem's dependencies in easy-s3.gemspec
6
4
  gemspec
7
5
 
data/README.md CHANGED
@@ -2,9 +2,11 @@
2
2
 
3
3
  Easy use Amazon S3
4
4
 
5
+ [![Gem Version](https://badge.fury.io/rb/easy-s3.png)](http://badge.fury.io/rb/easy-s3)
5
6
  [![Build Status](https://travis-ci.org/mgrachev/easy-s3.png?branch=master)](https://travis-ci.org/mgrachev/easy-s3)
6
7
  [![Coverage Status](https://coveralls.io/repos/mgrachev/easy-s3/badge.png?branch=master)](https://coveralls.io/r/mgrachev/easy-s3?branch=master)
7
- [![Dependency Status](https://gemnasium.com/mgrachev/easy-s3.png)](https://gemnasium.com/mgrachev/easy-s3)
8
+ [![Code Climate](https://codeclimate.com/github/mgrachev/easy-s3.png)](https://codeclimate.com/github/mgrachev/easy-s3)
9
+ [![Dependency Status](https://gemnasium.com/mgrachev/easy-s3.svg)](https://gemnasium.com/mgrachev/easy-s3)
8
10
 
9
11
  ## Installation
10
12
 
data/easy-s3.gemspec CHANGED
@@ -18,9 +18,11 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ['lib']
20
20
 
21
- spec.add_dependency 'fog', '~> 1.15.0'
21
+ spec.required_ruby_version = '>= 1.9.3'
22
+
23
+ spec.add_dependency 'fog', '~> 1.32'
22
24
 
23
25
  spec.add_development_dependency 'bundler', '~> 1.3'
24
26
  spec.add_development_dependency 'rake'
25
- spec.add_development_dependency 'rspec', '~> 2.14.1'
27
+ spec.add_development_dependency 'rspec', '~> 2.99'
26
28
  end
data/lib/easy-s3.rb CHANGED
@@ -43,8 +43,10 @@ class EasyS3
43
43
  raise FileNotFound, file_path
44
44
  end
45
45
 
46
- filename = "#{File.basename(file_path)}"
46
+ extension = File.extname(file_path)
47
+ filename = File.basename(file_path, extension)
47
48
  filename += "_#{Digest::SHA1.hexdigest(File.basename(file_path))}" if options[:digest]
49
+ filename += extension
48
50
 
49
51
  file = @dir.files.create(
50
52
  key: filename,
@@ -74,4 +76,4 @@ class EasyS3
74
76
  def get_filename_by_url(url)
75
77
  File.basename(URI(url).path)
76
78
  end
77
- end
79
+ end
@@ -1,3 +1,3 @@
1
1
  class EasyS3
2
- VERSION = '0.3.0'
2
+ VERSION = '0.4.0'
3
3
  end
data/spec/easy-s3_spec.rb CHANGED
@@ -18,10 +18,6 @@ describe EasyS3 do
18
18
  end
19
19
 
20
20
  context '.initialize' do
21
- it 'should raise exception if call method without argument directory name' do
22
- expect{ EasyS3.new }.to raise_error ArgumentError
23
- end
24
-
25
21
  it 'should accept options hash as the second argument' do
26
22
  Fog.credentials = {}
27
23
  EasyS3.new(bucket_name, access_key_id: 'XXX', secret_access_key: 'XXXX', region: 'eu-west-1').should be_an_instance_of EasyS3
@@ -50,7 +46,7 @@ describe EasyS3 do
50
46
 
51
47
  it 'should create file with digest' do
52
48
  url = s3.create_file(file_path, digest: true, public: true)
53
- url.should == "https://#{bucket_name}.s3-#{region}.amazonaws.com/#{File.basename(file_path)}_#{Digest::SHA1.hexdigest(File.basename(file_path))}"
49
+ url.should match Digest::SHA1.hexdigest(File.basename(file_path))
54
50
  end
55
51
 
56
52
  it 'should create a public file' do
@@ -62,7 +58,7 @@ describe EasyS3 do
62
58
  it 'should create a private file' do
63
59
  url = s3.create_file(file_path)
64
60
  url.should be_an_instance_of String
65
- url.should match /#{bucket_name}.+amazonaws.com.+AWSAccessKeyId=#{Fog.credentials[:aws_access_key_id]}/
61
+ url.should match /#{bucket_name}.+amazonaws.com.+X-Amz-Credential=#{Fog.credentials[:aws_access_key_id]}/
66
62
  end
67
63
  end
68
64
 
@@ -75,12 +71,12 @@ describe EasyS3 do
75
71
 
76
72
  context '#delete_file' do
77
73
  it 'should return false if file not found on Amazon S3' do
78
- s3.delete_file('bad_file').should be_false
74
+ s3.delete_file('bad_file').should be_falsey
79
75
  end
80
76
 
81
77
  it 'should delete file by namea and return true' do
82
78
  url = s3.create_file(file_path)
83
- s3.delete_file(url).should be_true
79
+ s3.delete_file(url).should be_truthy
84
80
  end
85
81
  end
86
82
 
data/spec/spec_helper.rb CHANGED
@@ -6,8 +6,5 @@ RSpec.configure do |config|
6
6
  config.run_all_when_everything_filtered = true
7
7
  config.filter_run :focus
8
8
 
9
- config.fail_fast = true
10
- config.color_enabled = true
11
-
12
9
  config.order = 'random'
13
10
  end
metadata CHANGED
@@ -1,80 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: easy-s3
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
5
- prerelease:
4
+ version: 0.4.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Mikhail Grachev
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-11-06 00:00:00.000000000 Z
11
+ date: 2015-07-15 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: fog
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
- version: 1.15.0
19
+ version: '1.32'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ~>
24
+ - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: 1.15.0
26
+ version: '1.32'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: bundler
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ~>
31
+ - - "~>"
36
32
  - !ruby/object:Gem::Version
37
33
  version: '1.3'
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ~>
38
+ - - "~>"
44
39
  - !ruby/object:Gem::Version
45
40
  version: '1.3'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rake
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ">="
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rspec
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ~>
59
+ - - "~>"
68
60
  - !ruby/object:Gem::Version
69
- version: 2.14.1
61
+ version: '2.99'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ~>
66
+ - - "~>"
76
67
  - !ruby/object:Gem::Version
77
- version: 2.14.1
68
+ version: '2.99'
78
69
  description: Easy use Amazon S3
79
70
  email:
80
71
  - i@mgrachev.com
@@ -82,9 +73,9 @@ executables: []
82
73
  extensions: []
83
74
  extra_rdoc_files: []
84
75
  files:
85
- - .gitignore
86
- - .rspec
87
- - .travis.yml
76
+ - ".gitignore"
77
+ - ".rspec"
78
+ - ".travis.yml"
88
79
  - CHANGELOG.md
89
80
  - Gemfile
90
81
  - LICENSE.txt
@@ -99,33 +90,26 @@ files:
99
90
  homepage: https://github.com/mgrachev/easy-s3
100
91
  licenses:
101
92
  - MIT
93
+ metadata: {}
102
94
  post_install_message:
103
95
  rdoc_options: []
104
96
  require_paths:
105
97
  - lib
106
98
  required_ruby_version: !ruby/object:Gem::Requirement
107
- none: false
108
99
  requirements:
109
- - - ! '>='
100
+ - - ">="
110
101
  - !ruby/object:Gem::Version
111
- version: '0'
112
- segments:
113
- - 0
114
- hash: 3515566908045062486
102
+ version: 1.9.3
115
103
  required_rubygems_version: !ruby/object:Gem::Requirement
116
- none: false
117
104
  requirements:
118
- - - ! '>='
105
+ - - ">="
119
106
  - !ruby/object:Gem::Version
120
107
  version: '0'
121
- segments:
122
- - 0
123
- hash: 3515566908045062486
124
108
  requirements: []
125
109
  rubyforge_project:
126
- rubygems_version: 1.8.23
110
+ rubygems_version: 2.4.7
127
111
  signing_key:
128
- specification_version: 3
112
+ specification_version: 4
129
113
  summary: Easy use Amazon S3
130
114
  test_files:
131
115
  - spec/easy-s3_spec.rb