muck-users 0.1.3 → 0.1.4

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 (226) hide show
  1. data/README.rdoc +12 -3
  2. data/Rakefile +3 -2
  3. data/VERSION +1 -1
  4. data/muck-users.gemspec +257 -37
  5. data/pkg/muck-users-0.1.4.gem +0 -0
  6. data/rdoc/classes/ActiveRecord/SecureMethods.html +216 -0
  7. data/rdoc/classes/ActiveRecord.html +10 -0
  8. data/rdoc/classes/MuckUsers/Tasks.html +6 -6
  9. data/rdoc/created.rid +1 -1
  10. data/rdoc/files/lib/active_record/secure_methods_rb.html +101 -0
  11. data/rdoc/files/lib/muck_users_rb.html +2 -1
  12. data/rdoc/fr_class_index.html +1 -0
  13. data/rdoc/fr_file_index.html +1 -0
  14. data/rdoc/fr_method_index.html +7 -3
  15. data/test/rails_root/.gitignore +8 -0
  16. data/test/rails_root/.rake_tasks +103 -0
  17. data/test/rails_root/Capfile +3 -0
  18. data/test/rails_root/Rakefile +15 -0
  19. data/test/rails_root/app/controllers/application_controller.rb +6 -0
  20. data/test/rails_root/app/controllers/default_controller.rb +7 -0
  21. data/test/rails_root/app/helpers/application_helper.rb +3 -0
  22. data/test/rails_root/app/models/.keep +0 -0
  23. data/test/rails_root/app/models/user.rb +15 -0
  24. data/test/rails_root/app/models/user_session.rb +2 -0
  25. data/test/rails_root/app/views/default/index.html.erb +0 -0
  26. data/test/rails_root/app/views/layouts/default.html.erb +26 -0
  27. data/test/rails_root/config/amazon_s3.yml +14 -0
  28. data/test/rails_root/config/boot.rb +109 -0
  29. data/test/rails_root/config/database.yml +14 -0
  30. data/test/rails_root/config/environment.rb +22 -0
  31. data/test/rails_root/config/environments/development.rb +19 -0
  32. data/test/rails_root/config/environments/production.rb +1 -0
  33. data/test/rails_root/config/environments/test.rb +33 -0
  34. data/test/rails_root/config/global_config.yml +18 -0
  35. data/test/rails_root/config/initializers/inflections.rb +10 -0
  36. data/test/rails_root/config/initializers/mime_types.rb +5 -0
  37. data/test/rails_root/config/initializers/requires.rb +13 -0
  38. data/test/rails_root/config/initializers/session_store.rb +8 -0
  39. data/test/rails_root/config/routes.rb +9 -0
  40. data/test/rails_root/db/.keep +0 -0
  41. data/test/rails_root/db/migrate/20090320174818_create_muck_permissions_and_roles.rb +16 -0
  42. data/test/rails_root/db/migrate/20090602041838_create_users.rb +39 -0
  43. data/test/rails_root/db/schema.rb +131 -0
  44. data/test/rails_root/features/step_definitions/webrat_steps.rb +99 -0
  45. data/test/rails_root/features/support/env.rb +14 -0
  46. data/test/rails_root/public/.htaccess +40 -0
  47. data/test/rails_root/public/404.html +30 -0
  48. data/test/rails_root/public/422.html +30 -0
  49. data/test/rails_root/public/500.html +30 -0
  50. data/test/rails_root/public/dispatch.rb +10 -0
  51. data/test/rails_root/public/favicon.ico +0 -0
  52. data/test/rails_root/public/images/arrow_left.gif +0 -0
  53. data/test/rails_root/public/images/arrow_right.gif +0 -0
  54. data/test/rails_root/public/images/blue/preview.gif +0 -0
  55. data/test/rails_root/public/images/icons/accept.png +0 -0
  56. data/test/rails_root/public/images/icons/add.png +0 -0
  57. data/test/rails_root/public/images/icons/delete.png +0 -0
  58. data/test/rails_root/public/images/icons/vote.png +0 -0
  59. data/test/rails_root/public/images/loading.gif +0 -0
  60. data/test/rails_root/public/images/profile_default.jpg +0 -0
  61. data/test/rails_root/public/images/rails.png +0 -0
  62. data/test/rails_root/public/images/red/preview.gif +0 -0
  63. data/test/rails_root/public/images/spinner.gif +0 -0
  64. data/test/rails_root/public/images/sprites.png +0 -0
  65. data/test/rails_root/public/javascripts/application.js +2 -0
  66. data/test/rails_root/public/javascripts/builder.js +136 -0
  67. data/test/rails_root/public/javascripts/controls.js +963 -0
  68. data/test/rails_root/public/javascripts/dragdrop.js +972 -0
  69. data/test/rails_root/public/javascripts/effects.js +1120 -0
  70. data/test/rails_root/public/javascripts/fancyzoom.min.js +1 -0
  71. data/test/rails_root/public/javascripts/jquery/jquery-ui.js +273 -0
  72. data/test/rails_root/public/javascripts/jquery/jquery.form.js +637 -0
  73. data/test/rails_root/public/javascripts/jquery/jquery.jgrowl.js +2 -0
  74. data/test/rails_root/public/javascripts/jquery/jquery.js +19 -0
  75. data/test/rails_root/public/javascripts/jquery/jquery.tips.js +69 -0
  76. data/test/rails_root/public/javascripts/muck.js +76 -0
  77. data/test/rails_root/public/javascripts/muck_activities.js +100 -0
  78. data/test/rails_root/public/javascripts/prototype.js +4225 -0
  79. data/test/rails_root/public/javascripts/scriptaculous.js +58 -0
  80. data/test/rails_root/public/javascripts/slider.js +277 -0
  81. data/test/rails_root/public/javascripts/sound.js +60 -0
  82. data/test/rails_root/public/robots.txt +1 -0
  83. data/test/rails_root/public/stylesheets/.keep +0 -0
  84. data/test/rails_root/public/stylesheets/admin.css +12 -0
  85. data/test/rails_root/public/stylesheets/blueprint/ie.css +26 -0
  86. data/test/rails_root/public/stylesheets/blueprint/liquid_screen.css +203 -0
  87. data/test/rails_root/public/stylesheets/blueprint/plugins/buttons/icons/cross.png +0 -0
  88. data/test/rails_root/public/stylesheets/blueprint/plugins/buttons/icons/key.png +0 -0
  89. data/test/rails_root/public/stylesheets/blueprint/plugins/buttons/icons/tick.png +0 -0
  90. data/test/rails_root/public/stylesheets/blueprint/plugins/buttons/readme.txt +32 -0
  91. data/test/rails_root/public/stylesheets/blueprint/plugins/buttons/screen.css +97 -0
  92. data/test/rails_root/public/stylesheets/blueprint/plugins/fancy-type/readme.txt +14 -0
  93. data/test/rails_root/public/stylesheets/blueprint/plugins/fancy-type/screen.css +71 -0
  94. data/test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/doc.png +0 -0
  95. data/test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/email.png +0 -0
  96. data/test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/external.png +0 -0
  97. data/test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/feed.png +0 -0
  98. data/test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/im.png +0 -0
  99. data/test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/pdf.png +0 -0
  100. data/test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/visited.png +0 -0
  101. data/test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/xls.png +0 -0
  102. data/test/rails_root/public/stylesheets/blueprint/plugins/link-icons/readme.txt +18 -0
  103. data/test/rails_root/public/stylesheets/blueprint/plugins/link-icons/screen.css +40 -0
  104. data/test/rails_root/public/stylesheets/blueprint/plugins/liquid/liquid.css +134 -0
  105. data/test/rails_root/public/stylesheets/blueprint/plugins/liquid/src/liquid.css +197 -0
  106. data/test/rails_root/public/stylesheets/blueprint/plugins/rtl/readme.txt +10 -0
  107. data/test/rails_root/public/stylesheets/blueprint/plugins/rtl/screen.css +109 -0
  108. data/test/rails_root/public/stylesheets/blueprint/print.css +30 -0
  109. data/test/rails_root/public/stylesheets/blueprint/screen.css +251 -0
  110. data/test/rails_root/public/stylesheets/blueprint/sprite.css +1 -0
  111. data/test/rails_root/public/stylesheets/blueprint/src/forms.css +49 -0
  112. data/test/rails_root/public/stylesheets/blueprint/src/grid.css +213 -0
  113. data/test/rails_root/public/stylesheets/blueprint/src/grid.png +0 -0
  114. data/test/rails_root/public/stylesheets/blueprint/src/ie.css +59 -0
  115. data/test/rails_root/public/stylesheets/blueprint/src/print.css +85 -0
  116. data/test/rails_root/public/stylesheets/blueprint/src/reset.css +38 -0
  117. data/test/rails_root/public/stylesheets/blueprint/src/typography.css +105 -0
  118. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_diagonals-small_0_aaaaaa_40x40.png +0 -0
  119. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_diagonals-thick_15_444444_40x40.png +0 -0
  120. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_glass_100_f0f0f0_1x400.png +0 -0
  121. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_glass_50_99c2ff_1x400.png +0 -0
  122. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_glass_55_fbf5d0_1x400.png +0 -0
  123. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_glass_80_e6e6e6_1x400.png +0 -0
  124. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  125. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_highlight-hard_100_f9f9f9_1x100.png +0 -0
  126. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_highlight-soft_100_e7eef3_1x100.png +0 -0
  127. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_222222_256x240.png +0 -0
  128. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_2694e8_256x240.png +0 -0
  129. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_2e83ff_256x240.png +0 -0
  130. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_72a7cf_256x240.png +0 -0
  131. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_888888_256x240.png +0 -0
  132. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_cd0a0a_256x240.png +0 -0
  133. data/test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_ffffff_256x240.png +0 -0
  134. data/test/rails_root/public/stylesheets/jquery/cupertino/jquery-ui-1.7.1.custom.css +404 -0
  135. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  136. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_flat_55_fbec88_40x100.png +0 -0
  137. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png +0 -0
  138. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_glass_85_dfeffc_1x400.png +0 -0
  139. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  140. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png +0 -0
  141. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png +0 -0
  142. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png +0 -0
  143. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_217bc0_256x240.png +0 -0
  144. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_2e83ff_256x240.png +0 -0
  145. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_469bdd_256x240.png +0 -0
  146. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_6da8d5_256x240.png +0 -0
  147. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_cd0a0a_256x240.png +0 -0
  148. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_d8e7f3_256x240.png +0 -0
  149. data/test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_f9bd01_256x240.png +0 -0
  150. data/test/rails_root/public/stylesheets/jquery/redmond/jquery-ui-1.7.1.custom.css +404 -0
  151. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  152. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  153. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  154. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  155. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  156. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  157. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  158. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  159. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_222222_256x240.png +0 -0
  160. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  161. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_454545_256x240.png +0 -0
  162. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_888888_256x240.png +0 -0
  163. data/test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  164. data/test/rails_root/public/stylesheets/jquery/smoothness/jquery-ui-1.7.1.custom.css +404 -0
  165. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  166. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  167. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_flat_10_000000_40x100.png +0 -0
  168. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  169. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  170. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  171. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  172. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  173. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  174. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_222222_256x240.png +0 -0
  175. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_228ef1_256x240.png +0 -0
  176. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_ef8c08_256x240.png +0 -0
  177. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_ffd27a_256x240.png +0 -0
  178. data/test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_ffffff_256x240.png +0 -0
  179. data/test/rails_root/public/stylesheets/jquery/ui-lightness/jquery-ui-1.7.1.custom.css +404 -0
  180. data/test/rails_root/public/stylesheets/reset.css +0 -0
  181. data/test/rails_root/public/stylesheets/styles.css +79 -0
  182. data/test/rails_root/public/stylesheets/themes/blue/styles.css +1 -0
  183. data/test/rails_root/public/stylesheets/themes/red/styles.css +1 -0
  184. data/test/rails_root/script/about +3 -0
  185. data/test/rails_root/script/breakpointer +3 -0
  186. data/test/rails_root/script/console +3 -0
  187. data/test/rails_root/script/create_project.rb +52 -0
  188. data/test/rails_root/script/cucumber +7 -0
  189. data/test/rails_root/script/dbconsole +3 -0
  190. data/test/rails_root/script/destroy +3 -0
  191. data/test/rails_root/script/generate +3 -0
  192. data/test/rails_root/script/performance/benchmarker +3 -0
  193. data/test/rails_root/script/performance/profiler +3 -0
  194. data/test/rails_root/script/performance/request +3 -0
  195. data/test/rails_root/script/plugin +3 -0
  196. data/test/rails_root/script/process/inspector +3 -0
  197. data/test/rails_root/script/process/reaper +3 -0
  198. data/test/rails_root/script/process/spawner +3 -0
  199. data/test/rails_root/script/runner +3 -0
  200. data/test/rails_root/script/server +3 -0
  201. data/test/{factories.rb → rails_root/test/factories.rb} +0 -0
  202. data/test/rails_root/test/functional/.keep +0 -0
  203. data/test/{functional → rails_root/test/functional}/activations_controller_test.rb +0 -0
  204. data/test/{functional → rails_root/test/functional}/admin/roles_controller_test.rb +0 -0
  205. data/test/{functional → rails_root/test/functional}/admin/users_controller_test.rb +0 -0
  206. data/test/{functional → rails_root/test/functional}/password_resets_controller_test.rb +0 -0
  207. data/test/{functional → rails_root/test/functional}/user_sessions_controller_test.rb +0 -0
  208. data/test/{functional → rails_root/test/functional}/users_controller_test.rb +0 -0
  209. data/test/rails_root/test/integration/.keep +0 -0
  210. data/test/rails_root/test/mocks/development/.keep +0 -0
  211. data/test/rails_root/test/mocks/test/.keep +0 -0
  212. data/test/{shoulda_macros → rails_root/test/shoulda_macros}/controller.rb +0 -0
  213. data/test/{shoulda_macros → rails_root/test/shoulda_macros}/forms.rb +0 -0
  214. data/test/{shoulda_macros → rails_root/test/shoulda_macros}/models.rb +0 -0
  215. data/test/{shoulda_macros → rails_root/test/shoulda_macros}/pagination.rb +0 -0
  216. data/test/{shoulda_macros → rails_root/test/shoulda_macros}/plugins.rb +0 -0
  217. data/test/{test_helper.rb → rails_root/test/test_helper.rb} +4 -3
  218. data/test/rails_root/test/unit/.keep +0 -0
  219. data/test/{unit → rails_root/test/unit}/muck_user_mailer_test.rb +0 -0
  220. data/test/{unit → rails_root/test/unit}/permission_test.rb +0 -0
  221. data/test/{unit → rails_root/test/unit}/role_test.rb +0 -0
  222. data/test/rails_root/vendor/plugins/ssl_requirement/README +43 -0
  223. data/test/rails_root/vendor/plugins/ssl_requirement/lib/ssl_requirement.rb +62 -0
  224. data/test/rails_root/vendor/plugins/ssl_requirement/test/ssl_requirement_test.rb +132 -0
  225. metadata +264 -35
  226. data/pkg/muck-users-0.1.3.gem +0 -0
