appyantra_admin 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (261) hide show
  1. data/.gitignore +6 -0
  2. data/Gemfile +24 -0
  3. data/MIT-LICENSE +20 -0
  4. data/README.md +101 -0
  5. data/Rakefile +26 -0
  6. data/app/assets/images/appyantra_admin/.gitkeep +0 -0
  7. data/app/assets/images/appyantra_admin/breadcrumb_divider.png +0 -0
  8. data/app/assets/images/appyantra_admin/btn_submit.png +0 -0
  9. data/app/assets/images/appyantra_admin/btn_submit_2.png +0 -0
  10. data/app/assets/images/appyantra_admin/btn_view_site.png +0 -0
  11. data/app/assets/images/appyantra_admin/header_bg.png +0 -0
  12. data/app/assets/images/appyantra_admin/header_shadow.png +0 -0
  13. data/app/assets/images/appyantra_admin/icn_add_user.png +0 -0
  14. data/app/assets/images/appyantra_admin/icn_alert_error.png +0 -0
  15. data/app/assets/images/appyantra_admin/icn_alert_info.png +0 -0
  16. data/app/assets/images/appyantra_admin/icn_alert_success.png +0 -0
  17. data/app/assets/images/appyantra_admin/icn_alert_warning.png +0 -0
  18. data/app/assets/images/appyantra_admin/icn_audio.png +0 -0
  19. data/app/assets/images/appyantra_admin/icn_categories.png +0 -0
  20. data/app/assets/images/appyantra_admin/icn_edit.png +0 -0
  21. data/app/assets/images/appyantra_admin/icn_edit_article.png +0 -0
  22. data/app/assets/images/appyantra_admin/icn_folder.png +0 -0
  23. data/app/assets/images/appyantra_admin/icn_jump_back.png +0 -0
  24. data/app/assets/images/appyantra_admin/icn_logout.png +0 -0
  25. data/app/assets/images/appyantra_admin/icn_new_article.png +0 -0
  26. data/app/assets/images/appyantra_admin/icn_photo.png +0 -0
  27. data/app/assets/images/appyantra_admin/icn_profile.png +0 -0
  28. data/app/assets/images/appyantra_admin/icn_search.png +0 -0
  29. data/app/assets/images/appyantra_admin/icn_security.png +0 -0
  30. data/app/assets/images/appyantra_admin/icn_settings.png +0 -0
  31. data/app/assets/images/appyantra_admin/icn_tags.png +0 -0
  32. data/app/assets/images/appyantra_admin/icn_trash.png +0 -0
  33. data/app/assets/images/appyantra_admin/icn_user.png +0 -0
  34. data/app/assets/images/appyantra_admin/icn_video.png +0 -0
  35. data/app/assets/images/appyantra_admin/icn_view_users.png +0 -0
  36. data/app/assets/images/appyantra_admin/module_footer_bg.png +0 -0
  37. data/app/assets/images/appyantra_admin/post_message.png +0 -0
  38. data/app/assets/images/appyantra_admin/secondary_bar.png +0 -0
  39. data/app/assets/images/appyantra_admin/secondary_bar_shadow.png +0 -0
  40. data/app/assets/images/appyantra_admin/sidebar.png +0 -0
  41. data/app/assets/images/appyantra_admin/sidebar_divider.png +0 -0
  42. data/app/assets/images/appyantra_admin/sidebar_shadow.png +0 -0
  43. data/app/assets/images/appyantra_admin/table_sorter_header.png +0 -0
  44. data/app/assets/images/appyantra_admin/trash.png +0 -0
  45. data/app/assets/images/appyantra_admin/view.png +0 -0
  46. data/app/assets/images/website/600x300.gif +0 -0
  47. data/app/assets/images/website/alert-overlay.png +0 -0
  48. data/app/assets/images/website/bg.png +0 -0
  49. data/app/assets/images/website/link_bg.png +0 -0
  50. data/app/assets/images/website/link_border.png +0 -0
  51. data/app/assets/images/website/place_holder_img.png +0 -0
  52. data/app/assets/images/website/triangle.gif +0 -0
  53. data/app/assets/javascripts/appyantra_admin/admin_settings.js.coffee +3 -0
  54. data/app/assets/javascripts/appyantra_admin/admins/profiles.js.coffee +3 -0
  55. data/app/assets/javascripts/appyantra_admin/application.js +9 -0
  56. data/app/assets/javascripts/appyantra_admin/hideshow.js +39 -0
  57. data/app/assets/javascripts/appyantra_admin/home.js.coffee +3 -0
  58. data/app/assets/javascripts/appyantra_admin/jquery-1.5.2.min.js +16 -0
  59. data/app/assets/javascripts/appyantra_admin/jquery.equalHeight.js +20 -0
  60. data/app/assets/javascripts/appyantra_admin/jquery.tablesorter.min.js +4 -0
  61. data/app/assets/javascripts/appyantra_admin/managed_models.js.coffee +7 -0
  62. data/app/assets/javascripts/website/application.js +8 -0
  63. data/app/assets/javascripts/website/ie/DD_belatedPNG_0.0.8a-min.js +13 -0
  64. data/app/assets/javascripts/website/jquery.easing.1.3.js +205 -0
  65. data/app/assets/javascripts/website/jquery.roundabout-1.0.min.js +41 -0
  66. data/app/assets/javascripts/website/jquery.roundabout-shapes-1.1.js +150 -0
  67. data/app/assets/stylesheets/appyantra_admin/admin_settings.css.scss +3 -0
  68. data/app/assets/stylesheets/appyantra_admin/admins/profiles.css.scss +3 -0
  69. data/app/assets/stylesheets/appyantra_admin/application.css +7 -0
  70. data/app/assets/stylesheets/appyantra_admin/ie/ie.css +43 -0
  71. data/app/assets/stylesheets/appyantra_admin/main.css +1191 -0
  72. data/app/assets/stylesheets/appyantra_admin/managed_models.css.scss +3 -0
  73. data/app/assets/stylesheets/website/application.css +7 -0
  74. data/app/assets/stylesheets/website/reset.css +53 -0
  75. data/app/assets/stylesheets/website/styles.css +889 -0
  76. data/app/controllers/appyantra_admin/admin_settings_controller.rb +101 -0
  77. data/app/controllers/appyantra_admin/application_controller.rb +30 -0
  78. data/app/controllers/appyantra_admin/assets_controller.rb +91 -0
  79. data/app/controllers/appyantra_admin/home_controller.rb +24 -0
  80. data/app/controllers/appyantra_admin/pages_controller.rb +123 -0
  81. data/app/controllers/appyantra_admin/passwords_controller.rb +28 -0
  82. data/app/controllers/appyantra_admin/profiles_controller.rb +94 -0
  83. data/app/controllers/appyantra_admin/sessions_controller.rb +20 -0
  84. data/app/controllers/appyantra_admin/users/confirmations_controller.rb +15 -0
  85. data/app/controllers/appyantra_admin/users/passwords_controller.rb +16 -0
  86. data/app/controllers/appyantra_admin/users/registrations_controller.rb +16 -0
  87. data/app/controllers/appyantra_admin/users/sessions_controller.rb +15 -0
  88. data/app/controllers/appyantra_admin/users/user_paths.rb +33 -0
  89. data/app/controllers/appyantra_admin/users_controller.rb +92 -0
  90. data/app/helpers/appyantra_admin/admin_settings_helper.rb +9 -0
  91. data/app/helpers/appyantra_admin/application_helper.rb +73 -0
  92. data/app/helpers/appyantra_admin/pages_helper.rb +38 -0
  93. data/app/models/activity_feed.rb +5 -0
  94. data/app/models/activity_log_observer.rb +58 -0
  95. data/app/models/admin.rb +11 -0
  96. data/app/models/admin_setting.rb +74 -0
  97. data/app/models/encrypted_text.rb +20 -0
  98. data/app/models/link.rb +5 -0
  99. data/app/models/page.rb +24 -0
  100. data/app/models/page_keyword.rb +4 -0
  101. data/app/models/person.rb +14 -0
  102. data/app/models/short_text.rb +23 -0
  103. data/app/models/text.rb +11 -0
  104. data/app/models/user.rb +11 -0
  105. data/app/sweepers/appyantra_admin/pages_sweeper.rb +20 -0
  106. data/app/views/appyantra_admin/admin_settings/edit.html.haml +7 -0
  107. data/app/views/appyantra_admin/admin_settings/index.html.haml +56 -0
  108. data/app/views/appyantra_admin/admin_settings/mail_settings.html.haml +7 -0
  109. data/app/views/appyantra_admin/admin_settings/new.html.haml +7 -0
  110. data/app/views/appyantra_admin/assets/display.js.haml +3 -0
  111. data/app/views/appyantra_admin/assets/edit.html.haml +7 -0
  112. data/app/views/appyantra_admin/assets/new.html.haml +7 -0
  113. data/app/views/appyantra_admin/assets/show.html.haml +55 -0
  114. data/app/views/appyantra_admin/home/index.html.haml +74 -0
  115. data/app/views/appyantra_admin/mailer/reset_password_instructions.html.haml +6 -0
  116. data/app/views/appyantra_admin/mailer/unlock_instructions.html.haml +6 -0
  117. data/app/views/appyantra_admin/pages/_form.html.haml +40 -0
  118. data/app/views/appyantra_admin/pages/_page.html.haml +43 -0
  119. data/app/views/appyantra_admin/pages/edit.html.haml +19 -0
  120. data/app/views/appyantra_admin/pages/index.html.haml +46 -0
  121. data/app/views/appyantra_admin/pages/new.html.haml +7 -0
  122. data/app/views/appyantra_admin/pages/show.html.haml +1 -0
  123. data/app/views/appyantra_admin/passwords/edit.html.haml +15 -0
  124. data/app/views/appyantra_admin/passwords/new.html.haml +11 -0
  125. data/app/views/appyantra_admin/profiles/_admin_profile_form.html.haml +12 -0
  126. data/app/views/appyantra_admin/profiles/_admin_user.html.haml +11 -0
  127. data/app/views/appyantra_admin/profiles/edit.html.haml +18 -0
  128. data/app/views/appyantra_admin/profiles/index.html.haml +51 -0
  129. data/app/views/appyantra_admin/profiles/new.html.haml +6 -0
  130. data/app/views/appyantra_admin/profiles/show.html.haml +10 -0
  131. data/app/views/appyantra_admin/profiles/show.js.haml +3 -0
  132. data/app/views/appyantra_admin/sessions/new.html.haml +17 -0
  133. data/app/views/appyantra_admin/shared/_asset_item.html.haml +15 -0
  134. data/app/views/appyantra_admin/shared/_assets_list.html.haml +6 -0
  135. data/app/views/appyantra_admin/shared/_formtastic_semantic_form.html.haml +3 -0
  136. data/app/views/appyantra_admin/shared/_hash_form.html.haml +7 -0
  137. data/app/views/appyantra_admin/shared/_links.haml +6 -0
  138. data/app/views/appyantra_admin/shared/types/_encrypted_text.html.haml +1 -0
  139. data/app/views/appyantra_admin/shared/types/_link.html.haml +1 -0
  140. data/app/views/appyantra_admin/shared/types/_short_text.html.haml +1 -0
  141. data/app/views/appyantra_admin/shared/types/_text.html.haml +1 -0
  142. data/app/views/appyantra_admin/unlocks/new.html.haml +10 -0
  143. data/app/views/appyantra_admin/users/_form.html.haml +12 -0
  144. data/app/views/appyantra_admin/users/_user.html.haml +11 -0
  145. data/app/views/appyantra_admin/users/edit.html.haml +18 -0
  146. data/app/views/appyantra_admin/users/index.html.haml +54 -0
  147. data/app/views/appyantra_admin/users/new.html.haml +6 -0
  148. data/app/views/appyantra_admin/users/show.html.haml +10 -0
  149. data/app/views/appyantra_admin/users/show.js.haml +3 -0
  150. data/app/views/layouts/application.html.haml +98 -0
  151. data/app/views/layouts/appyantra_admin/application.html.haml +106 -0
  152. data/app/views/layouts/appyantra_admin/landing_page.html.haml +30 -0
  153. data/app/views/layouts/appyantra_admin/website.html.haml +96 -0
  154. data/app/views/pages/_google_analytics.html.haml +11 -0
  155. data/app/views/pages/_meta_tags.html.haml +2 -0
  156. data/app/views/pages/page.html.haml +4 -0
  157. data/app/views/users/confirmations/new.html.haml +26 -0
  158. data/app/views/users/mailer/confirmation_instructions.html.haml +4 -0
  159. data/app/views/users/mailer/reset_password_instructions.html.haml +6 -0
  160. data/app/views/users/mailer/unlock_instructions.html.haml +5 -0
  161. data/app/views/users/passwords/edit.html.haml +31 -0
  162. data/app/views/users/passwords/new.html.haml +22 -0
  163. data/app/views/users/registrations/edit.html.haml +42 -0
  164. data/app/views/users/registrations/new.html.haml +35 -0
  165. data/app/views/users/sessions/new.html.haml +26 -0
  166. data/app/views/website/index.html.haml +50 -0
  167. data/appyantra_admin.gemspec +24 -0
  168. data/config/initializers/devise.rb +209 -0
  169. data/config/initializers/formtastic.rb +82 -0
  170. data/config/initializers/mail_settings.rb +11 -0
  171. data/config/initializers/secret_token.rb +7 -0
  172. data/config/initializers/session_store.rb +8 -0
  173. data/config/initializers/wrap_parameters.rb +14 -0
  174. data/config/routes.rb +71 -0
  175. data/db/migrate/20120123093508_create_links.rb +15 -0
  176. data/db/migrate/20120123093916_create_texts.rb +10 -0
  177. data/db/migrate/20120123094124_create_admin_settings.rb +12 -0
  178. data/db/migrate/20120124202814_devise_create_admins.rb +25 -0
  179. data/db/migrate/20120125093505_add_name_to_admins.rb +6 -0
  180. data/db/migrate/20120217075442_devise_create_users.rb +25 -0
  181. data/db/migrate/20120217090326_add_name_to_users.rb +6 -0
  182. data/db/migrate/20120224210009_create_pages.rb +19 -0
  183. data/db/migrate/20120302084134_add_group_to_admin_settings.rb +5 -0
  184. data/db/migrate/20120309075847_create_encrypted_texts.rb +10 -0
  185. data/db/migrate/20120309075904_create_short_texts.rb +10 -0
  186. data/db/migrate/20120312234850_add_seo_to_pages.rb +5 -0
  187. data/db/migrate/20120312235235_create_keywords.rb +10 -0
  188. data/db/migrate/20120314063338_create_activity_feeds.rb +15 -0
  189. data/lib/appyantra_admin.rb +49 -0
  190. data/lib/appyantra_admin/crypto.rb +43 -0
  191. data/lib/appyantra_admin/engine.rb +17 -0
  192. data/lib/appyantra_admin/utils.rb +27 -0
  193. data/lib/appyantra_admin/version.rb +3 -0
  194. data/lib/generators/appyantra_admin/install/USAGE +8 -0
  195. data/lib/generators/appyantra_admin/install/install_generator.rb +34 -0
  196. data/lib/generators/appyantra_admin/install/templates/appyantra_admin.rb +28 -0
  197. data/lib/tasks/appyantra_admin_tasks.rake +47 -0
  198. data/script/rails +6 -0
  199. data/test/dummy/.gitignore +36 -0
  200. data/test/dummy/.rspec +1 -0
  201. data/test/dummy/Gemfile +43 -0
  202. data/test/dummy/Guardfile +19 -0
  203. data/test/dummy/README +261 -0
  204. data/test/dummy/Rakefile +8 -0
  205. data/test/dummy/app/assets/javascripts/application.js +9 -0
  206. data/test/dummy/app/assets/stylesheets/application.css +7 -0
  207. data/test/dummy/app/controllers/application_controller.rb +3 -0
  208. data/test/dummy/app/helpers/application_helper.rb +2 -0
  209. data/test/dummy/app/models/product.rb +2 -0
  210. data/test/dummy/config.ru +4 -0
  211. data/test/dummy/config/application.rb +48 -0
  212. data/test/dummy/config/boot.rb +6 -0
  213. data/test/dummy/config/environment.rb +5 -0
  214. data/test/dummy/config/environments/development.rb +30 -0
  215. data/test/dummy/config/environments/production.rb +60 -0
  216. data/test/dummy/config/environments/test.rb +39 -0
  217. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  218. data/test/dummy/config/initializers/inflections.rb +10 -0
  219. data/test/dummy/config/initializers/mime_types.rb +5 -0
  220. data/test/dummy/config/initializers/secret_token.rb +7 -0
  221. data/test/dummy/config/initializers/session_store.rb +8 -0
  222. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  223. data/test/dummy/config/locales/en.yml +5 -0
  224. data/test/dummy/config/routes.rb +4 -0
  225. data/test/dummy/db/migrate/20120213070715_create_products.rb +11 -0
  226. data/test/dummy/db/seeds.rb +7 -0
  227. data/test/dummy/doc/README_FOR_APP +2 -0
  228. data/test/dummy/public/404.html +26 -0
  229. data/test/dummy/public/422.html +26 -0
  230. data/test/dummy/public/500.html +26 -0
  231. data/test/dummy/public/favicon.ico +0 -0
  232. data/test/dummy/public/robots.txt +5 -0
  233. data/test/dummy/script/rails +6 -0
  234. data/test/dummy/spec/controllers/appyantra_admin/admin_settings_controller_spec.rb +56 -0
  235. data/test/dummy/spec/controllers/appyantra_admin/assets_controller_spec.rb +64 -0
  236. data/test/dummy/spec/controllers/appyantra_admin/home_controller_spec.rb +28 -0
  237. data/test/dummy/spec/controllers/appyantra_admin/passwords_controller_spec.rb +40 -0
  238. data/test/dummy/spec/controllers/appyantra_admin/profiles_controller_spec.rb +88 -0
  239. data/test/dummy/spec/controllers/appyantra_admin/sessions_controller_spec.rb +32 -0
  240. data/test/dummy/spec/factories.rb +55 -0
  241. data/test/dummy/spec/factories/products.rb +9 -0
  242. data/test/dummy/spec/helpers/appyantra_admin/application_helper_spec.rb +31 -0
  243. data/test/dummy/spec/models/admin_setting_spec.rb +22 -0
  244. data/test/dummy/spec/models/admin_spec.rb +10 -0
  245. data/test/dummy/spec/models/encrypted_text_spec.rb +13 -0
  246. data/test/dummy/spec/models/link_spec.rb +5 -0
  247. data/test/dummy/spec/models/text_spec.rb +5 -0
  248. data/test/dummy/spec/requests/appyantra_admin/admin_user_auth_spec.rb +54 -0
  249. data/test/dummy/spec/requests/appyantra_admin/dashboard_spec.rb +34 -0
  250. data/test/dummy/spec/requests/appyantra_admin/mailer_spec.rb +72 -0
  251. data/test/dummy/spec/requests/appyantra_admin/manage_pages_spec.rb +209 -0
  252. data/test/dummy/spec/requests/appyantra_admin/manage_website_users_spec.rb +97 -0
  253. data/test/dummy/spec/requests/appyantra_admin/website_users_spec.rb +25 -0
  254. data/test/dummy/spec/routing/sessions_routing_spec.rb +11 -0
  255. data/test/dummy/spec/spec_helper.rb +51 -0
  256. data/test/dummy/spec/support/capybara.rb +7 -0
  257. data/test/dummy/spec/support/controller_macros.rb +8 -0
  258. data/test/dummy/spec/support/integration_macros.rb +40 -0
  259. data/test/dummy/spec/support/load_routes.rb +5 -0
  260. data/test/dummy/spec/support/matchers/user_matcher.rb +13 -0
  261. metadata +428 -0
