carrierwave-ftp 0.4.0 → 0.4.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: df0afee16e1ea7ec251387b0d40e51b34125f393
4
- data.tar.gz: 60e317278e41bce9435f0ae5a2f91b34ce354575
3
+ metadata.gz: 551b48c6149faaa78b66b77b7b119c5bd0a42219
4
+ data.tar.gz: 9e1a295293d824b6fb476280ac7df4d7070abbc7
5
5
  SHA512:
6
- metadata.gz: 1b8ba3eb90cf8cace416957dfa485cd14c0b62bd3c8e1946df51d68b39d8d60fd43ffb69323eb4ecc3a68843603626b3733a8e66dac2fd7767ff632a236bf0e2
7
- data.tar.gz: c966647c7f64e7d23f61cb911b0617bfaedef048c62178ff4aa807ef5148cc31918bdbd1f4a12479eaf9ce4277fea00adb8af47f33da44d8f7e2525a0afe6bec
6
+ metadata.gz: 7740cafb26fd31fb035751504d7b026f4c2af965d4a01e1b8ca9866d4e00acfbf5a49ad838ccc643a744a3ebb68fc2a8edc69cf2d6eee786339464ea2a8031fe
7
+ data.tar.gz: 24e35b324a658daf03a49e8d57a85d73079fed6c21c3089d8fa4d75be272657df553af1d8a9f05dc39ba9a846700d614df5248d8909eb492870449aa664e0f10
@@ -77,7 +77,7 @@ module CarrierWave
77
77
  end
78
78
 
79
79
  def content_type
80
- @content_type || file.content_type
80
+ @content_type || inferred_content_type
81
81
  end
82
82
 
83
83
  def content_type=(new_content_type)
@@ -94,6 +94,10 @@ module CarrierWave
94
94
 
95
95
  private
96
96
 
97
+ def inferred_content_type
98
+ SanitizedFile.new(path).content_type
99
+ end
100
+
97
101
  def connection
98
102
  if @uploader.ftp_tls
99
103
  ftp = ExFTPTLS.new
@@ -1,7 +1,7 @@
1
1
  module Carrierwave
2
2
  module Storage
3
3
  class FTP
4
- VERSION = "0.4.0"
4
+ VERSION = '0.4.1'.freeze
5
5
  end
6
6
  end
7
7
  end
@@ -69,7 +69,7 @@ module CarrierWave
69
69
  end
70
70
 
71
71
  def content_type
72
- @content_type || file.content_type
72
+ @content_type || inferred_content_type
73
73
  end
74
74
 
75
75
  def content_type=(new_content_type)
@@ -85,6 +85,10 @@ module CarrierWave
85
85
 
86
86
  private
87
87
 
88
+ def inferred_content_type
89
+ SanitizedFile.new(path).content_type
90
+ end
91
+
88
92
  def use_ssl?
89
93
  @uploader.sftp_url.start_with?('https')
90
94
  end
@@ -0,0 +1,37 @@
1
+ require 'spec_helper'
2
+ require 'carrierwave/storage/ftp'
3
+
4
+ describe CarrierWave::Storage::FTP::File do
5
+ let(:uploader) do
6
+ Class.new(CarrierWave::Uploader::Base) do
7
+ storage :ftp
8
+ end.tap do |u|
9
+ allow(u).to receive(:store_path).and_return('uploads/test.jpg')
10
+ end
11
+ end
12
+
13
+ let(:base) { CarrierWave::Storage::FTP.new(uploader) }
14
+
15
+ let(:file) do
16
+ CarrierWave::Storage::FTP::File.new(uploader, base, uploader.store_path)
17
+ end
18
+
19
+ let(:mime_type) { double('mime_type') }
20
+
21
+ describe '#content_type' do
22
+ it 'delegates to base file by default' do
23
+ sanitized_file = CarrierWave::SanitizedFile.new(file)
24
+ expect(CarrierWave::SanitizedFile).to receive(:new).with(file.path).
25
+ and_return(sanitized_file)
26
+ expect(sanitized_file).to receive(:content_type).and_return(mime_type)
27
+
28
+ expect(file.content_type).to eq(mime_type)
29
+ end
30
+
31
+ it 'permits overriding the default value' do
32
+ file.content_type = mime_type
33
+
34
+ expect(file.content_type).to eq(mime_type)
35
+ end
36
+ end
37
+ end
@@ -140,8 +140,7 @@ describe CarrierWave::Storage::FTP do
140
140
  end
