softcover 0.9.20 → 0.9.21
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 +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
|