@@ -0,0 +1,25 @@
1
+ require 'spec_helper'
2
+
3
+ describe "Website users use the website" do
4
+
5
+ let(:password) { 'user123' }
6
+ let(:user1) { FactoryGirl.create(:user, password: password, password_confirmation: password) }
7
+
8
+ login_user
9
+
10
+ it "should allow the user to sign in" do
11
+ within ".alert_message" do
12
+ page.should have_content('Signed in successfully.')
13
+ end
14
+ end
15
+
16
+ it "should allow the user to sign out" do
17
+ within "div.login_box" do
18
+ click_link 'Sign out'
19
+ end
20
+
21
+ within ".alert_message" do
22
+ page.should have_content('Signed out successfully.')
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,11 @@
1
+ require "spec_helper"
2
+
3
+ describe AppyantraAdmin::SessionsController do
4
+ describe "routing" do
5
+
6
+ it "routes to #index" do
7
+ get("/appyantra_admin/sign_in").should route_to("appyantra_admin/sessions#new")
8
+ end
9
+
10
+ end
11
+ end
@@ -0,0 +1,51 @@
1
+ # This file is copied to spec/ when you run 'rails generate rspec:install'
2
+ ENV["RAILS_ENV"] ||= 'test'
3
+ require File.expand_path("../../config/environment", __FILE__)
4
+ require 'rspec/rails'
5
+ require 'rspec/autorun'
6
+ require 'database_cleaner'
7
+
8
+ # Requires supporting ruby files with custom matchers and macros, etc,
9
+ # in spec/support/ and its subdirectories.
10
+ Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
11
+
12
+ RSpec.configure do |config|
13
+ # ## Mock Framework
14
+ #
15
+ # If you prefer to use mocha, flexmock or RR, uncomment the appropriate line:
16
+ #
17
+ # config.mock_with :mocha
18
+ # config.mock_with :flexmock
19
+ # config.mock_with :rr
20
+
21
+ # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures
22
+ #config.fixture_path = "#{::Rails.root}/spec/fixtures"
23
+
24
+ # If you're not using ActiveRecord, or you'd prefer not to run each of your
25
+ # examples within a transaction, remove the following line or assign false
26
+ # instead of true.
27
+ config.use_transactional_fixtures = false
28
+
29
+ # If true, the base class of anonymous controllers will be inferred
30
+ # automatically. This will be the default behavior in future versions of
31
+ # rspec-rails.
32
+ config.infer_base_class_for_anonymous_controllers = false
33
+ # devise
34
+ config.include Devise::TestHelpers, :type => :controller
35
+ config.extend ControllerMacros, :type => :controller
36
+ config.extend IntegrationMacros, :type => :request
37
+
38
+ # db clean up
39
+ config.before(:suite) do
40
+ DatabaseCleaner.strategy = :transaction
41
+ DatabaseCleaner.clean_with(:truncation)
42
+ end
43
+
44
+ config.before(:each) do
45
+ DatabaseCleaner.start
46
+ end
47
+
48
+ config.after(:each) do
49
+ DatabaseCleaner.clean
50
+ end
51
+ end
@@ -0,0 +1,7 @@
1
+ require 'capybara/rails'
2
+ require 'capybara/dsl'
3
+ RSpec.configure do |c|
4
+ c.include Capybara::DSL, :example_group => {
5
+ :file_path => /\bspec\/*\//
6
+ }
7
+ end
@@ -0,0 +1,8 @@
1
+ module ControllerMacros
2
+ def login_admin
3
+ before(:each) do
4
+ @request.env["devise.mapping"] = Devise.mappings[:admin]
5
+ sign_in FactoryGirl.create(:admin)
6
+ end
7
+ end
8
+ end
@@ -0,0 +1,40 @@
1
+ module IntegrationMacros
2
+ def login_admin
3
+ before(:each) do
4
+ visit new_admin_session_path
5
+
6
+ if current_path == new_admin_session_path.to_s
7
+ within(".mini_form_box") do
8
+ password = 'admin123'
9
+ admin_user = Admin.create(email: "admin#{Time.now.to_f}@appyantra.com", password: password, password_confirmation: password,
10
+ first_name: 'Admin', last_name: 'User')
11
+ fill_in 'Email', with: admin_user.email
12
+ fill_in 'Password', with: password
13
+ click_button "Sign in"
14
+ end
15
+ end
16
+ end
17
+ end
18
+
19
+ def login_user
20
+ before(:each) do
21
+ # create a user
22
+ password = 'user123'
23
+ user = User.create(email: "user#{Time.now.to_f}@appyantra.com", password: password, password_confirmation: password)
24
+ # confirm the user
25
+ user.confirm!
26
+
27
+ visit root_path
28
+
29
+ within "div.login_box" do
30
+ click_link 'Sign in'
31
+ end
32
+
33
+ within "div.form_box" do
34
+ fill_in 'Email', with: user.email
35
+ fill_in 'Password', with: password
36
+ click_button 'Sign in'
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,5 @@
1
+ RSpec.configure do |c|
2
+ c.include AppyantraAdmin::Engine.routes.url_helpers,
3
+ :example_group => {
4
+ :file_path => /\bspec\/*\//
5
+ } end
@@ -0,0 +1,13 @@
1
+ RSpec::Matchers.define :be_displayed_on_show_page do |expected_user|
2
+ match do |description|
3
+ user = User.find_by_email(expected_user.email)
4
+ user.should be
5
+ visit appyantra_admin_user_path(user)
6
+
7
+ within "#tab1.tab_content.show_section" do
8
+ page.should have_content(expected_user.first_name)
9
+ page.should have_content(expected_user.last_name)
10
+ page.should have_content(expected_user.email)
11
+ end
12
+ end
13
+ end
metadata ADDED
@@ -0,0 +1,428 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: appyantra_admin
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Govind Naroji
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-03-16 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rails
16
+ requirement: &70180048016460 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: 3.1.3
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *70180048016460
25
+ - !ruby/object:Gem::Dependency
26
+ name: warden
27
+ requirement: &70180048011400 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *70180048011400
36
+ - !ruby/object:Gem::Dependency
37
+ name: haml-rails
38
+ requirement: &70180048009660 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ type: :runtime
45
+ prerelease: false
46
+ version_requirements: *70180048009660
47
+ - !ruby/object:Gem::Dependency
48
+ name: devise
49
+ requirement: &70180048008840 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 1.5.3
55
+ type: :runtime
56
+ prerelease: false
57
+ version_requirements: *70180048008840
58
+ - !ruby/object:Gem::Dependency
59
+ name: formtastic
60
+ requirement: &70180048006940 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ~>
64
+ - !ruby/object:Gem::Version
65
+ version: 2.0.2
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: *70180048006940
69
+ description: ! 'Rails 3 engine for managing an app''s assets, users, pages, blog,
70
+ SEO and Social Media Integration '
71
+ email:
72
+ - govind.naroji@gmail.com
73
+ executables: []
74
+ extensions: []
75
+ extra_rdoc_files: []
76
+ files:
77
+ - .gitignore
78
+ - Gemfile
79
+ - MIT-LICENSE
80
+ - README.md
81
+ - Rakefile
82
+ - app/assets/images/appyantra_admin/.gitkeep
83
+ - app/assets/images/appyantra_admin/breadcrumb_divider.png
84
+ - app/assets/images/appyantra_admin/btn_submit.png
85
+ - app/assets/images/appyantra_admin/btn_submit_2.png
86
+ - app/assets/images/appyantra_admin/btn_view_site.png
87
+ - app/assets/images/appyantra_admin/header_bg.png
88
+ - app/assets/images/appyantra_admin/header_shadow.png
89
+ - app/assets/images/appyantra_admin/icn_add_user.png
90
+ - app/assets/images/appyantra_admin/icn_alert_error.png
91
+ - app/assets/images/appyantra_admin/icn_alert_info.png
92
+ - app/assets/images/appyantra_admin/icn_alert_success.png
93
+ - app/assets/images/appyantra_admin/icn_alert_warning.png
94
+ - app/assets/images/appyantra_admin/icn_audio.png
95
+ - app/assets/images/appyantra_admin/icn_categories.png
96
+ - app/assets/images/appyantra_admin/icn_edit.png
97
+ - app/assets/images/appyantra_admin/icn_edit_article.png
98
+ - app/assets/images/appyantra_admin/icn_folder.png
99
+ - app/assets/images/appyantra_admin/icn_jump_back.png
100
+ - app/assets/images/appyantra_admin/icn_logout.png
101
+ - app/assets/images/appyantra_admin/icn_new_article.png
102
+ - app/assets/images/appyantra_admin/icn_photo.png
103
+ - app/assets/images/appyantra_admin/icn_profile.png
104
+ - app/assets/images/appyantra_admin/icn_search.png
105
+ - app/assets/images/appyantra_admin/icn_security.png
106
+ - app/assets/images/appyantra_admin/icn_settings.png
107
+ - app/assets/images/appyantra_admin/icn_tags.png
108
+ - app/assets/images/appyantra_admin/icn_trash.png
109
+ - app/assets/images/appyantra_admin/icn_user.png
110
+ - app/assets/images/appyantra_admin/icn_video.png
111
+ - app/assets/images/appyantra_admin/icn_view_users.png
112
+ - app/assets/images/appyantra_admin/module_footer_bg.png
113
+ - app/assets/images/appyantra_admin/post_message.png
114
+ - app/assets/images/appyantra_admin/secondary_bar.png
115
+ - app/assets/images/appyantra_admin/secondary_bar_shadow.png
116
+ - app/assets/images/appyantra_admin/sidebar.png
117
+ - app/assets/images/appyantra_admin/sidebar_divider.png
118
+ - app/assets/images/appyantra_admin/sidebar_shadow.png
119
+ - app/assets/images/appyantra_admin/table_sorter_header.png
120
+ - app/assets/images/appyantra_admin/trash.png
121
+ - app/assets/images/appyantra_admin/view.png
122
+ - app/assets/images/website/600x300.gif
123
+ - app/assets/images/website/alert-overlay.png
124
+ - app/assets/images/website/bg.png
125
+ - app/assets/images/website/link_bg.png
126
+ - app/assets/images/website/link_border.png
127
+ - app/assets/images/website/place_holder_img.png
128
+ - app/assets/images/website/triangle.gif
129
+ - app/assets/javascripts/appyantra_admin/admin_settings.js.coffee
130
+ - app/assets/javascripts/appyantra_admin/admins/profiles.js.coffee
131
+ - app/assets/javascripts/appyantra_admin/application.js
132
+ - app/assets/javascripts/appyantra_admin/hideshow.js
133
+ - app/assets/javascripts/appyantra_admin/home.js.coffee
134
+ - app/assets/javascripts/appyantra_admin/jquery-1.5.2.min.js
135
+ - app/assets/javascripts/appyantra_admin/jquery.equalHeight.js
136
+ - app/assets/javascripts/appyantra_admin/jquery.tablesorter.min.js
137
+ - app/assets/javascripts/appyantra_admin/managed_models.js.coffee
138
+ - app/assets/javascripts/website/application.js
139
+ - app/assets/javascripts/website/ie/DD_belatedPNG_0.0.8a-min.js
140
+ - app/assets/javascripts/website/jquery.easing.1.3.js
141
+ - app/assets/javascripts/website/jquery.roundabout-1.0.min.js
142
+ - app/assets/javascripts/website/jquery.roundabout-shapes-1.1.js
143
+ - app/assets/stylesheets/appyantra_admin/admin_settings.css.scss
144
+ - app/assets/stylesheets/appyantra_admin/admins/profiles.css.scss
145
+ - app/assets/stylesheets/appyantra_admin/application.css
146
+ - app/assets/stylesheets/appyantra_admin/ie/ie.css
147
+ - app/assets/stylesheets/appyantra_admin/main.css
148
+ - app/assets/stylesheets/appyantra_admin/managed_models.css.scss
149
+ - app/assets/stylesheets/website/application.css
150
+ - app/assets/stylesheets/website/reset.css
151
+ - app/assets/stylesheets/website/styles.css
152
+ - app/controllers/appyantra_admin/admin_settings_controller.rb
153
+ - app/controllers/appyantra_admin/application_controller.rb
154
+ - app/controllers/appyantra_admin/assets_controller.rb
155
+ - app/controllers/appyantra_admin/home_controller.rb
156
+ - app/controllers/appyantra_admin/pages_controller.rb
157
+ - app/controllers/appyantra_admin/passwords_controller.rb
158
+ - app/controllers/appyantra_admin/profiles_controller.rb
159
+ - app/controllers/appyantra_admin/sessions_controller.rb
160
+ - app/controllers/appyantra_admin/users/confirmations_controller.rb
161
+ - app/controllers/appyantra_admin/users/passwords_controller.rb
162
+ - app/controllers/appyantra_admin/users/registrations_controller.rb
163
+ - app/controllers/appyantra_admin/users/sessions_controller.rb
164
+ - app/controllers/appyantra_admin/users/user_paths.rb
165
+ - app/controllers/appyantra_admin/users_controller.rb
166
+ - app/helpers/appyantra_admin/admin_settings_helper.rb
167
+ - app/helpers/appyantra_admin/application_helper.rb
168
+ - app/helpers/appyantra_admin/pages_helper.rb
169
+ - app/models/activity_feed.rb
170
+ - app/models/activity_log_observer.rb
171
+ - app/models/admin.rb
172
+ - app/models/admin_setting.rb
173
+ - app/models/encrypted_text.rb
174
+ - app/models/link.rb
175
+ - app/models/page.rb
176
+ - app/models/page_keyword.rb
177
+ - app/models/person.rb
178
+ - app/models/short_text.rb
179
+ - app/models/text.rb
180
+ - app/models/user.rb
181
+ - app/sweepers/appyantra_admin/pages_sweeper.rb
182
+ - app/views/appyantra_admin/admin_settings/edit.html.haml
183
+ - app/views/appyantra_admin/admin_settings/index.html.haml
184
+ - app/views/appyantra_admin/admin_settings/mail_settings.html.haml
185
+ - app/views/appyantra_admin/admin_settings/new.html.haml
186
+ - app/views/appyantra_admin/assets/display.js.haml
187
+ - app/views/appyantra_admin/assets/edit.html.haml
188
+ - app/views/appyantra_admin/assets/new.html.haml
189
+ - app/views/appyantra_admin/assets/show.html.haml
190
+ - app/views/appyantra_admin/home/index.html.haml
191
+ - app/views/appyantra_admin/mailer/reset_password_instructions.html.haml
192
+ - app/views/appyantra_admin/mailer/unlock_instructions.html.haml
193
+ - app/views/appyantra_admin/pages/_form.html.haml
194
+ - app/views/appyantra_admin/pages/_page.html.haml
195
+ - app/views/appyantra_admin/pages/edit.html.haml
196
+ - app/views/appyantra_admin/pages/index.html.haml
197
+ - app/views/appyantra_admin/pages/new.html.haml
198
+ - app/views/appyantra_admin/pages/show.html.haml
199
+ - app/views/appyantra_admin/passwords/edit.html.haml
200
+ - app/views/appyantra_admin/passwords/new.html.haml
201
+ - app/views/appyantra_admin/profiles/_admin_profile_form.html.haml
202
+ - app/views/appyantra_admin/profiles/_admin_user.html.haml
203
+ - app/views/appyantra_admin/profiles/edit.html.haml
204
+ - app/views/appyantra_admin/profiles/index.html.haml
205
+ - app/views/appyantra_admin/profiles/new.html.haml
206
+ - app/views/appyantra_admin/profiles/show.html.haml
207
+ - app/views/appyantra_admin/profiles/show.js.haml
208
+ - app/views/appyantra_admin/sessions/new.html.haml
209
+ - app/views/appyantra_admin/shared/_asset_item.html.haml
210
+ - app/views/appyantra_admin/shared/_assets_list.html.haml
211
+ - app/views/appyantra_admin/shared/_formtastic_semantic_form.html.haml
212
+ - app/views/appyantra_admin/shared/_hash_form.html.haml
213
+ - app/views/appyantra_admin/shared/_links.haml
214
+ - app/views/appyantra_admin/shared/types/_encrypted_text.html.haml
215
+ - app/views/appyantra_admin/shared/types/_link.html.haml
216
+ - app/views/appyantra_admin/shared/types/_short_text.html.haml
217
+ - app/views/appyantra_admin/shared/types/_text.html.haml
218
+ - app/views/appyantra_admin/unlocks/new.html.haml
219
+ - app/views/appyantra_admin/users/_form.html.haml
220
+ - app/views/appyantra_admin/users/_user.html.haml
221
+ - app/views/appyantra_admin/users/edit.html.haml
222
+ - app/views/appyantra_admin/users/index.html.haml
223
+ - app/views/appyantra_admin/users/new.html.haml
224
+ - app/views/appyantra_admin/users/show.html.haml
225
+ - app/views/appyantra_admin/users/show.js.haml
226
+ - app/views/layouts/application.html.haml
227
+ - app/views/layouts/appyantra_admin/application.html.haml
228
+ - app/views/layouts/appyantra_admin/landing_page.html.haml
229
+ - app/views/layouts/appyantra_admin/website.html.haml
230
+ - app/views/pages/_google_analytics.html.haml
231
+ - app/views/pages/_meta_tags.html.haml
232
+ - app/views/pages/page.html.haml
233
+ - app/views/users/confirmations/new.html.haml
234
+ - app/views/users/mailer/confirmation_instructions.html.haml
235
+ - app/views/users/mailer/reset_password_instructions.html.haml
236
+ - app/views/users/mailer/unlock_instructions.html.haml
237
+ - app/views/users/passwords/edit.html.haml
238
+ - app/views/users/passwords/new.html.haml
239
+ - app/views/users/registrations/edit.html.haml
240
+ - app/views/users/registrations/new.html.haml
241
+ - app/views/users/sessions/new.html.haml
242
+ - app/views/website/index.html.haml
243
+ - appyantra_admin.gemspec
244
+ - config/initializers/devise.rb
245
+ - config/initializers/formtastic.rb
246
+ - config/initializers/mail_settings.rb
247
+ - config/initializers/secret_token.rb
248
+ - config/initializers/session_store.rb
249
+ - config/initializers/wrap_parameters.rb
250
+ - config/routes.rb
251
+ - db/migrate/20120123093508_create_links.rb
252
+ - db/migrate/20120123093916_create_texts.rb
253
+ - db/migrate/20120123094124_create_admin_settings.rb
254
+ - db/migrate/20120124202814_devise_create_admins.rb
255
+ - db/migrate/20120125093505_add_name_to_admins.rb
256
+ - db/migrate/20120217075442_devise_create_users.rb
257
+ - db/migrate/20120217090326_add_name_to_users.rb
258
+ - db/migrate/20120224210009_create_pages.rb
259
+ - db/migrate/20120302084134_add_group_to_admin_settings.rb
260
+ - db/migrate/20120309075847_create_encrypted_texts.rb
261
+ - db/migrate/20120309075904_create_short_texts.rb
262
+ - db/migrate/20120312234850_add_seo_to_pages.rb
263
+ - db/migrate/20120312235235_create_keywords.rb
264
+ - db/migrate/20120314063338_create_activity_feeds.rb
265
+ - lib/appyantra_admin.rb
266
+ - lib/appyantra_admin/crypto.rb
267
+ - lib/appyantra_admin/engine.rb
268
+ - lib/appyantra_admin/utils.rb
269
+ - lib/appyantra_admin/version.rb
270
+ - lib/generators/appyantra_admin/install/USAGE
271
+ - lib/generators/appyantra_admin/install/install_generator.rb
272
+ - lib/generators/appyantra_admin/install/templates/appyantra_admin.rb
273
+ - lib/tasks/appyantra_admin_tasks.rake
274
+ - script/rails
275
+ - test/dummy/.gitignore
276
+ - test/dummy/.rspec
277
+ - test/dummy/Gemfile
278
+ - test/dummy/Guardfile
279
+ - test/dummy/README
280
+ - test/dummy/Rakefile
281
+ - test/dummy/app/assets/javascripts/application.js
282
+ - test/dummy/app/assets/stylesheets/application.css
283
+ - test/dummy/app/controllers/application_controller.rb
284
+ - test/dummy/app/helpers/application_helper.rb
285
+ - test/dummy/app/models/product.rb
286
+ - test/dummy/config.ru
287
+ - test/dummy/config/application.rb
288
+ - test/dummy/config/boot.rb
289
+ - test/dummy/config/environment.rb
290
+ - test/dummy/config/environments/development.rb
291
+ - test/dummy/config/environments/production.rb
292
+ - test/dummy/config/environments/test.rb
293
+ - test/dummy/config/initializers/backtrace_silencers.rb
294
+ - test/dummy/config/initializers/inflections.rb
295
+ - test/dummy/config/initializers/mime_types.rb
296
+ - test/dummy/config/initializers/secret_token.rb
297
+ - test/dummy/config/initializers/session_store.rb
298
+ - test/dummy/config/initializers/wrap_parameters.rb
299
+ - test/dummy/config/locales/en.yml
300
+ - test/dummy/config/routes.rb
301
+ - test/dummy/db/migrate/20120213070715_create_products.rb
302
+ - test/dummy/db/seeds.rb
303
+ - test/dummy/doc/README_FOR_APP
304
+ - test/dummy/public/404.html
305
+ - test/dummy/public/422.html
306
+ - test/dummy/public/500.html
307
+ - test/dummy/public/favicon.ico
308
+ - test/dummy/public/robots.txt
309
+ - test/dummy/script/rails
310
+ - test/dummy/spec/controllers/appyantra_admin/admin_settings_controller_spec.rb
311
+ - test/dummy/spec/controllers/appyantra_admin/assets_controller_spec.rb
312
+ - test/dummy/spec/controllers/appyantra_admin/home_controller_spec.rb
313
+ - test/dummy/spec/controllers/appyantra_admin/passwords_controller_spec.rb
314
+ - test/dummy/spec/controllers/appyantra_admin/profiles_controller_spec.rb
315
+ - test/dummy/spec/controllers/appyantra_admin/sessions_controller_spec.rb
316
+ - test/dummy/spec/factories.rb
317
+ - test/dummy/spec/factories/products.rb
318
+ - test/dummy/spec/helpers/appyantra_admin/application_helper_spec.rb
319
+ - test/dummy/spec/models/admin_setting_spec.rb
320
+ - test/dummy/spec/models/admin_spec.rb
321
+ - test/dummy/spec/models/encrypted_text_spec.rb
322
+ - test/dummy/spec/models/link_spec.rb
323
+ - test/dummy/spec/models/text_spec.rb
324
+ - test/dummy/spec/requests/appyantra_admin/admin_user_auth_spec.rb
325
+ - test/dummy/spec/requests/appyantra_admin/dashboard_spec.rb
326
+ - test/dummy/spec/requests/appyantra_admin/mailer_spec.rb
327
+ - test/dummy/spec/requests/appyantra_admin/manage_pages_spec.rb
328
+ - test/dummy/spec/requests/appyantra_admin/manage_website_users_spec.rb
329
+ - test/dummy/spec/requests/appyantra_admin/website_users_spec.rb
330
+ - test/dummy/spec/routing/sessions_routing_spec.rb
331
+ - test/dummy/spec/spec_helper.rb
332
+ - test/dummy/spec/support/capybara.rb
333
+ - test/dummy/spec/support/controller_macros.rb
334
+ - test/dummy/spec/support/integration_macros.rb
335
+ - test/dummy/spec/support/load_routes.rb
336
+ - test/dummy/spec/support/matchers/user_matcher.rb
337
+ homepage: http://github.com/appyantra/appyantra_admin
338
+ licenses: []
339
+ post_install_message:
340
+ rdoc_options: []
341
+ require_paths:
342
+ - lib
343
+ required_ruby_version: !ruby/object:Gem::Requirement
344
+ none: false
345
+ requirements:
346
+ - - ! '>='
347
+ - !ruby/object:Gem::Version
348
+ version: '0'
349
+ segments:
350
+ - 0
351
+ hash: -1385488192623929295
352
+ required_rubygems_version: !ruby/object:Gem::Requirement
353
+ none: false
354
+ requirements:
355
+ - - ! '>='
356
+ - !ruby/object:Gem::Version
357
+ version: '0'
358
+ segments:
359
+ - 0
360
+ hash: -1385488192623929295
361
+ requirements: []
362
+ rubyforge_project:
363
+ rubygems_version: 1.8.10
364
+ signing_key:
365
+ specification_version: 3
366
+ summary: Rails 3 engine for managing an app's assets, users, pages, blog, SEO and
367
+ Social Media Integration
368
+ test_files:
369
+ - test/dummy/Gemfile
370
+ - test/dummy/Guardfile
371
+ - test/dummy/README
372
+ - test/dummy/Rakefile
373
+ - test/dummy/app/assets/javascripts/application.js
374
+ - test/dummy/app/assets/stylesheets/application.css
375
+ - test/dummy/app/controllers/application_controller.rb
376
+ - test/dummy/app/helpers/application_helper.rb
377
+ - test/dummy/app/models/product.rb
378
+ - test/dummy/config.ru
379
+ - test/dummy/config/application.rb
380
+ - test/dummy/config/boot.rb
381
+ - test/dummy/config/environment.rb
382
+ - test/dummy/config/environments/development.rb
383
+ - test/dummy/config/environments/production.rb
384
+ - test/dummy/config/environments/test.rb
385
+ - test/dummy/config/initializers/backtrace_silencers.rb
386
+ - test/dummy/config/initializers/inflections.rb
387
+ - test/dummy/config/initializers/mime_types.rb
388
+ - test/dummy/config/initializers/secret_token.rb
389
+ - test/dummy/config/initializers/session_store.rb
390
+ - test/dummy/config/initializers/wrap_parameters.rb
391
+ - test/dummy/config/locales/en.yml
392
+ - test/dummy/config/routes.rb
393
+ - test/dummy/db/migrate/20120213070715_create_products.rb
394
+ - test/dummy/db/seeds.rb
395
+ - test/dummy/doc/README_FOR_APP
396
+ - test/dummy/public/404.html
397
+ - test/dummy/public/422.html
398
+ - test/dummy/public/500.html
399
+ - test/dummy/public/favicon.ico
400
+ - test/dummy/public/robots.txt
401
+ - test/dummy/script/rails
402
+ - test/dummy/spec/controllers/appyantra_admin/admin_settings_controller_spec.rb
403
+ - test/dummy/spec/controllers/appyantra_admin/assets_controller_spec.rb
404
+ - test/dummy/spec/controllers/appyantra_admin/home_controller_spec.rb
405
+ - test/dummy/spec/controllers/appyantra_admin/passwords_controller_spec.rb
406
+ - test/dummy/spec/controllers/appyantra_admin/profiles_controller_spec.rb
407
+ - test/dummy/spec/controllers/appyantra_admin/sessions_controller_spec.rb
408
+ - test/dummy/spec/factories.rb
409
+ - test/dummy/spec/factories/products.rb
410
+ - test/dummy/spec/helpers/appyantra_admin/application_helper_spec.rb
411
+ - test/dummy/spec/models/admin_setting_spec.rb
412
+ - test/dummy/spec/models/admin_spec.rb
413
+ - test/dummy/spec/models/encrypted_text_spec.rb
414
+ - test/dummy/spec/models/link_spec.rb
415
+ - test/dummy/spec/models/text_spec.rb
416
+ - test/dummy/spec/requests/appyantra_admin/admin_user_auth_spec.rb
417
+ - test/dummy/spec/requests/appyantra_admin/dashboard_spec.rb
418
+ - test/dummy/spec/requests/appyantra_admin/mailer_spec.rb
419
+ - test/dummy/spec/requests/appyantra_admin/manage_pages_spec.rb
420
+ - test/dummy/spec/requests/appyantra_admin/manage_website_users_spec.rb
421
+ - test/dummy/spec/requests/appyantra_admin/website_users_spec.rb
422
+ - test/dummy/spec/routing/sessions_routing_spec.rb
423
+ - test/dummy/spec/spec_helper.rb
424
+ - test/dummy/spec/support/capybara.rb
425
+ - test/dummy/spec/support/controller_macros.rb
426
+ - test/dummy/spec/support/integration_macros.rb
427
+ - test/dummy/spec/support/load_routes.rb
428
+ - test/dummy/spec/support/matchers/user_matcher.rb