gluttonberg-blog 1.0.0

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 (86) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +3 -0
  4. data/Rakefile +38 -0
  5. data/app/assets/javascripts/blog/application.js +15 -0
  6. data/app/assets/stylesheets/blog/application.css +13 -0
  7. data/app/controllers/gluttonberg/admin/blog/application_controller.rb +6 -0
  8. data/app/controllers/gluttonberg/admin/blog/articles_controller.rb +168 -0
  9. data/app/controllers/gluttonberg/admin/blog/blogs_controller.rb +95 -0
  10. data/app/controllers/gluttonberg/admin/blog/comments_controller.rb +117 -0
  11. data/app/controllers/gluttonberg/public/blog/articles_controller.rb +88 -0
  12. data/app/controllers/gluttonberg/public/blog/blogs_controller.rb +47 -0
  13. data/app/controllers/gluttonberg/public/blog/comments_controller.rb +54 -0
  14. data/app/helpers/gluttonberg/blog/application_helper.rb +6 -0
  15. data/app/mailers/blog_notifier.rb +26 -0
  16. data/app/models/gluttonberg/blog/article.rb +120 -0
  17. data/app/models/gluttonberg/blog/comment.rb +152 -0
  18. data/app/models/gluttonberg/blog/comment_subscription.rb +31 -0
  19. data/app/models/gluttonberg/blog/weblog.rb +25 -0
  20. data/app/views/blog_notifier/comment_notification.html.haml +17 -0
  21. data/app/views/blog_notifier/comment_notification_for_admin.html.haml +19 -0
  22. data/app/views/gluttonberg/admin/blog/articles/_form.html.haml +106 -0
  23. data/app/views/gluttonberg/admin/blog/articles/edit.html.haml +12 -0
  24. data/app/views/gluttonberg/admin/blog/articles/import.html.haml +36 -0
  25. data/app/views/gluttonberg/admin/blog/articles/index.html.haml +82 -0
  26. data/app/views/gluttonberg/admin/blog/articles/new.html.haml +11 -0
  27. data/app/views/gluttonberg/admin/blog/blogs/_form.html.haml +53 -0
  28. data/app/views/gluttonberg/admin/blog/blogs/edit.html.haml +10 -0
  29. data/app/views/gluttonberg/admin/blog/blogs/index.html.haml +35 -0
  30. data/app/views/gluttonberg/admin/blog/blogs/new.html.haml +10 -0
  31. data/app/views/gluttonberg/admin/blog/comments/index.html.haml +66 -0
  32. data/app/views/gluttonberg/public/blog/articles/index.rss.builder +21 -0
  33. data/app/views/gluttonberg/public/blog/blogs/show.rss.builder +21 -0
  34. data/app/views/layouts/blog/application.html.erb +14 -0
  35. data/config/routes.rb +53 -0
  36. data/lib/generators/gluttonberg/blog/blog_generator.rb +42 -0
  37. data/lib/generators/gluttonberg/blog/templates/articles_index.html.haml +18 -0
  38. data/lib/generators/gluttonberg/blog/templates/articles_show.html.haml +63 -0
  39. data/lib/generators/gluttonberg/blog/templates/articles_tag.html.haml +25 -0
  40. data/lib/generators/gluttonberg/blog/templates/blog_migration.rb +94 -0
  41. data/lib/generators/gluttonberg/blog/templates/blogs_index.html.haml +15 -0
  42. data/lib/generators/gluttonberg/blog/templates/blogs_show.html.haml +26 -0
  43. data/lib/gluttonberg/blog.rb +9 -0
  44. data/lib/gluttonberg/blog/engine.rb +22 -0
  45. data/lib/gluttonberg/blog/tasks/blog_tasks.rake +12 -0
  46. data/lib/gluttonberg/blog/version.rb +5 -0
  47. data/spec/dummy/README.rdoc +261 -0
  48. data/spec/dummy/Rakefile +7 -0
  49. data/spec/dummy/app/assets/javascripts/application.js +15 -0
  50. data/spec/dummy/app/assets/stylesheets/application.css +13 -0
  51. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  52. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  53. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  54. data/spec/dummy/config.ru +4 -0
  55. data/spec/dummy/config/application.rb +59 -0
  56. data/spec/dummy/config/boot.rb +10 -0
  57. data/spec/dummy/config/database.yml +8 -0
  58. data/spec/dummy/config/environment.rb +5 -0
  59. data/spec/dummy/config/environments/development.rb +37 -0
  60. data/spec/dummy/config/environments/production.rb +67 -0
  61. data/spec/dummy/config/environments/test.rb +37 -0
  62. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  63. data/spec/dummy/config/initializers/inflections.rb +15 -0
  64. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  65. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  66. data/spec/dummy/config/initializers/session_store.rb +8 -0
  67. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  68. data/spec/dummy/config/locales/en.yml +5 -0
  69. data/spec/dummy/config/routes.rb +3 -0
  70. data/spec/dummy/db/schema.rb +476 -0
  71. data/spec/dummy/public/404.html +26 -0
  72. data/spec/dummy/public/422.html +26 -0
  73. data/spec/dummy/public/500.html +25 -0
  74. data/spec/dummy/public/favicon.ico +0 -0
  75. data/spec/dummy/script/rails +6 -0
  76. data/spec/fixtures/assets/gb_banner.jpg +0 -0
  77. data/spec/fixtures/assets/gb_logo.png +0 -0
  78. data/spec/fixtures/assets/high_res_photo.jpg +0 -0
  79. data/spec/fixtures/assets/untitled +0 -0
  80. data/spec/fixtures/members.csv +5 -0
  81. data/spec/fixtures/staff_profiles.csv +4 -0
  82. data/spec/helpers/page_info_spec.rb +213 -0
  83. data/spec/mailers/blog_notifier_spec.rb +127 -0
  84. data/spec/models/article_spec.rb +213 -0
  85. data/spec/spec_helper.rb +67 -0
  86. metadata +203 -0
