ebook_generator 0.0.5 → 1.0.2

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.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/{LICENSE.txt → MIT-LICENSE} +1 -3
  3. data/README.md +10 -17
  4. data/Rakefile +17 -1
  5. data/lib/ebook_generator.rb +75 -72
  6. data/lib/ebook_generator/version.rb +1 -1
  7. data/lib/generators/ebook_generator/ebook_generator_generator.rb +16 -0
  8. data/lib/generators/ebook_generator/templates/create_ebooks.rb +18 -0
  9. data/lib/generators/ebook_generator/templates/create_sections.rb +13 -0
  10. data/lib/generators/ebook_generator/templates/ebook.rb +8 -0
  11. data/lib/generators/ebook_generator/templates/section.rb +6 -0
  12. data/lib/tasks/ebook_generator_tasks.rake +4 -0
  13. data/spec/dummy/README.rdoc +28 -0
  14. data/spec/dummy/Rakefile +6 -0
  15. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  16. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  17. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  18. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  19. data/spec/dummy/app/models/ebook.rb +4 -0
  20. data/spec/dummy/app/models/section.rb +7 -0
  21. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  22. data/spec/dummy/bin/bundle +3 -0
  23. data/spec/dummy/bin/rails +4 -0
  24. data/spec/dummy/bin/rake +4 -0
  25. data/spec/dummy/config.ru +4 -0
  26. data/spec/dummy/config/application.rb +34 -0
  27. data/spec/dummy/config/boot.rb +5 -0
  28. data/spec/dummy/config/database.yml +25 -0
  29. data/spec/dummy/config/environment.rb +5 -0
  30. data/spec/dummy/config/environments/development.rb +37 -0
  31. data/spec/dummy/config/environments/production.rb +82 -0
  32. data/spec/dummy/config/environments/test.rb +39 -0
  33. data/spec/dummy/config/initializers/assets.rb +8 -0
  34. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  35. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  36. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  37. data/spec/dummy/config/initializers/inflections.rb +16 -0
  38. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  39. data/spec/dummy/config/initializers/session_store.rb +3 -0
  40. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  41. data/spec/dummy/config/locales/en.yml +23 -0
  42. data/spec/dummy/config/routes.rb +56 -0
  43. data/spec/dummy/config/secrets.yml +22 -0
  44. data/spec/dummy/db/development.sqlite3 +0 -0
  45. data/spec/dummy/db/migrate/20140416030807_ebooks.rb +17 -0
  46. data/spec/dummy/db/migrate/20140416032844_sections.rb +12 -0
  47. data/spec/dummy/db/migrate/20140416033000_add_index_to_sections_ebook_id_position.rb +6 -0
  48. data/spec/dummy/db/migrate/20140416033315_add_column_slug_to_ebooks.rb +6 -0
  49. data/spec/dummy/db/schema.rb +44 -0
  50. data/spec/dummy/db/test.sqlite3 +0 -0
  51. data/spec/dummy/log/development.log +549 -0
  52. data/spec/dummy/log/test.log +4812 -0
  53. data/spec/dummy/public/404.html +67 -0
  54. data/spec/dummy/public/422.html +67 -0
  55. data/spec/dummy/public/500.html +66 -0
  56. data/spec/dummy/public/favicon.ico +0 -0
  57. data/spec/dummy/tmp/Qui-voluptates-consequuntur-aliquam-iste-numquam..epub +0 -0
  58. data/spec/dummy/tmp/Ratione-soluta-magni-consectetur-delectus-sequi-necessitatibus..epub +0 -0
  59. data/spec/ebook_generator_spec.rb +56 -0
  60. data/spec/factories/factories.rb +35 -0
  61. data/spec/helpers/unzip.rb +13 -0
  62. data/spec/models/ebook_spec.rb +5 -0
  63. data/spec/models/section_spec.rb +5 -0
  64. data/spec/spec_helper.rb +21 -0
  65. data/spec/support/factory_girl.rb +3 -0
  66. metadata +176 -43
  67. data/.gitignore +0 -22
  68. data/Changelog.md +0 -23
  69. data/Gemfile +0 -3
  70. data/ebook_generator.gemspec +0 -28
  71. data/lib/ebook_generator/initializer.rb +0 -5
  72. data/lib/ebook_generator/migration.rb +0 -30
  73. data/lib/generators/ebook_generator_generator.rb +0 -17
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The page you were looking for doesn't exist (404)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/404.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The page you were looking for doesn't exist.</h1>
62
+ <p>You may have mistyped the address or the page may have moved.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The change you wanted was rejected (422)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/422.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The change you wanted was rejected.</h1>
62
+ <p>Maybe you tried to change something you didn't have access to.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>
@@ -0,0 +1,66 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>We're sorry, but something went wrong (500)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/500.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>We're sorry, but something went wrong.</h1>
62
+ </div>
63
+ <p>If you are the application owner check the logs for more information.</p>
64
+ </div>
65
+ </body>
66
+ </html>
File without changes
@@ -0,0 +1,56 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe Ebook, :type => :model do
4
+ describe "generating an ebook" do
5
+ let(:path) { "#{Rails.root.to_s}/tmp" }
6
+
7
+ before(:all) do
8
+ ebook = FactoryGirl.create(:ebook_with_sections)
9
+ file = EbookGenerator.generate_ebook(ebook)
10
+ path = "#{Rails.root.to_s}/tmp"
11
+ unzip_file(file, path)
12
+ end
13
+
14
+ it "should have a mimetype file" do
15
+ expect(File.exist?("#{path}/mimetype")).to be_truthy
16
+ end
17
+
18
+ it "should have a container.xml file" do
19
+ expect(File.exist?("#{path}/META-INF/container.xml")).to be_truthy
20
+ end
21
+
22
+ it "should have 15 sections" do
23
+ expect(File.exist?("#{path}/OEBPS/Text/Section#{rand(15)}.html")).to be_truthy
24
+ end
25
+
26
+ it "should have a content.opf file" do
27
+ expect(File.exist?("#{path}/OEBPS/content.opf")).to be_truthy
28
+ end
29
+
30
+ it "should have toc.ncx file" do
31
+ expect(File.exist?("#{path}/OEBPS/toc.ncx")).to be_truthy
32
+ end
33
+ end
34
+
35
+ describe "converting markdown to HTML" do
36
+ let(:markdown) { "- Hello" }
37
+
38
+ it "should return HTML" do
39
+ expect(EbookGenerator.convert_to_html(markdown)).to eq("<ul>\n<li>Hello</li>\n</ul>\n")
40
+ end
41
+ end
42
+
43
+ describe "generating an ebook" do
44
+ let(:subject) {
45
+ title = Faker::Lorem.sentence(5)
46
+ slug = title.gsub(' ', '-')
47
+
48
+ ebook = FactoryGirl.create(:ebook_with_sections, :title => title, :slug => slug)
49
+ EbookGenerator.generate_ebook(ebook)
50
+ }
51
+
52
+ it "should generate the file" do
53
+ expect(File.exist?(subject)).to be_truthy
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,35 @@
1
+ require 'faker'
2
+
3
+ FactoryGirl.define do
4
+ title = Faker::Lorem.sentence(5)
5
+
6
+ factory :section do
7
+ title { Faker::Lorem.sentence(2) }
8
+ content { Faker::Lorem.paragraph(15) }
9
+ sequence(:position)
10
+
11
+ ebook
12
+ end
13
+
14
+ factory :ebook do
15
+ title { title }
16
+ creator { Faker::Name.name }
17
+ language { "en" }
18
+ contributor { Faker::Name.name }
19
+ description { Faker::Lorem.paragraph(3) }
20
+ publisher { Faker::Name.name }
21
+ rights { Faker::Lorem.paragraph(5) }
22
+ subject { Faker::Lorem.sentence(5) }
23
+ slug { title.gsub(' ', '-') }
24
+
25
+ factory :ebook_with_sections do
26
+ ignore do
27
+ sections_count 15
28
+ end
29
+
30
+ after(:create) do |ebook, evaluator|
31
+ FactoryGirl.create_list(:section, evaluator.sections_count, ebook: ebook)
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,13 @@
1
+ require 'zip'
2
+
3
+ module Unzip
4
+ def unzip_file (file, destination)
5
+ Zip::File.open(file) do |zip_file|
6
+ zip_file.each do |f|
7
+ f_path = File.join(destination, f.name)
8
+ FileUtils.mkdir_p(File.dirname(f_path))
9
+ f.extract(f_path)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,5 @@
1
+ require 'rails_helper'
2
+
3
+ RSpec.describe Ebook, :type => :model do
4
+ pending "add some examples to (or delete) #{__FILE__}"
5
+ end
@@ -0,0 +1,5 @@
1
+ require 'rails_helper'
2
+
3
+ RSpec.describe Section, :type => :model do
4
+ pending "add some examples to (or delete) #{__FILE__}"
5
+ end
@@ -0,0 +1,21 @@
1
+ ENV['RAILS_ENV'] ||= 'test'
2
+
3
+ require File.expand_path("../dummy/config/environment.rb", __FILE__)
4
+
5
+ require 'rspec/rails'
6
+ require 'rspec/autorun'
7
+ require 'factory_girl_rails'
8
+ require 'helpers/unzip'
9
+
10
+ Rails.backtrace_cleaner.remove_silencers!
11
+
12
+ # Load support files
13
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
14
+
15
+ RSpec.configure do |config|
16
+ config.mock_with :rspec
17
+ config.use_transactional_fixtures = true
18
+ config.infer_base_class_for_anonymous_controllers = false
19
+ config.order = "random"
20
+ config.include Unzip
21
+ end
@@ -0,0 +1,3 @@
1
+ RSpec.configure do |config|
2
+ config.include FactoryGirl::Syntax::Methods
3
+ end
metadata CHANGED
@@ -1,105 +1,185 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ebook_generator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kris Quigley
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-30 00:00:00.000000000 Z
11
+ date: 2014-08-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 4.0.0
19
+ version: 4.1.5
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 4.0.0
26
+ version: 4.1.5
27
27
  - !ruby/object:Gem::Dependency