141
141
 
142
142
  it "returns the content_type of the file" do
143
- @stored.should_receive(:file).and_return(Struct.new(:content_type).new('some/type'))
144
- @stored.content_type.should == 'some/type'
143
+ @stored.content_type.should == 'image/jpeg'
145
144
  end
146
145
  end
147
146
  end
@@ -0,0 +1,37 @@
1
+ require 'spec_helper'
2
+ require 'carrierwave/storage/sftp'
3
+
4
+ describe CarrierWave::Storage::SFTP::File do
5
+ let(:uploader) do
6
+ Class.new(CarrierWave::Uploader::Base) do
7
+ storage :sftp
8
+ end.tap do |u|
9
+ allow(u).to receive(:store_path).and_return('uploads/test.jpg')
10
+ end
11
+ end
12
+
13
+ let(:base) { CarrierWave::Storage::SFTP.new(uploader) }
14
+
15
+ let(:file) do
16
+ CarrierWave::Storage::SFTP::File.new(uploader, base, uploader.store_path)
17
+ end
18
+
19
+ let(:mime_type) { double('mime_type') }
20
+
21
+ describe '#content_type' do
22
+ it 'delegates to base file by default' do
23
+ sanitized_file = CarrierWave::SanitizedFile.new(file)
24
+ expect(CarrierWave::SanitizedFile).to receive(:new).with(file.path).
25
+ and_return(sanitized_file)
26
+ expect(sanitized_file).to receive(:content_type).and_return(mime_type)
27
+
28
+ expect(file.content_type).to eq(mime_type)
29
+ end
30
+
31
+ it 'permits overriding the default value' do
32
+ file.content_type = mime_type
33
+
34
+ expect(file.content_type).to eq(mime_type)
35
+ end
36
+ end
37
+ end
@@ -102,8 +102,7 @@ describe CarrierWave::Storage::SFTP do
102
102
  end
103
103
 
104
104
  it "returns the content_type of the file" do
105
- @stored.should_receive(:file).and_return(Struct.new(:content_type).new('some/type'))
106
- @stored.content_type.should == 'some/type'
105
+ @stored.content_type.should == 'image/jpeg'
107
106
  end
108
107
  end
109
108
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: carrierwave-ftp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luan Santos
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-28 00:00:00.000000000 Z
11
+ date: 2018-03-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: carrierwave
@@ -104,8 +104,10 @@ files:
104
104
  - lib/carrierwave/storage/ftp/ex_sftp.rb
105
105
  - lib/carrierwave/storage/ftp/version.rb
106
106
  - lib/carrierwave/storage/sftp.rb
107
+ - spec/ftp_file_spec.rb
107
108
  - spec/ftp_spec.rb
108
109
  - spec/ftp_tls_spec.rb
110
+ - spec/sftp_file_spec.rb
109
111
  - spec/sftp_spec.rb
110
112
  - spec/spec_helper.rb
111
113
  homepage: https://github.com/luan/carrierwave-ftp
@@ -133,7 +135,9 @@ signing_key:
133
135
  specification_version: 4
134
136
  summary: FTP support for CarrierWave
135
137
  test_files:
138
+ - spec/ftp_file_spec.rb
136
139
  - spec/ftp_spec.rb
137
140
  - spec/ftp_tls_spec.rb
141
+ - spec/sftp_file_spec.rb
138
142
  - spec/sftp_spec.rb
139
143
  - spec/spec_helper.rb