softcover 0.9.20 → 0.9.21
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/lib/softcover/book.rb +2 -3
- data/lib/softcover/commands/publisher.rb +3 -0
- data/lib/softcover/version.rb +1 -1
- data/spec/commands/publisher_spec.rb +4 -0
- data/spec/spec_helper.rb +1 -0
- data/spec/webmock_helpers.rb +7 -4
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d210ced6bcc18e24fe23d035a92a6074cb43629e
|
4
|
+
data.tar.gz: cf3325e7cee471b7b8cc87e7c69559f093bf9efa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fb154e5033aae56bc40f1d8a1f88f792d81d704761257532e49da97b8bb4ec8af37138eb20ac82c915f330a3940b0d695e03861e5a098ea72dbcc584c5458a28
|
7
|
+
data.tar.gz: a85e372c6041b1e5780e9b4866e88df9310dac4da76344347cd2437b602cdbfff9af126097c24d5c381861fceeb6d5ec7d25f115b32a5a20367a959e1c910f63
|
data/Gemfile
CHANGED
@@ -14,11 +14,11 @@ gemspec
|
|
14
14
|
|
15
15
|
group :test do
|
16
16
|
gem 'rspec'
|
17
|
-
gem 'debugger2' unless ENV['CI'] || RUBY_VERSION == '1.9.3'
|
18
17
|
gem 'webmock', require: false
|
19
18
|
gem 'coveralls', require: false
|
20
19
|
gem 'rack-test'
|
21
20
|
gem 'ruby-prof'
|
21
|
+
gem 'pry'
|
22
22
|
end
|
23
23
|
|
24
24
|
group :development do
|
data/lib/softcover/book.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
class Softcover::Book
|
2
2
|
include Softcover::Utils
|
3
|
+
include Softcover::Output
|
3
4
|
|
4
5
|
DEFAULT_MEDIA_DIR = "media"
|
5
6
|
|
@@ -174,14 +175,12 @@ class Softcover::Book
|
|
174
175
|
# Media handling
|
175
176
|
# ============================================================================
|
176
177
|
|
177
|
-
# 1. iterate over /
|
178
|
+
# 1. iterate over /media/*
|
178
179
|
# => use directory name as path parameter
|
179
180
|
# => get checksums for all included files
|
180
181
|
# => send each to /media API endpoint and then upload
|
181
182
|
|
182
183
|
def process_media
|
183
|
-
process_media_directory "ebooks"
|
184
|
-
|
185
184
|
Dir["media/*"].each do |media_dir|
|
186
185
|
next unless File.directory?(media_dir) && !(media_dir =~ /^\./)
|
187
186
|
process_media_directory media_dir
|
@@ -14,7 +14,10 @@ module Softcover::Commands::Publisher
|
|
14
14
|
puts "Uploading #{current_book.uploader.file_count} files " \
|
15
15
|
"(#{as_size current_book.uploader.total_size}):"
|
16
16
|
end
|
17
|
+
|
17
18
|
url = current_book.upload!(options)
|
19
|
+
current_book.process_media_directory "ebooks"
|
20
|
+
|
18
21
|
unless options[:quiet] || options[:silent]
|
19
22
|
puts "Published! #{url}"
|
20
23
|
end
|
data/lib/softcover/version.rb
CHANGED
@@ -20,6 +20,7 @@ describe Softcover::Commands::Publisher do
|
|
20
20
|
before do
|
21
21
|
chdir_to_book
|
22
22
|
stub_create_book book
|
23
|
+
stub_media_upload book
|
23
24
|
end
|
24
25
|
|
25
26
|
it "publishes" do
|
@@ -43,6 +44,7 @@ describe Softcover::Commands::Publisher do
|
|
43
44
|
before do
|
44
45
|
chdir_to_book
|
45
46
|
stub_create_book book
|
47
|
+
stub_media_upload book
|
46
48
|
subject.publish!
|
47
49
|
stub_destroy_book book
|
48
50
|
end
|
@@ -61,6 +63,7 @@ describe Softcover::Commands::Publisher do
|
|
61
63
|
before do
|
62
64
|
chdir_to_book
|
63
65
|
stub_create_book book
|
66
|
+
stub_media_upload book
|
64
67
|
subject.publish!
|
65
68
|
Softcover::BookConfig['id'] = 0
|
66
69
|
stub_destroy_book_not_found book
|
@@ -75,6 +78,7 @@ describe Softcover::Commands::Publisher do
|
|
75
78
|
before do
|
76
79
|
chdir_to_book
|
77
80
|
stub_create_book book
|
81
|
+
stub_media_upload book
|
78
82
|
subject.publish!
|
79
83
|
Dir.chdir(File.dirname(__FILE__))
|
80
84
|
end
|
data/spec/spec_helper.rb
CHANGED
data/spec/webmock_helpers.rb
CHANGED
@@ -122,14 +122,17 @@ module WebmockHelpers
|
|
122
122
|
to_return(:status => 200, :body => "", :headers => {})
|
123
123
|
end
|
124
124
|
|
125
|
-
def stub_media_upload(book)
|
125
|
+
def stub_media_upload(book, dir='ebooks')
|
126
126
|
stub_s3_post
|
127
127
|
stub_create_book(book)
|
128
128
|
|
129
|
-
files = book.
|
129
|
+
files = book.get_book_files(dir)
|
130
130
|
stub_request(:post,
|
131
|
-
|
132
|
-
with(:body => {
|
131
|
+
/\/books\/#{book.id || '.+'}\/media/).
|
132
|
+
with(:body => {
|
133
|
+
path: dir,
|
134
|
+
files: files,
|
135
|
+
manifest: nil}.to_json,
|
133
136
|
:headers => headers).
|
134
137
|
to_return(:status => 200, :body => {
|
135
138
|
upload_params: files.map { |file|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: softcover
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.21
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Hartl
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-06-
|
12
|
+
date: 2014-06-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: polytexnic
|