28
- name: friendly_id
28
+ name: redcarpet
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 5.0.3
33
+ version: 3.0.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 5.0.3
40
+ version: 3.0.0
41
41
  - !ruby/object:Gem::Dependency
42
- name: pg
42
+ name: rubyzip
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 0.17.1
47
+ version: 1.0.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: 0.17.1
54
+ version: 1.0.0
55
55
  - !ruby/object:Gem::Dependency
56
- name: redcarpet
56
+ name: sqlite3
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 3.0.0
62
- type: :runtime
61
+ version: '1.3'
62
+ type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 3.0.0
68
+ version: '1.3'
69
69
  - !ruby/object:Gem::Dependency
70
- name: rubyzip
70
+ name: rspec-rails
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 1.0.0
76
- type: :runtime
75
+ version: '3.0'
76
+ type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 1.0.0
83
- description: A simple eBook (ePub) generator gem
84
- email: kris@krisquigley.co.uk
82
+ version: '3.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: factory_girl_rails
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '4.4'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '4.4'
97
+ - !ruby/object:Gem::Dependency
98
+ name: faker
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '1.4'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '1.4'
111
+ description: A simple eBook (ePub and Mobi) generator gem
112
+ email: info@affinity-tech.com
85
113
  executables: []
86
114
  extensions: []
