carrierwave-sequel 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +2 -1
- data/carrierwave-sequel.gemspec +1 -1
- data/lib/carrierwave/sequel.rb +38 -6
- data/lib/carrierwave/sequel/version.rb +1 -1
- data/spec/sequel_spec.rb +49 -12
- data/spec/spec_helper.rb +4 -0
- metadata +67 -83
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 4888f028d208645491be3bca2782054482f5a49c
|
4
|
+
data.tar.gz: e0437fc1d59636a984e4d6efeb247995a2324ad5
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 67a7bdc61ff0f3ab108823eb38604f91adb71368227c97372a397dcf8851ed6de50a2c79582f0c9a8b8a4f0fe8b5da6c8066a0b541ba35d5e681ead3e6859963
|
7
|
+
data.tar.gz: ca906832203ba3ea975be925040b1b2cd14dab44332d6a2374c5e8eaa4e56898ce16aa32cdeb19eba26c1c6d9a211c1a558bedf60e02c1fba880527647ba98a0
|
data/.gitignore
CHANGED
data/carrierwave-sequel.gemspec
CHANGED
data/lib/carrierwave/sequel.rb
CHANGED
@@ -7,15 +7,51 @@ module CarrierWave
|
|
7
7
|
module Sequel
|
8
8
|
include CarrierWave::Mount
|
9
9
|
|
10
|
-
def mount_uploader(column, uploader)
|
10
|
+
def mount_uploader(column, uploader, options={}, &block)
|
11
11
|
raise "You need to use Sequel 3.0 or higher. Please upgrade." unless ::Sequel::Model.respond_to?(:plugin)
|
12
12
|
super
|
13
13
|
|
14
|
+
mod = Module.new
|
15
|
+
include mod
|
16
|
+
mod.class_eval <<-RUBY, __FILE__, __LINE__+1
|
17
|
+
def #{column}=(new_file)
|
18
|
+
if !(new_file.blank? && send(:#{column}).blank?)
|
19
|
+
modified!
|
20
|
+
end
|
21
|
+
super
|
22
|
+
end
|
23
|
+
|
24
|
+
def remove_#{column}!
|
25
|
+
modified!
|
26
|
+
super
|
27
|
+
end
|
28
|
+
|
29
|
+
def remove_#{column}=(value)
|
30
|
+
modified!
|
31
|
+
super
|
32
|
+
end
|
33
|
+
|
34
|
+
# Reset cached mounter on record reload
|
35
|
+
def reload(*)
|
36
|
+
@_mounters = nil
|
37
|
+
super
|
38
|
+
end
|
39
|
+
|
40
|
+
def remote_#{column}_url=(url)
|
41
|
+
modified!
|
42
|
+
super
|
43
|
+
end
|
44
|
+
|
45
|
+
def remote_#{column}_urls=(url)
|
46
|
+
modified!
|
47
|
+
super
|
48
|
+
end
|
49
|
+
RUBY
|
50
|
+
|
14
51
|
alias_method :read_uploader, :[]
|
15
52
|
alias_method :write_uploader, :[]=
|
16
53
|
|
17
54
|
include CarrierWave::Sequel::Hooks
|
18
|
-
include CarrierWave::Sequel::Validations
|
19
55
|
end
|
20
56
|
|
21
57
|
end # Sequel
|
@@ -39,8 +75,4 @@ module CarrierWave::Sequel::Hooks
|
|
39
75
|
end
|
40
76
|
end
|
41
77
|
|
42
|
-
# Instance validation methods for the Sequel 3.x
|
43
|
-
module CarrierWave::Sequel::Validations
|
44
|
-
end
|
45
|
-
|
46
78
|
Sequel::Model.send(:extend, CarrierWave::Sequel)
|
data/spec/sequel_spec.rb
CHANGED
@@ -33,7 +33,7 @@ describe CarrierWave::Sequel do
|
|
33
33
|
@class, @uploader, @event = setup_variables_for_class(@class)
|
34
34
|
end
|
35
35
|
|
36
|
-
after(:each) { @class.delete }
|
36
|
+
after(:each) { @class.dataset.delete }
|
37
37
|
|
38
38
|
describe '#image' do
|
39
39
|
|
@@ -134,16 +134,6 @@ describe CarrierWave::Sequel do
|
|
134
134
|
@event.reload
|
135
135
|
@event[:image].should == 'test.jpeg'
|
136
136
|
end
|
137
|
-
|
138
|
-
it "should remove the image if remove_image? returns true" do
|
139
|
-
@event.image = stub_file('test.jpeg')
|
140
|
-
@event.save
|
141
|
-
@event.remove_image = true
|
142
|
-
@event.save
|
143
|
-
@event.reload
|
144
|
-
@event.image.should be_blank
|
145
|
-
@event[:image].should == ''
|
146
|
-
end
|
147
137
|
end
|
148
138
|
|
149
139
|
describe 'with overriddent filename' do
|
@@ -156,7 +146,7 @@ describe CarrierWave::Sequel do
|
|
156
146
|
model.name + File.extname(super)
|
157
147
|
end
|
158
148
|
end
|
159
|
-
@event.stub
|
149
|
+
@event.stub(:name).and_return('jonas')
|
160
150
|
end
|
161
151
|
|
162
152
|
it "should copy the file to the upload directory when a file has been assigned" do
|
@@ -177,5 +167,52 @@ describe CarrierWave::Sequel do
|
|
177
167
|
|
178
168
|
end
|
179
169
|
|
170
|
+
describe '#update' do
|
171
|
+
|
172
|
+
it "should copy the file to the upload directory when a file has been assigned" do
|
173
|
+
@event.save.should be_true
|
174
|
+
@event.update(:image => stub_file('test.jpeg'))
|
175
|
+
@event.reload
|
176
|
+
@event.image.should be_an_instance_of(@uploader)
|
177
|
+
@event.image.current_path.should == public_path('uploads/test.jpeg')
|
178
|
+
end
|
179
|
+
|
180
|
+
end
|
181
|
+
|
182
|
+
describe '#remove_image=' do
|
183
|
+
|
184
|
+
it "should remove the image if remove_image=true" do
|
185
|
+
@event.image = stub_file('test.jpeg')
|
186
|
+
@event.save
|
187
|
+
@event.remove_image = true
|
188
|
+
@event.save
|
189
|
+
@event.reload
|
190
|
+
@event.image.should be_blank
|
191
|
+
@event[:image].should == nil
|
192
|
+
end
|
193
|
+
|
194
|
+
end
|
195
|
+
|
196
|
+
describe '#remove_image!' do
|
197
|
+
|
198
|
+
it "should remove the uploaded file from the filesystem" do
|
199
|
+
@event.image = stub_file('test.jpeg')
|
200
|
+
@event.save
|
201
|
+
@event.remove_image!
|
202
|
+
public_exist?('uploads/test.jpeg').should be_false
|
203
|
+
end
|
204
|
+
|
205
|
+
end
|
206
|
+
|
207
|
+
describe '#store_image!' do
|
208
|
+
|
209
|
+
it "should store a file that has been assigned with image=" do
|
210
|
+
@event.image = stub_file('test.jpeg')
|
211
|
+
@event.store_image!
|
212
|
+
public_exist?('uploads/test.jpeg').should be_true
|
213
|
+
end
|
214
|
+
|
215
|
+
end
|
216
|
+
|
180
217
|
end
|
181
218
|
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,87 +1,80 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: carrierwave-sequel
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
segments:
|
6
|
-
- 0
|
7
|
-
- 1
|
8
|
-
- 0
|
9
|
-
version: 0.1.0
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.1
|
10
5
|
platform: ruby
|
11
|
-
authors:
|
6
|
+
authors:
|
12
7
|
- Jonas Nicklas
|
13
8
|
- Trevor Turk
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2015-10-22 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
22
15
|
name: carrierwave
|
23
|
-
|
24
|
-
|
25
|
-
none: false
|
26
|
-
requirements:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
27
18
|
- - ">="
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
|
30
|
-
- 0
|
31
|
-
version: "0"
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: '0'
|
32
21
|
type: :runtime
|
33
|
-
version_requirements: *id001
|
34
|
-
- !ruby/object:Gem::Dependency
|
35
|
-
name: sequel
|
36
22
|
prerelease: false
|
37
|
-
|
38
|
-
|
39
|
-
requirements:
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
40
25
|
- - ">="
|
41
|
-
- !ruby/object:Gem::Version
|
42
|
-
|
43
|
-
|
44
|
-
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: '0'
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: sequel
|
30
|
+
requirement: !ruby/object:Gem::Requirement
|
31
|
+
requirements:
|
32
|
+
- - ">="
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: '0'
|
45
35
|
type: :runtime
|
46
|
-
version_requirements: *id002
|
47
|
-
- !ruby/object:Gem::Dependency
|
48
|
-
name: rspec
|
49
36
|
prerelease: false
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
37
|
+
version_requirements: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - ">="
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: '0'
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: rspec
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - "~>"
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: 2.14.1
|
59
49
|
type: :development
|
60
|
-
version_requirements: *id003
|
61
|
-
- !ruby/object:Gem::Dependency
|
62
|
-
name: sqlite3
|
63
50
|
prerelease: false
|
64
|
-
|
65
|
-
|
66
|
-
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - "~>"
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: 2.14.1
|
56
|
+
- !ruby/object:Gem::Dependency
|
57
|
+
name: sqlite3
|
58
|
+
requirement: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
67
60
|
- - ">="
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
|
70
|
-
- 0
|
71
|
-
version: "0"
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '0'
|
72
63
|
type: :development
|
73
|
-
|
64
|
+
prerelease: false
|
65
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
|
+
requirements:
|
67
|
+
- - ">="
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
74
70
|
description: Sequel support for CarrierWave
|
75
|
-
email:
|
71
|
+
email:
|
76
72
|
- jonas.nicklas@gmail.com
|
77
73
|
executables: []
|
78
|
-
|
79
74
|
extensions: []
|
80
|
-
|
81
75
|
extra_rdoc_files: []
|
82
|
-
|
83
|
-
|
84
|
-
- .gitignore
|
76
|
+
files:
|
77
|
+
- ".gitignore"
|
85
78
|
- Gemfile
|
86
79
|
- README.rdoc
|
87
80
|
- Rakefile
|
@@ -91,39 +84,30 @@ files:
|
|
91
84
|
- spec/fixtures/test.jpeg
|
92
85
|
- spec/sequel_spec.rb
|
93
86
|
- spec/spec_helper.rb
|
94
|
-
has_rdoc: true
|
95
87
|
homepage: https://github.com/jnicklas/carrierwave-sequel
|
96
88
|
licenses: []
|
97
|
-
|
89
|
+
metadata: {}
|
98
90
|
post_install_message:
|
99
91
|
rdoc_options: []
|
100
|
-
|
101
|
-
require_paths:
|
92
|
+
require_paths:
|
102
93
|
- lib
|
103
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
104
|
-
|
105
|
-
requirements:
|
94
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
95
|
+
requirements:
|
106
96
|
- - ">="
|
107
|
-
- !ruby/object:Gem::Version
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
112
|
-
none: false
|
113
|
-
requirements:
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '0'
|
99
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
114
101
|
- - ">="
|
115
|
-
- !ruby/object:Gem::Version
|
116
|
-
|
117
|
-
- 0
|
118
|
-
version: "0"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
119
104
|
requirements: []
|
120
|
-
|
121
105
|
rubyforge_project: carrierwave-sequel
|
122
|
-
rubygems_version:
|
106
|
+
rubygems_version: 2.4.5.1
|
123
107
|
signing_key:
|
124
|
-
specification_version:
|
108
|
+
specification_version: 4
|
125
109
|
summary: Sequel support for CarrierWave
|
126
|
-
test_files:
|
110
|
+
test_files:
|
127
111
|
- spec/fixtures/test.jpeg
|
128
112
|
- spec/sequel_spec.rb
|
129
113
|
- spec/spec_helper.rb
|