File without changes
File without changes
File without changes
@@ -1,18 +1,19 @@
1
1
  $:.reject! { |e| e.include? 'TextMate' }
2
2
  ENV["RAILS_ENV"] = "test"
3
- #require File.expand_path(File.dirname(__FILE__) + "/../../../../config/environment")
3
+ require File.expand_path(File.dirname(__FILE__) + "/../config/environment")
4
4
  require 'test_help'
5
+ gem 'thoughtbot-factory_girl' # from github
5
6
  require 'factory_girl'
6
- require 'ruby-debug'
7
7
  require 'mocha'
8
8
  require 'authlogic/test_case'
9
9
  require 'redgreen' rescue LoadError
10
10
  require File.expand_path(File.dirname(__FILE__) + '/factories')
11
11
  require File.join(File.dirname(__FILE__), 'shoulda_macros', 'controller')
12
+
12
13
  class ActiveSupport::TestCase
13
14
  self.use_transactional_fixtures = true
14
15
  self.use_instantiated_fixtures = false
15
-
16
+
16
17
  include Authlogic::TestCase
17
18
 
18
19
  def login_as(user)
File without changes
File without changes
@@ -0,0 +1,43 @@
1
+ SSL Requirement
2
+ ===============
3
+
4
+ SSL requirement adds a declarative way of specifying that certain actions
5
+ should only be allowed to run under SSL, and if they're accessed without it,
6
+ they should be redirected.
7
+
8
+ Example:
9
+
10
+ class ApplicationController < ActiveRecord::Base
11
+ include SslRequirement
12
+ end
13
+
14
+ class AccountController < ApplicationController
15
+ ssl_required :signup, :payment
16
+ ssl_allowed :index
17
+
18
+ def signup
19
+ # Non-SSL access will be redirected to SSL
20
+ end
21
+
22
+ def payment
23
+ # Non-SSL access will be redirected to SSL
24
+ end
25
+
26
+ def index
27
+ # This action will work either with or without SSL
28
+ end
29
+
30
+ def other
31
+ # SSL access will be redirected to non-SSL
32
+ end
33
+ end
34
+
35
+ You can overwrite the protected method ssl_required? to rely on other things
36
+ than just the declarative specification. Say, only premium accounts get SSL.
37
+
38
+ P.S.: Beware when you include the SslRequirement module. At the time of
39
+ inclusion, it'll add the before_filter that validates the declarations. Some
40
+ times you'll want to run other before_filters before that. They should then be
41
+ declared ahead of including this module.
42
+
43
+ Copyright (c) 2005 David Heinemeier Hansson, released under the MIT license
@@ -0,0 +1,62 @@
1
+ # Copyright (c) 2005 David Heinemeier Hansson
2
+ #
3
+ # Permission is hereby granted, free of charge, to any person obtaining
4
+ # a copy of this software and associated documentation files (the
5
+ # "Software"), to deal in the Software without restriction, including
6
+ # without limitation the rights to use, copy, modify, merge, publish,
7
+ # distribute, sublicense, and/or sell copies of the Software, and to
8
+ # permit persons to whom the Software is furnished to do so, subject to
9
+ # the following conditions:
10
+ #
11
+ # The above copyright notice and this permission notice shall be
12
+ # included in all copies or substantial portions of the Software.
13
+ #
14
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21
+ module SslRequirement
22
+ def self.included(controller)
23
+ controller.extend(ClassMethods)
24
+ controller.before_filter(:ensure_proper_protocol)
25
+ end
26
+
27
+ module ClassMethods
28
+ # Specifies that the named actions requires an SSL connection to be performed (which is enforced by ensure_proper_protocol).
29
+ def ssl_required(*actions)
30
+ write_inheritable_array(:ssl_required_actions, actions)
31
+ end
32
+
33
+ def ssl_allowed(*actions)
34
+ write_inheritable_array(:ssl_allowed_actions, actions)
35
+ end
36
+ end
37
+
38
+ protected
39
+ # Returns true if the current action is supposed to run as SSL
40
+ def ssl_required?
41
+ (self.class.read_inheritable_attribute(:ssl_required_actions) || []).include?(action_name.to_sym)
42
+ end
43
+
44
+ def ssl_allowed?
45
+ (self.class.read_inheritable_attribute(:ssl_allowed_actions) || []).include?(action_name.to_sym)
46
+ end
47
+
48
+ private
49
+ def ensure_proper_protocol
50
+ return true if ssl_allowed?
51
+
52
+ if ssl_required? && !request.ssl?
53
+ redirect_to "https://" + request.host + request.request_uri
54
+ flash.keep
55
+ return false
56
+ elsif request.ssl? && !ssl_required?
57
+ redirect_to "http://" + request.host + request.request_uri
58
+ flash.keep
59
+ return false
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,132 @@
1
+ begin
2
+ require 'action_controller'
3
+ rescue LoadError
4
+ if ENV['ACTIONCONTROLLER_PATH'].nil?
5
+ abort <<MSG
6
+ Please set the ACTIONCONTROLLER_PATH environment variable to the directory
7
+ containing the action_controller.rb file.
8
+ MSG
9
+ else
10
+ $LOAD_PATH.unshift << ENV['ACTIONCONTROLLER_PATH']
11
+ begin
12
+ require 'action_controller'
13
+ rescue LoadError
14
+ abort "ActionController could not be found."
15
+ end
16
+ end
17
+ end
18
+
19
+ require 'action_controller/test_process'
20
+ require 'test/unit'
21
+ require "#{File.dirname(__FILE__)}/../lib/ssl_requirement"
22
+
23
+ ActionController::Base.logger = nil
24
+ ActionController::Routing::Routes.reload rescue nil
25
+
26
+ class SslRequirementController < ActionController::Base
27
+ include SslRequirement
28
+
29
+ ssl_required :a, :b
30
+ ssl_allowed :c
31
+
32
+ def a
33
+ render :nothing => true
34
+ end
35
+
36
+ def b
37
+ render :nothing => true
38
+ end
39
+
40
+ def c
41
+ render :nothing => true
42
+ end
43
+
44
+ def d
45
+ render :nothing => true
46
+ end
47
+
48
+ def set_flash
49
+ flash[:foo] = "bar"
50
+ end
51
+ end
52
+
53
+ class SslRequirementTest < Test::Unit::TestCase
54
+ def setup
55
+ @controller = SslRequirementController.new
56
+ @request = ActionController::TestRequest.new
57
+ @response = ActionController::TestResponse.new
58
+ end
59
+
60
+ def test_redirect_to_https_preserves_flash
61
+ get :set_flash
62
+ get :b
63
+ assert_response :redirect
64
+ assert_equal "bar", flash[:foo]
65
+ end
66
+
67
+ def test_not_redirecting_to_https_does_not_preserve_the_flash
68
+ get :set_flash
69
+ get :d
70
+ assert_response :success
71
+ assert_nil flash[:foo]
72
+ end
73
+
74
+ def test_redirect_to_http_preserves_flash
75
+ get :set_flash
76
+ @request.env['HTTPS'] = "on"
77
+ get :d
78
+ assert_response :redirect
79
+ assert_equal "bar", flash[:foo]
80
+ end
81
+
82
+ def test_not_redirecting_to_http_does_not_preserve_the_flash
83
+ get :set_flash
84
+ @request.env['HTTPS'] = "on"
85
+ get :a
86
+ assert_response :success
87
+ assert_nil flash[:foo]
88
+ end
89
+
90
+ def test_required_without_ssl
91
+ assert_not_equal "on", @request.env["HTTPS"]
92
+ get :a
93
+ assert_response :redirect
94
+ assert_match %r{^https://}, @response.headers['Location']
95
+ get :b
96
+ assert_response :redirect
97
+ assert_match %r{^https://}, @response.headers['Location']
98
+ end
99
+
100
+ def test_required_with_ssl
101
+ @request.env['HTTPS'] = "on"
102
+ get :a
103
+ assert_response :success
104
+ get :b
105
+ assert_response :success
106
+ end
107
+
108
+ def test_disallowed_without_ssl
109
+ assert_not_equal "on", @request.env["HTTPS"]
110
+ get :d
111
+ assert_response :success
112
+ end
113
+
114
+ def test_disallowed_with_ssl
115
+ @request.env['HTTPS'] = "on"
116
+ get :d
117
+ assert_response :redirect
118
+ assert_match %r{^http://}, @response.headers['Location']
119
+ end
120
+
121
+ def test_allowed_without_ssl
122
+ assert_not_equal "on", @request.env["HTTPS"]
123
+ get :c
124
+ assert_response :success
125
+ end
126
+
127
+ def test_allowed_with_ssl
128
+ @request.env['HTTPS'] = "on"
129
+ get :c
130
+ assert_response :success
131
+ end
132
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: muck-users
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Ball
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-06-13 00:00:00 -06:00
12
+ date: 2009-06-16 00:00:00 -06:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -22,6 +22,16 @@ dependencies:
22
22
  - !ruby/object:Gem::Version
23
23
  version: "0"
24
24
  version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: bcrypt-ruby
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: "0"
34
+ version:
25
35
  - !ruby/object:Gem::Dependency
26
36
  name: muck-engine
27
37
  type: :runtime
@@ -132,7 +142,7 @@ files:
132
142
  - locales/zh-TW.yml
133
143
  - locales/zh.yml
134
144
  - muck-users.gemspec
135
- - pkg/muck-users-0.1.3.gem
145
+ - pkg/muck-users-0.1.4.gem
136
146
  - public/images/profile_default.jpg
137
147
  - rails/init.rb
138
148
  - rdoc/classes/ActionController.html
@@ -144,6 +154,7 @@ files:
144
154
  - rdoc/classes/ActiveRecord/Acts/MuckUser/ClassMethods.html
145
155
  - rdoc/classes/ActiveRecord/Acts/MuckUser/InstanceMethods.html
146
156
  - rdoc/classes/ActiveRecord/Acts/MuckUser/SingletonMethods.html
157
+ - rdoc/classes/ActiveRecord/SecureMethods.html
147
158
  - rdoc/classes/MuckUsers.html
148
159
  - rdoc/classes/MuckUsers/Exceptions.html
149
160
  - rdoc/classes/MuckUsers/Exceptions/InvalidPasswordResetCode.html
@@ -152,6 +163,7 @@ files:
152
163
  - rdoc/files/README_rdoc.html
153
164
  - rdoc/files/lib/action_controller/authentic_application_rb.html
154
165
  - rdoc/files/lib/active_record/acts/muck_user_rb.html
166
+ - rdoc/files/lib/active_record/secure_methods_rb.html
155
167
  - rdoc/files/lib/muck_users/exceptions_rb.html
156
168
  - rdoc/files/lib/muck_users/initialize_routes_rb.html
157
169
  - rdoc/files/lib/muck_users/tasks_rb.html
@@ -162,22 +174,215 @@ files:
162
174
  - rdoc/index.html
163
175
  - rdoc/rdoc-style.css
164
176
  - tasks/rails.rake
165
- - test/factories.rb
166
- - test/functional/activations_controller_test.rb
167
- - test/functional/admin/roles_controller_test.rb
168
- - test/functional/admin/users_controller_test.rb
169
- - test/functional/password_resets_controller_test.rb
170
- - test/functional/user_sessions_controller_test.rb
171
- - test/functional/users_controller_test.rb
172
- - test/shoulda_macros/controller.rb
173
- - test/shoulda_macros/forms.rb
174
- - test/shoulda_macros/models.rb
175
- - test/shoulda_macros/pagination.rb
176
- - test/shoulda_macros/plugins.rb
177
- - test/test_helper.rb
178
- - test/unit/muck_user_mailer_test.rb
179
- - test/unit/permission_test.rb
180
- - test/unit/role_test.rb
177
+ - test/rails_root/.gitignore
178
+ - test/rails_root/.rake_tasks
179
+ - test/rails_root/Capfile
180
+ - test/rails_root/Rakefile
181
+ - test/rails_root/app/controllers/application_controller.rb
182
+ - test/rails_root/app/controllers/default_controller.rb
183
+ - test/rails_root/app/helpers/application_helper.rb
184
+ - test/rails_root/app/models/.keep
185
+ - test/rails_root/app/models/user.rb
186
+ - test/rails_root/app/models/user_session.rb
187
+ - test/rails_root/app/views/default/index.html.erb
188
+ - test/rails_root/app/views/layouts/default.html.erb
189
+ - test/rails_root/config/amazon_s3.yml
190
+ - test/rails_root/config/boot.rb
191
+ - test/rails_root/config/database.yml
192
+ - test/rails_root/config/environment.rb
193
+ - test/rails_root/config/environments/development.rb
194
+ - test/rails_root/config/environments/production.rb
195
+ - test/rails_root/config/environments/test.rb
196
+ - test/rails_root/config/global_config.yml
197
+ - test/rails_root/config/initializers/inflections.rb
198
+ - test/rails_root/config/initializers/mime_types.rb
199
+ - test/rails_root/config/initializers/requires.rb
200
+ - test/rails_root/config/initializers/session_store.rb
201
+ - test/rails_root/config/routes.rb
202
+ - test/rails_root/db/.keep
203
+ - test/rails_root/db/migrate/20090320174818_create_muck_permissions_and_roles.rb
204
+ - test/rails_root/db/migrate/20090602041838_create_users.rb
205
+ - test/rails_root/features/step_definitions/webrat_steps.rb
206
+ - test/rails_root/features/support/env.rb
207
+ - test/rails_root/public/.htaccess
208
+ - test/rails_root/public/404.html
209
+ - test/rails_root/public/422.html
210
+ - test/rails_root/public/500.html
211
+ - test/rails_root/public/dispatch.rb
212
+ - test/rails_root/public/favicon.ico
213
+ - test/rails_root/public/images/arrow_left.gif
214
+ - test/rails_root/public/images/arrow_right.gif
215
+ - test/rails_root/public/images/blue/preview.gif
216
+ - test/rails_root/public/images/icons/accept.png
217
+ - test/rails_root/public/images/icons/add.png
218
+ - test/rails_root/public/images/icons/delete.png
219
+ - test/rails_root/public/images/icons/vote.png
220
+ - test/rails_root/public/images/loading.gif
221
+ - test/rails_root/public/images/profile_default.jpg
222
+ - test/rails_root/public/images/rails.png
223
+ - test/rails_root/public/images/red/preview.gif
224
+ - test/rails_root/public/images/spinner.gif
225
+ - test/rails_root/public/images/sprites.png
226
+ - test/rails_root/public/javascripts/application.js
227
+ - test/rails_root/public/javascripts/builder.js
228
+ - test/rails_root/public/javascripts/controls.js
229
+ - test/rails_root/public/javascripts/dragdrop.js
230
+ - test/rails_root/public/javascripts/effects.js
231
+ - test/rails_root/public/javascripts/fancyzoom.min.js
232
+ - test/rails_root/public/javascripts/jquery/jquery-ui.js
233
+ - test/rails_root/public/javascripts/jquery/jquery.form.js
234
+ - test/rails_root/public/javascripts/jquery/jquery.jgrowl.js
235
+ - test/rails_root/public/javascripts/jquery/jquery.js
236
+ - test/rails_root/public/javascripts/jquery/jquery.tips.js
237
+ - test/rails_root/public/javascripts/muck.js
238
+ - test/rails_root/public/javascripts/muck_activities.js
239
+ - test/rails_root/public/javascripts/prototype.js
240
+ - test/rails_root/public/javascripts/scriptaculous.js
241
+ - test/rails_root/public/javascripts/slider.js
242
+ - test/rails_root/public/javascripts/sound.js
243
+ - test/rails_root/public/robots.txt
244
+ - test/rails_root/public/stylesheets/.keep
245
+ - test/rails_root/public/stylesheets/admin.css
246
+ - test/rails_root/public/stylesheets/blueprint/ie.css
247
+ - test/rails_root/public/stylesheets/blueprint/liquid_screen.css
248
+ - test/rails_root/public/stylesheets/blueprint/plugins/buttons/icons/cross.png
249
+ - test/rails_root/public/stylesheets/blueprint/plugins/buttons/icons/key.png
250
+ - test/rails_root/public/stylesheets/blueprint/plugins/buttons/icons/tick.png
251
+ - test/rails_root/public/stylesheets/blueprint/plugins/buttons/readme.txt
252
+ - test/rails_root/public/stylesheets/blueprint/plugins/buttons/screen.css
253
+ - test/rails_root/public/stylesheets/blueprint/plugins/fancy-type/readme.txt
254
+ - test/rails_root/public/stylesheets/blueprint/plugins/fancy-type/screen.css
255
+ - test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/doc.png
256
+ - test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/email.png
257
+ - test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/external.png
258
+ - test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/feed.png
259
+ - test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/im.png
260
+ - test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/pdf.png
261
+ - test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/visited.png
262
+ - test/rails_root/public/stylesheets/blueprint/plugins/link-icons/icons/xls.png
263
+ - test/rails_root/public/stylesheets/blueprint/plugins/link-icons/readme.txt
264
+ - test/rails_root/public/stylesheets/blueprint/plugins/link-icons/screen.css
265
+ - test/rails_root/public/stylesheets/blueprint/plugins/liquid/liquid.css
266
+ - test/rails_root/public/stylesheets/blueprint/plugins/liquid/src/liquid.css
267
+ - test/rails_root/public/stylesheets/blueprint/plugins/rtl/readme.txt
268
+ - test/rails_root/public/stylesheets/blueprint/plugins/rtl/screen.css
269
+ - test/rails_root/public/stylesheets/blueprint/print.css
270
+ - test/rails_root/public/stylesheets/blueprint/screen.css
271
+ - test/rails_root/public/stylesheets/blueprint/sprite.css
272
+ - test/rails_root/public/stylesheets/blueprint/src/forms.css
273
+ - test/rails_root/public/stylesheets/blueprint/src/grid.css
274
+ - test/rails_root/public/stylesheets/blueprint/src/grid.png
275
+ - test/rails_root/public/stylesheets/blueprint/src/ie.css
276
+ - test/rails_root/public/stylesheets/blueprint/src/print.css
277
+ - test/rails_root/public/stylesheets/blueprint/src/reset.css
278
+ - test/rails_root/public/stylesheets/blueprint/src/typography.css
279
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_diagonals-small_0_aaaaaa_40x40.png
280
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_diagonals-thick_15_444444_40x40.png
281
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_glass_100_f0f0f0_1x400.png
282
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_glass_50_99c2ff_1x400.png
283
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_glass_55_fbf5d0_1x400.png
284
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_glass_80_e6e6e6_1x400.png
285
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_glass_95_fef1ec_1x400.png
286
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_highlight-hard_100_f9f9f9_1x100.png
287
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-bg_highlight-soft_100_e7eef3_1x100.png
288
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_222222_256x240.png
289
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_2694e8_256x240.png
290
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_2e83ff_256x240.png
291
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_72a7cf_256x240.png
292
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_888888_256x240.png
293
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_cd0a0a_256x240.png
294
+ - test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_ffffff_256x240.png
295
+ - test/rails_root/public/stylesheets/jquery/cupertino/jquery-ui-1.7.1.custom.css
296
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png
297
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_flat_55_fbec88_40x100.png
298
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png
299
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_glass_85_dfeffc_1x400.png
300
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_glass_95_fef1ec_1x400.png
301
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png
302
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png
303
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png
304
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_217bc0_256x240.png
305
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_2e83ff_256x240.png
306
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_469bdd_256x240.png
307
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_6da8d5_256x240.png
308
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_cd0a0a_256x240.png
309
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_d8e7f3_256x240.png
310
+ - test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_f9bd01_256x240.png
311
+ - test/rails_root/public/stylesheets/jquery/redmond/jquery-ui-1.7.1.custom.css
312
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png
313
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_flat_75_ffffff_40x100.png
314
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png
315
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_glass_65_ffffff_1x400.png
316
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_glass_75_dadada_1x400.png
317
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png
318
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png
319
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png
320
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_222222_256x240.png
321
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_2e83ff_256x240.png
322
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_454545_256x240.png
323
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_888888_256x240.png
324
+ - test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_cd0a0a_256x240.png
325
+ - test/rails_root/public/stylesheets/jquery/smoothness/jquery-ui-1.7.1.custom.css
326
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png
327
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png
328
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_flat_10_000000_40x100.png
329
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png
330
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png
331
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png
332
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png
333
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png
334
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png
335
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_222222_256x240.png
336
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_228ef1_256x240.png
337
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_ef8c08_256x240.png
338
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_ffd27a_256x240.png
339
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_ffffff_256x240.png
340
+ - test/rails_root/public/stylesheets/jquery/ui-lightness/jquery-ui-1.7.1.custom.css
341
+ - test/rails_root/public/stylesheets/reset.css
342
+ - test/rails_root/public/stylesheets/styles.css
343
+ - test/rails_root/public/stylesheets/themes/blue/styles.css
344
+ - test/rails_root/public/stylesheets/themes/red/styles.css
345
+ - test/rails_root/script/about
346
+ - test/rails_root/script/breakpointer
347
+ - test/rails_root/script/console
348
+ - test/rails_root/script/create_project.rb
349
+ - test/rails_root/script/cucumber
350
+ - test/rails_root/script/dbconsole
351
+ - test/rails_root/script/destroy
352
+ - test/rails_root/script/generate
353
+ - test/rails_root/script/performance/benchmarker
354
+ - test/rails_root/script/performance/profiler
355
+ - test/rails_root/script/performance/request
356
+ - test/rails_root/script/plugin
357
+ - test/rails_root/script/process/inspector
358
+ - test/rails_root/script/process/reaper
359
+ - test/rails_root/script/process/spawner
360
+ - test/rails_root/script/runner
361
+ - test/rails_root/script/server
362
+ - test/rails_root/test/factories.rb
363
+ - test/rails_root/test/functional/.keep
364
+ - test/rails_root/test/functional/activations_controller_test.rb
365
+ - test/rails_root/test/functional/admin/roles_controller_test.rb
366
+ - test/rails_root/test/functional/admin/users_controller_test.rb
367
+ - test/rails_root/test/functional/password_resets_controller_test.rb
368
+ - test/rails_root/test/functional/user_sessions_controller_test.rb
369
+ - test/rails_root/test/functional/users_controller_test.rb
370
+ - test/rails_root/test/integration/.keep
371
+ - test/rails_root/test/mocks/development/.keep
372
+ - test/rails_root/test/mocks/test/.keep
373
+ - test/rails_root/test/shoulda_macros/controller.rb
374
+ - test/rails_root/test/shoulda_macros/forms.rb
375
+ - test/rails_root/test/shoulda_macros/models.rb
376
+ - test/rails_root/test/shoulda_macros/pagination.rb
377
+ - test/rails_root/test/shoulda_macros/plugins.rb
378
+ - test/rails_root/test/test_helper.rb
379
+ - test/rails_root/test/unit/.keep
380
+ - test/rails_root/test/unit/muck_user_mailer_test.rb
381
+ - test/rails_root/test/unit/permission_test.rb
382
+ - test/rails_root/test/unit/role_test.rb
383
+ - test/rails_root/vendor/plugins/ssl_requirement/README
384
+ - test/rails_root/vendor/plugins/ssl_requirement/lib/ssl_requirement.rb
385
+ - test/rails_root/vendor/plugins/ssl_requirement/test/ssl_requirement_test.rb
181
386
  - uninstall.rb
182
387
  has_rdoc: true
183
388
  homepage: http://github.com/jbasdf/muck_users
@@ -206,19 +411,43 @@ signing_key:
206
411
  specification_version: 2
207
412
  summary: Easy to use user engine for Rails
208
413
  test_files:
209
- - test/factories.rb
210
- - test/functional/activations_controller_test.rb
211
- - test/functional/admin/roles_controller_test.rb
212
- - test/functional/admin/users_controller_test.rb
213
- - test/functional/password_resets_controller_test.rb
214
- - test/functional/user_sessions_controller_test.rb
215
- - test/functional/users_controller_test.rb
216
- - test/shoulda_macros/controller.rb
217
- - test/shoulda_macros/forms.rb
218
- - test/shoulda_macros/models.rb
219
- - test/shoulda_macros/pagination.rb
220
- - test/shoulda_macros/plugins.rb
221
- - test/test_helper.rb
222
- - test/unit/muck_user_mailer_test.rb
223
- - test/unit/permission_test.rb
224
- - test/unit/role_test.rb
414
+ - test/rails_root/app/controllers/application_controller.rb
415
+ - test/rails_root/app/controllers/default_controller.rb
416
+ - test/rails_root/app/helpers/application_helper.rb
417
+ - test/rails_root/app/models/user.rb
418
+ - test/rails_root/app/models/user_session.rb
419
+ - test/rails_root/config/boot.rb
420
+ - test/rails_root/config/environment.rb
421
+ - test/rails_root/config/environments/development.rb
422
+ - test/rails_root/config/environments/production.rb
423
+ - test/rails_root/config/environments/test.rb
424
+ - test/rails_root/config/initializers/inflections.rb
425
+ - test/rails_root/config/initializers/mime_types.rb
426
+ - test/rails_root/config/initializers/requires.rb
427
+ - test/rails_root/config/initializers/session_store.rb
428
+ - test/rails_root/config/routes.rb
429
+ - test/rails_root/db/migrate/20090320174818_create_muck_permissions_and_roles.rb
430
+ - test/rails_root/db/migrate/20090602041838_create_users.rb
431
+ - test/rails_root/db/schema.rb
432
+ - test/rails_root/features/step_definitions/webrat_steps.rb
433
+ - test/rails_root/features/support/env.rb
434
+ - test/rails_root/public/dispatch.rb
435
+ - test/rails_root/script/create_project.rb
436
+ - test/rails_root/test/factories.rb
437
+ - test/rails_root/test/functional/activations_controller_test.rb
438
+ - test/rails_root/test/functional/admin/roles_controller_test.rb
439
+ - test/rails_root/test/functional/admin/users_controller_test.rb
440
+ - test/rails_root/test/functional/password_resets_controller_test.rb
441
+ - test/rails_root/test/functional/user_sessions_controller_test.rb
442
+ - test/rails_root/test/functional/users_controller_test.rb
443
+ - test/rails_root/test/shoulda_macros/controller.rb
444
+ - test/rails_root/test/shoulda_macros/forms.rb
445
+ - test/rails_root/test/shoulda_macros/models.rb
446
+ - test/rails_root/test/shoulda_macros/pagination.rb
447
+ - test/rails_root/test/shoulda_macros/plugins.rb
448
+ - test/rails_root/test/test_helper.rb
449
+ - test/rails_root/test/unit/muck_user_mailer_test.rb
450
+ - test/rails_root/test/unit/permission_test.rb
451
+ - test/rails_root/test/unit/role_test.rb
452
+ - test/rails_root/vendor/plugins/ssl_requirement/lib/ssl_requirement.rb
453
+ - test/rails_root/vendor/plugins/ssl_requirement/test/ssl_requirement_test.rb
Binary file