87
115
  extra_rdoc_files: []
88
116
  files:
89
- - .gitignore
90
- - Changelog.md
91
- - Gemfile
92
- - LICENSE.txt
117
+ - MIT-LICENSE
93
118
  - README.md
94
119
  - Rakefile
95
- - ebook_generator.gemspec
96
120
  - lib/ebook_generator.rb
97
- - lib/ebook_generator/initializer.rb
98
- - lib/ebook_generator/migration.rb
99
121
  - lib/ebook_generator/version.rb
100
122
  - lib/ebook_generator/zip_file_processor.rb
101
- - lib/generators/ebook_generator_generator.rb
102
- homepage: https://github.com/krisquigley/ebook_generator
123
+ - lib/generators/ebook_generator/ebook_generator_generator.rb
124
+ - lib/generators/ebook_generator/templates/create_ebooks.rb
125
+ - lib/generators/ebook_generator/templates/create_sections.rb
126
+ - lib/generators/ebook_generator/templates/ebook.rb
127
+ - lib/generators/ebook_generator/templates/section.rb
128
+ - lib/tasks/ebook_generator_tasks.rake
129
+ - spec/dummy/README.rdoc
130
+ - spec/dummy/Rakefile
131
+ - spec/dummy/app/assets/javascripts/application.js
132
+ - spec/dummy/app/assets/stylesheets/application.css
133
+ - spec/dummy/app/controllers/application_controller.rb
134
+ - spec/dummy/app/helpers/application_helper.rb
135
+ - spec/dummy/app/models/ebook.rb
136
+ - spec/dummy/app/models/section.rb
137
+ - spec/dummy/app/views/layouts/application.html.erb
138
+ - spec/dummy/bin/bundle
139
+ - spec/dummy/bin/rails
140
+ - spec/dummy/bin/rake
141
+ - spec/dummy/config.ru
142
+ - spec/dummy/config/application.rb
143
+ - spec/dummy/config/boot.rb
144
+ - spec/dummy/config/database.yml
145
+ - spec/dummy/config/environment.rb
146
+ - spec/dummy/config/environments/development.rb
147
+ - spec/dummy/config/environments/production.rb
148
+ - spec/dummy/config/environments/test.rb
149
+ - spec/dummy/config/initializers/assets.rb
150
+ - spec/dummy/config/initializers/backtrace_silencers.rb
151
+ - spec/dummy/config/initializers/cookies_serializer.rb
152
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
153
+ - spec/dummy/config/initializers/inflections.rb
154
+ - spec/dummy/config/initializers/mime_types.rb
155
+ - spec/dummy/config/initializers/session_store.rb
156
+ - spec/dummy/config/initializers/wrap_parameters.rb
157
+ - spec/dummy/config/locales/en.yml
158
+ - spec/dummy/config/routes.rb
159
+ - spec/dummy/config/secrets.yml
160
+ - spec/dummy/db/development.sqlite3
161
+ - spec/dummy/db/migrate/20140416030807_ebooks.rb
162
+ - spec/dummy/db/migrate/20140416032844_sections.rb
163
+ - spec/dummy/db/migrate/20140416033000_add_index_to_sections_ebook_id_position.rb
164
+ - spec/dummy/db/migrate/20140416033315_add_column_slug_to_ebooks.rb
165
+ - spec/dummy/db/schema.rb
166
+ - spec/dummy/db/test.sqlite3
167
+ - spec/dummy/log/development.log
168
+ - spec/dummy/log/test.log
169
+ - spec/dummy/public/404.html
170
+ - spec/dummy/public/422.html
171
+ - spec/dummy/public/500.html
172
+ - spec/dummy/public/favicon.ico
173
+ - spec/dummy/tmp/Qui-voluptates-consequuntur-aliquam-iste-numquam..epub
174
+ - spec/dummy/tmp/Ratione-soluta-magni-consectetur-delectus-sequi-necessitatibus..epub
175
+ - spec/ebook_generator_spec.rb
176
+ - spec/factories/factories.rb
177
+ - spec/helpers/unzip.rb
178
+ - spec/models/ebook_spec.rb
179
+ - spec/models/section_spec.rb
180
+ - spec/spec_helper.rb
181
+ - spec/support/factory_girl.rb
182
+ homepage: http://www.affinity-tech.com
103
183
  licenses:
104
184
  - MIT
105
185
  metadata: {}
@@ -109,18 +189,71 @@ require_paths:
109
189
  - lib
110
190
  required_ruby_version: !ruby/object:Gem::Requirement
111
191
  requirements:
112
- - - '>='
192
+ - - ">="
113
193
  - !ruby/object:Gem::Version
114
194
  version: '0'
115
195
  required_rubygems_version: !ruby/object:Gem::Requirement
116
196
  requirements:
117
- - - '>='
197
+ - - ">="
118
198
  - !ruby/object:Gem::Version
119
199
  version: '0'
120
200
  requirements: []
121
201
  rubyforge_project:
122
- rubygems_version: 2.1.11
202
+ rubygems_version: 2.2.2
123
203
  signing_key:
124
204
  specification_version: 4
125
205
  summary: Generates eBooks
126
- test_files: []
206
+ test_files:
207
+ - spec/dummy/app/assets/javascripts/application.js
208
+ - spec/dummy/app/assets/stylesheets/application.css
209
+ - spec/dummy/app/controllers/application_controller.rb
210
+ - spec/dummy/app/helpers/application_helper.rb
211
+ - spec/dummy/app/models/ebook.rb
212
+ - spec/dummy/app/models/section.rb
213
+ - spec/dummy/app/views/layouts/application.html.erb
214
+ - spec/dummy/bin/bundle
215
+ - spec/dummy/bin/rails
216
+ - spec/dummy/bin/rake
217
+ - spec/dummy/config/application.rb
218
+ - spec/dummy/config/boot.rb
219
+ - spec/dummy/config/database.yml
220
+ - spec/dummy/config/environment.rb
221
+ - spec/dummy/config/environments/development.rb
222
+ - spec/dummy/config/environments/production.rb
223
+ - spec/dummy/config/environments/test.rb
224
+ - spec/dummy/config/initializers/assets.rb
225
+ - spec/dummy/config/initializers/backtrace_silencers.rb
226
+ - spec/dummy/config/initializers/cookies_serializer.rb
227
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
228
+ - spec/dummy/config/initializers/inflections.rb
229
+ - spec/dummy/config/initializers/mime_types.rb
230
+ - spec/dummy/config/initializers/session_store.rb
231
+ - spec/dummy/config/initializers/wrap_parameters.rb
232
+ - spec/dummy/config/locales/en.yml
233
+ - spec/dummy/config/routes.rb
234
+ - spec/dummy/config/secrets.yml
235
+ - spec/dummy/config.ru
236
+ - spec/dummy/db/development.sqlite3
237
+ - spec/dummy/db/migrate/20140416030807_ebooks.rb
238
+ - spec/dummy/db/migrate/20140416032844_sections.rb
239
+ - spec/dummy/db/migrate/20140416033000_add_index_to_sections_ebook_id_position.rb
240
+ - spec/dummy/db/migrate/20140416033315_add_column_slug_to_ebooks.rb
241
+ - spec/dummy/db/schema.rb
242
+ - spec/dummy/db/test.sqlite3
243
+ - spec/dummy/log/development.log
244
+ - spec/dummy/log/test.log
245
+ - spec/dummy/public/404.html
246
+ - spec/dummy/public/422.html
247
+ - spec/dummy/public/500.html
248
+ - spec/dummy/public/favicon.ico
249
+ - spec/dummy/Rakefile
250
+ - spec/dummy/README.rdoc
251
+ - spec/dummy/tmp/Qui-voluptates-consequuntur-aliquam-iste-numquam..epub
252
+ - spec/dummy/tmp/Ratione-soluta-magni-consectetur-delectus-sequi-necessitatibus..epub
253
+ - spec/ebook_generator_spec.rb
254
+ - spec/factories/factories.rb
255
+ - spec/helpers/unzip.rb
256
+ - spec/models/ebook_spec.rb
257
+ - spec/models/section_spec.rb
258
+ - spec/spec_helper.rb
259
+ - spec/support/factory_girl.rb