@@ -0,0 +1,213 @@
1
+ # encoding: utf-8
2
+
3
+ require 'spec_helper'
4
+
5
+ module Gluttonberg
6
+ module Blog
7
+ describe Article do
8
+ before :all do
9
+ @locale = Gluttonberg::Locale.generate_default_locale
10
+ @user = User.new({
11
+ :first_name => "First",
12
+ :email => "valid_user@test.com",
13
+ :password => "password1",
14
+ :password_confirmation => "password1"
15
+ })
16
+ @user.role = "super_admin"
17
+ @user.save
18
+ @blog = Weblog.create({
19
+ :name => "The Futurist",
20
+ :description => "Freerange Blog",
21
+ :user => @user
22
+ })
23
+ @article = create_article
24
+ Gluttonberg::Setting.generate_common_settings
25
+ end
26
+
27
+ after :all do
28
+ clean_all_data
29
+ end
30
+
31
+ it "should validate and create new article with localization" do
32
+ @blog.id.should_not be_nil
33
+ @article.valid?.should == true
34
+ @article.id.should_not be_nil
35
+ @article.current_localization.should_not be_nil
36
+
37
+ @article.title.should == "Gluttonberg"
38
+ @article.excerpt.should == "intro"
39
+ @article.body.should == "Introduction"
40
+ @article.user_id.should == @user.id
41
+ @article.author_id.should == @user.id
42
+ @article.blog_id.should == @blog.id
43
+ end
44
+
45
+ it "commenting_disabled?" do
46
+ @article.commenting_disabled?.should == false # by default commenting is enabled
47
+ end
48
+
49
+ it "moderation_required" do
50
+ @article.moderation_required.should == true #defaults to true
51
+
52
+ blog2 = Weblog.create({
53
+ :name => "The Futurist",
54
+ :description => "Freerange Blog",
55
+ :user => @user,
56
+ :moderation_required => true
57
+ })
58
+ article2 = create_article
59
+ article2.blog = blog2
60
+ article2.save
61
+
62
+ blog3 = Weblog.create({
63
+ :name => "The Futurist",
64
+ :description => "Freerange Blog",
65
+ :user => @user,
66
+ :moderation_required => false
67
+ })
68
+ article3 = create_article
69
+ article3.blog = blog3
70
+ article3.save
71
+ article3.moderation_required.should == false
72
+ end
73
+
74
+ it "should load_localization" do
75
+ @article.load_localization
76
+ @article.current_localization.should_not be_nil
77
+ @article.current_localization.locale_id.should == @locale.id
78
+
79
+ @article.load_localization(@locale)
80
+ @article.current_localization.should_not be_nil
81
+ @article.current_localization.locale_id.should == @locale.id
82
+ end
83
+
84
+ it "should be able to duplicate article" do
85
+ article2 = @article.duplicate
86
+ article2.title.should == @article.title
87
+ article2.excerpt.should == @article.excerpt
88
+ article2.body.should == @article.body
89
+ article2.user_id.should == @article.user_id
90
+ article2.author_id.should == @article.author_id
91
+ end
92
+
93
+ it "comments" do
94
+ member = create_member
95
+ comment = prepare_comment(member)
96
+
97
+ comment.valid?.should == true
98
+ comment.save.should == true
99
+ comment.body.should == "Test comment"
100
+ comment.writer_email.should == "Author Email"
101
+ comment.writer_name.should == "Author Name"
102
+ comment.commentable.id.should == @article.id
103
+ comment.writer_name.should == "Author Name"
104
+
105
+ comment.commentable.moderation_required.should == true
106
+ comment.approved.should == false
107
+ comment.moderate "approve"
108
+ comment.approved.should == true
109
+ comment.moderate "disapprove"
110
+ comment.approved.should == false
111
+ end
112
+
113
+ it "comments spam and blacklisting" do
114
+ member = create_member
115
+ comment = prepare_comment(member)
116
+ comment.body = "Привет!Хотите заказать одежду на выгодных условиях? Тогда читайте новость - <a href=http://satdigital.org.ua/novosty/user/Snogeoren/>пальто больших размеров купить </a> кеды мужские <a href=http://ozox.su/>Перейдите на сайт</a> сумки селин купить <a href=http://www.lamoda.kiev.ua/>Нажмите для перехода</a> юбки ... Успехов Вам!
117
+ <a href=http://super-kamagra.blog.hr/>Click here</a> - Cheap Generic Kamagra silagra ::<a href=http://eurovids.us/>Click here</a> - gia porn clips "
118
+ comment.save
119
+ comment.spam.should == true
120
+
121
+ comment = prepare_comment(member)
122
+ comment.body = "cheap [URL=http://louivuittonoutlet.posterous.com/ - louis vuitton outlet online[/URL - at my estore bbkMjMSY [URL=http://louivuittonoutlet.posterous.com/ - http://louisvuittonoutlet.tsublog.tsukaeru.net/ [/URL -
123
+ "
124
+ comment.save
125
+ comment.spam.should == true
126
+
127
+ comment = prepare_comment(member)
128
+ comment.body = "I'm sure the best for you http://www.chanel-outletbags.com/ - chanel handbags outlet to your friends
129
+ "
130
+ comment.save
131
+ comment.spam.should == false
132
+
133
+ comment = prepare_comment(member)
134
+ comment.body = " a scarf ought to be matched with it."
135
+ comment.save
136
+ comment.spam.should == false
137
+
138
+ comment.author_name = "Test"
139
+ comment.author_website = "test.com"
140
+ comment.author_email = "test@test.com"
141
+ comment.save
142
+ comment.black_list_author
143
+
144
+ comment = prepare_comment(member)
145
+ comment.author_email = "test@test.com"
146
+ comment.body = " a scarf ought to be matched with it."
147
+ comment.save
148
+ comment.spam.should == true
149
+
150
+ Gluttonberg::Setting.update_settings("comment_blacklist" => "")
151
+
152
+ comment = prepare_comment(member)
153
+ comment.author_email = "test@test.com"
154
+ comment.body = " a scarf ought to be matched with it."
155
+ comment.save
156
+ comment.spam.should == false
157
+
158
+ comment = prepare_comment(member)
159
+ comment.author_name = nil
160
+ comment.author_email = nil
161
+ comment.body = nil
162
+ comment.save
163
+ comment.spam.should == true
164
+
165
+ comment.writer_email.should == "valid_user@test.com"
166
+ comment.writer_name.should == "First"
167
+ end
168
+
169
+ private
170
+ def create_article
171
+ @article_params = {
172
+ :name => "Gluttonberg",
173
+ :author => @user,
174
+ :user => @user,
175
+ :blog => @blog
176
+ }
177
+ @article_loc_params = {
178
+ :title => "Gluttonberg",
179
+ :excerpt => "intro",
180
+ :body => "Introduction",
181
+ }
182
+ article = Article.new(@article_params)
183
+ article.save
184
+ article.create_localizations(@article_loc_params)
185
+ article
186
+ end
187
+
188
+ def create_member
189
+ member_params = {
190
+ :first_name => "First",
191
+ :email => "valid_user@test.com",
192
+ :password => "password1",
193
+ :password_confirmation => "password1"
194
+ }
195
+ member = Member.create(member_params)
196
+ end
197
+
198
+ def prepare_comment(member)
199
+ params = {
200
+ :author => member,
201
+ :author_name => "Author Name",
202
+ :author_email => "Author Email",
203
+ :author_website => "Author Website",
204
+ :commentable => @article,
205
+ :body => "Test comment"
206
+ }
207
+ comment = Comment.new(params)
208
+ end
209
+
210
+
211
+ end #Article
212
+ end #Blog
213
+ end
@@ -0,0 +1,67 @@
1
+ # This file is copied to spec/ when you run 'rails generate rspec:install'
2
+ ENV["RAILS_ENV"] ||= 'test'
3
+ require 'simplecov'
4
+ SimpleCov.start
5
+ require File.expand_path("../dummy/config/environment", __FILE__)
6
+ require 'rspec/rails'
7
+ require 'rspec/autorun'
8
+
9
+ ENGINE_RAILS_ROOT = File.join( File.dirname(__FILE__), '../' )
10
+
11
+ # Requires supporting ruby files with custom matchers and macros, etc,
12
+ # in spec/support/ and its subdirectories.
13
+ Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
14
+ Dir[File.join(ENGINE_RAILS_ROOT,"spec/support/**/*.rb")].each {|f| require f}
15
+
16
+ RSpec.configure do |config|
17
+ config.fixture_path = "#{ENGINE_RAILS_ROOT}spec/fixtures"
18
+
19
+ # If you're not using ActiveRecord, or you'd prefer not to run each of your
20
+ # examples within a transaction, remove the following line or assign false
21
+ # instead of true.
22
+ config.use_transactional_fixtures = true
23
+
24
+ # If true, the base class of anonymous controllers will be inferred
25
+ # automatically. This will be the default behavior in future versions of
26
+ # rspec-rails.
27
+ config.infer_base_class_for_anonymous_controllers = false
28
+
29
+ config.order = "random"
30
+ end
31
+
32
+
33
+ def clean_all_data
34
+ Gluttonberg::Locale.all.each{|locale| locale.destroy}
35
+ Gluttonberg::Setting.all.each{|setting| setting.destroy}
36
+
37
+ Gluttonberg::Asset.all.each{|asset| asset.destroy}
38
+ Gluttonberg::Library.flush_asset_types
39
+ Gluttonberg::AssetCategory.all.each{|asset_category| asset_category.destroy}
40
+ Gluttonberg::AssetCollection.all.each{|collection| collection.destroy}
41
+
42
+ User.all.each{|user| user.destroy}
43
+ Gluttonberg::Member.all.each{|obj| obj.destroy}
44
+ Gluttonberg::Blog::Weblog.all.each{|obj| obj.destroy}
45
+ Gluttonberg::Blog::Article.all.each{|obj| obj.destroy}
46
+ Gluttonberg::Blog::Comment.all.each{|obj| obj.destroy}
47
+ Gluttonberg::Blog::CommentSubscription.all.each{|obj| obj.destroy}
48
+
49
+ Gluttonberg::Feed.all.each{|obj| obj.destroy}
50
+ end
51
+
52
+
53
+ def create_image_asset
54
+ file = Gluttonberg::GbFile.new(File.join(RSpec.configuration.fixture_path, "assets/gb_banner.jpg"))
55
+ file.original_filename = "gluttonberg_banner.jpg"
56
+ file.content_type = "image/jpeg"
57
+ file.size = 300
58
+ param = {
59
+ :name=>"temp file",
60
+ :file=> file,
61
+ :description=>"<p>test</p>"
62
+ }
63
+ Gluttonberg::Library.bootstrap
64
+ asset = Gluttonberg::Asset.new( param )
65
+ asset.save
66
+ asset
67
+ end
metadata ADDED
@@ -0,0 +1,203 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: gluttonberg-blog
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Nick Crowther
8
+ - Yuri Tomanek
9
+ - Abdul Rauf
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2014-06-12 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: gluttonberg-core
17
+ requirement: !ruby/object:Gem::Requirement
18
+ requirements:
19
+ - - "~>"
20
+ - !ruby/object:Gem::Version
21
+ version: '3.0'
22
+ - - ">="
23
+ - !ruby/object:Gem::Version
24
+ version: 3.0.0
25
+ type: :runtime
26
+ prerelease: false
27
+ version_requirements: !ruby/object:Gem::Requirement
28
+ requirements:
29
+ - - "~>"
30
+ - !ruby/object:Gem::Version
31
+ version: '3.0'
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: 3.0.0
35
+ - !ruby/object:Gem::Dependency
36
+ name: rspec-rails
37
+ requirement: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - '='
40
+ - !ruby/object:Gem::Version
41
+ version: 3.0.1
42
+ type: :development
43
+ prerelease: false
44
+ version_requirements: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - '='
47
+ - !ruby/object:Gem::Version
48
+ version: 3.0.1
49
+ description: Create integrated blogs with powerful publishing flows and user management
50
+ abilities.
51
+ email:
52
+ - office@freerangefuture.com
53
+ executables: []
54
+ extensions: []
55
+ extra_rdoc_files: []
56
+ files:
57
+ - MIT-LICENSE
58
+ - README.md
59
+ - Rakefile
60
+ - app/assets/javascripts/blog/application.js
61
+ - app/assets/stylesheets/blog/application.css
62
+ - app/controllers/gluttonberg/admin/blog/application_controller.rb
63
+ - app/controllers/gluttonberg/admin/blog/articles_controller.rb
64
+ - app/controllers/gluttonberg/admin/blog/blogs_controller.rb
65
+ - app/controllers/gluttonberg/admin/blog/comments_controller.rb
66
+ - app/controllers/gluttonberg/public/blog/articles_controller.rb
67
+ - app/controllers/gluttonberg/public/blog/blogs_controller.rb
68
+ - app/controllers/gluttonberg/public/blog/comments_controller.rb
69
+ - app/helpers/gluttonberg/blog/application_helper.rb
70
+ - app/mailers/blog_notifier.rb
71
+ - app/models/gluttonberg/blog/article.rb
72
+ - app/models/gluttonberg/blog/comment.rb
73
+ - app/models/gluttonberg/blog/comment_subscription.rb
74
+ - app/models/gluttonberg/blog/weblog.rb
75
+ - app/views/blog_notifier/comment_notification.html.haml
76
+ - app/views/blog_notifier/comment_notification_for_admin.html.haml
77
+ - app/views/gluttonberg/admin/blog/articles/_form.html.haml
78
+ - app/views/gluttonberg/admin/blog/articles/edit.html.haml
79
+ - app/views/gluttonberg/admin/blog/articles/import.html.haml
80
+ - app/views/gluttonberg/admin/blog/articles/index.html.haml
81
+ - app/views/gluttonberg/admin/blog/articles/new.html.haml
82
+ - app/views/gluttonberg/admin/blog/blogs/_form.html.haml
83
+ - app/views/gluttonberg/admin/blog/blogs/edit.html.haml
84
+ - app/views/gluttonberg/admin/blog/blogs/index.html.haml
85
+ - app/views/gluttonberg/admin/blog/blogs/new.html.haml
86
+ - app/views/gluttonberg/admin/blog/comments/index.html.haml
87
+ - app/views/gluttonberg/public/blog/articles/index.rss.builder
88
+ - app/views/gluttonberg/public/blog/blogs/show.rss.builder
89
+ - app/views/layouts/blog/application.html.erb
90
+ - config/routes.rb
91
+ - lib/generators/gluttonberg/blog/blog_generator.rb
92
+ - lib/generators/gluttonberg/blog/templates/articles_index.html.haml
93
+ - lib/generators/gluttonberg/blog/templates/articles_show.html.haml
94
+ - lib/generators/gluttonberg/blog/templates/articles_tag.html.haml
95
+ - lib/generators/gluttonberg/blog/templates/blog_migration.rb
96
+ - lib/generators/gluttonberg/blog/templates/blogs_index.html.haml
97
+ - lib/generators/gluttonberg/blog/templates/blogs_show.html.haml
98
+ - lib/gluttonberg/blog.rb
99
+ - lib/gluttonberg/blog/engine.rb
100
+ - lib/gluttonberg/blog/tasks/blog_tasks.rake
101
+ - lib/gluttonberg/blog/version.rb
102
+ - spec/dummy/README.rdoc
103
+ - spec/dummy/Rakefile
104
+ - spec/dummy/app/assets/javascripts/application.js
105
+ - spec/dummy/app/assets/stylesheets/application.css
106
+ - spec/dummy/app/controllers/application_controller.rb
107
+ - spec/dummy/app/helpers/application_helper.rb
108
+ - spec/dummy/app/views/layouts/application.html.erb
109
+ - spec/dummy/config.ru
110
+ - spec/dummy/config/application.rb
111
+ - spec/dummy/config/boot.rb
112
+ - spec/dummy/config/database.yml
113
+ - spec/dummy/config/environment.rb
114
+ - spec/dummy/config/environments/development.rb
115
+ - spec/dummy/config/environments/production.rb
116
+ - spec/dummy/config/environments/test.rb
117
+ - spec/dummy/config/initializers/backtrace_silencers.rb
118
+ - spec/dummy/config/initializers/inflections.rb
119
+ - spec/dummy/config/initializers/mime_types.rb
120
+ - spec/dummy/config/initializers/secret_token.rb
121
+ - spec/dummy/config/initializers/session_store.rb
122
+ - spec/dummy/config/initializers/wrap_parameters.rb
123
+ - spec/dummy/config/locales/en.yml
124
+ - spec/dummy/config/routes.rb
125
+ - spec/dummy/db/schema.rb
126
+ - spec/dummy/public/404.html
127
+ - spec/dummy/public/422.html
128
+ - spec/dummy/public/500.html
129
+ - spec/dummy/public/favicon.ico
130
+ - spec/dummy/script/rails
131
+ - spec/fixtures/assets/gb_banner.jpg
132
+ - spec/fixtures/assets/gb_logo.png
133
+ - spec/fixtures/assets/high_res_photo.jpg
134
+ - spec/fixtures/assets/untitled
135
+ - spec/fixtures/members.csv
136
+ - spec/fixtures/staff_profiles.csv
137
+ - spec/helpers/page_info_spec.rb
138
+ - spec/mailers/blog_notifier_spec.rb
139
+ - spec/models/article_spec.rb
140
+ - spec/spec_helper.rb
141
+ homepage: http://gluttonberg.com
142
+ licenses: []
143
+ metadata: {}
144
+ post_install_message:
145
+ rdoc_options: []
146
+ require_paths:
147
+ - lib
148
+ required_ruby_version: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ required_rubygems_version: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - ">="
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
158
+ requirements: []
159
+ rubyforge_project:
160
+ rubygems_version: 2.2.2
161
+ signing_key:
162
+ specification_version: 4
163
+ summary: Gluttonberg Blog is a peice of cake
164
+ test_files:
165
+ - spec/dummy/app/assets/javascripts/application.js
166
+ - spec/dummy/app/assets/stylesheets/application.css
167
+ - spec/dummy/app/controllers/application_controller.rb
168
+ - spec/dummy/app/helpers/application_helper.rb
169
+ - spec/dummy/app/views/layouts/application.html.erb
170
+ - spec/dummy/config/application.rb
171
+ - spec/dummy/config/boot.rb
172
+ - spec/dummy/config/database.yml
173
+ - spec/dummy/config/environment.rb
174
+ - spec/dummy/config/environments/development.rb
175
+ - spec/dummy/config/environments/production.rb
176
+ - spec/dummy/config/environments/test.rb
177
+ - spec/dummy/config/initializers/backtrace_silencers.rb
178
+ - spec/dummy/config/initializers/inflections.rb
179
+ - spec/dummy/config/initializers/mime_types.rb
180
+ - spec/dummy/config/initializers/secret_token.rb
181
+ - spec/dummy/config/initializers/session_store.rb
182
+ - spec/dummy/config/initializers/wrap_parameters.rb
183
+ - spec/dummy/config/locales/en.yml
184
+ - spec/dummy/config/routes.rb
185
+ - spec/dummy/config.ru
186
+ - spec/dummy/db/schema.rb
187
+ - spec/dummy/public/404.html
188
+ - spec/dummy/public/422.html
189
+ - spec/dummy/public/500.html
190
+ - spec/dummy/public/favicon.ico
191
+ - spec/dummy/Rakefile
192
+ - spec/dummy/README.rdoc
193
+ - spec/dummy/script/rails
194
+ - spec/fixtures/assets/gb_banner.jpg
195
+ - spec/fixtures/assets/gb_logo.png
196
+ - spec/fixtures/assets/high_res_photo.jpg
197
+ - spec/fixtures/assets/untitled
198
+ - spec/fixtures/members.csv
199
+ - spec/fixtures/staff_profiles.csv
200
+ - spec/helpers/page_info_spec.rb
201
+ - spec/mailers/blog_notifier_spec.rb
202
+ - spec/models/article_spec.rb
203
+ - spec/spec_helper.rb