sparkly-auth 1.0.2 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (243) hide show
  1. data/.document +5 -0
  2. data/.gitignore +25 -0
  3. data/HISTORY.txt +7 -0
  4. data/README.rdoc +127 -1
  5. data/Rakefile +45 -13
  6. data/TODO +4 -0
  7. data/VERSION +1 -1
  8. data/app/controllers/sparkly_accounts_controller.rb +20 -13
  9. data/app/controllers/sparkly_controller.rb +5 -4
  10. data/app/controllers/sparkly_sessions_controller.rb +16 -9
  11. data/app/helpers/sparkly_accounts_helper.rb +2 -0
  12. data/app/helpers/sparkly_helper.rb +2 -0
  13. data/app/helpers/sparkly_sessions_helper.rb +2 -0
  14. data/app/models/remembrance_token.rb +3 -1
  15. data/app/views/sparkly_accounts/_rails2_form.html.erb +24 -0
  16. data/app/views/sparkly_accounts/_rails3_form.html.erb +26 -0
  17. data/app/views/sparkly_accounts/edit.html.erb +5 -23
  18. data/app/views/sparkly_accounts/new.html.erb +4 -23
  19. data/app/views/sparkly_sessions/_rails2_form.html.erb +22 -0
  20. data/app/views/sparkly_sessions/_rails3_form.html.erb +22 -0
  21. data/app/views/sparkly_sessions/new.html.erb +4 -21
  22. data/features/create_sparkly_account.feature +12 -0
  23. data/features/delete_sparkly_account.feature +12 -0
  24. data/features/edit_sparkly_account.feature +54 -0
  25. data/features/lock_abused_sparkly_account.feature +7 -0
  26. data/features/login_sparkly_session.feature +43 -0
  27. data/features/logout_sparkly_session.feature +16 -0
  28. data/features/setup/sparkly.rb +4 -0
  29. data/features/show_sparkly_account.feature +13 -0
  30. data/features/sparkly_session_timeout.feature +6 -0
  31. data/features/step_definitions/account/account_steps.rb +16 -0
  32. data/features/step_definitions/account/brief_steps.rb +9 -0
  33. data/features/step_definitions/debug_steps.rb +3 -0
  34. data/features/step_definitions/email_steps.rb +182 -0
  35. data/features/step_definitions/session/brief_steps.rb +0 -0
  36. data/features/step_definitions/session/logged_in_steps.rb +42 -0
  37. data/features/step_definitions/session/login_steps.rb +37 -0
  38. data/features/step_definitions/session/logout_steps.rb +5 -0
  39. data/features/step_definitions/session_steps.rb +16 -0
  40. data/features/step_definitions/sparkly_auth_steps.rb +0 -0
  41. data/features/step_definitions/web_steps.rb +287 -0
  42. data/features/support/env.rb +10 -0
  43. data/features/support/paths.rb +35 -0
  44. data/features/support/sparkly_helpers.rb +42 -0
  45. data/generators/sparkly/rails2.rb +79 -0
  46. data/generators/sparkly/rails3.rb +89 -0
  47. data/generators/sparkly/sparkly_generator.rb +4 -75
  48. data/generators/sparkly/templates/accounts_controller.rb +14 -13
  49. data/generators/sparkly/templates/accounts_helper.rb +1 -1
  50. data/generators/sparkly/templates/sessions_controller.rb +26 -12
  51. data/generators/sparkly/templates/sessions_helper.rb +1 -1
  52. data/generators/sparkly/templates/views/sparkly_accounts/_rails2_form.html.erb +24 -0
  53. data/generators/sparkly/templates/views/sparkly_accounts/_rails3_form.html.erb +26 -0
  54. data/generators/sparkly/templates/views/sparkly_accounts/edit.html.erb +5 -23
  55. data/generators/sparkly/templates/views/sparkly_accounts/new.html.erb +4 -23
  56. data/generators/sparkly/templates/views/sparkly_sessions/_rails2_form.html.erb +22 -0
  57. data/generators/sparkly/templates/views/sparkly_sessions/_rails3_form.html.erb +22 -0
  58. data/generators/sparkly/templates/views/sparkly_sessions/new.html.erb +4 -21
  59. data/lib/auth.rb +22 -1
  60. data/lib/auth/behavior/base.rb +25 -18
  61. data/lib/auth/behavior/base/configuration.rb +37 -0
  62. data/lib/auth/behavior/core.rb +22 -14
  63. data/lib/auth/behavior/core/authenticated_model_methods.rb +9 -1
  64. data/lib/auth/behavior/core/controller_extensions.rb +2 -2
  65. data/lib/auth/behavior/core/controller_extensions/class_methods.rb +1 -1
  66. data/lib/auth/behavior/core/password_methods.rb +5 -5
  67. data/lib/auth/behavior/remember_me.rb +7 -3
  68. data/lib/auth/behavior/remember_me/configuration.rb +8 -11
  69. data/lib/auth/behavior/remember_me/controller_extensions.rb +1 -1
  70. data/lib/auth/behavior_lookup.rb +4 -4
  71. data/lib/auth/builtin_behaviors.rb +3 -0
  72. data/lib/auth/configuration.rb +71 -25
  73. data/lib/auth/configuration/keys.rb +50 -0
  74. data/lib/auth/engine.rb +33 -0
  75. data/lib/auth/generators/views_generator.rb +13 -4
  76. data/lib/auth/model.rb +52 -22
  77. data/{init.rb → rails/hacks/rails2.rb} +1 -14
  78. data/rails/hacks/rails3.rb +22 -0
  79. data/rails/init.rb +7 -17
  80. data/rails/init_rails2.rb +39 -0
  81. data/rails/init_rails3.rb +2 -0
  82. data/rails/routes_rails3.rb +37 -0
  83. data/rake3 +1 -0
  84. data/rerun.txt +1 -0
  85. data/run_all_tests +1 -0
  86. data/sparkly-auth.gemspec +481 -23
  87. data/spec/behaviors/core/controller_extensions_spec.rb +49 -0
  88. data/spec/{lib/auth/behavior → behaviors}/core_spec.rb +29 -12
  89. data/spec/behaviors/remember_me/configuration_spec.rb +16 -0
  90. data/spec/behaviors/remember_me_spec.rb +167 -0
  91. data/spec/generators/sanity_checks_spec.rb +58 -0
  92. data/spec/lib/auth/configuration_spec.rb +61 -0
  93. data/spec/lib/auth/model_spec.rb +6 -9
  94. data/spec/lib/auth_spec.rb +2 -2
  95. data/spec/lib/hacks/rename_attributes_spec.rb +49 -0
  96. data/spec/routes_spec.rb +8 -2
  97. data/spec/spec2_helper.rb +52 -0
  98. data/spec/spec3_helper.rb +72 -0
  99. data/spec/spec_helper.rb +109 -49
  100. data/spec_env/rails2/README.1ST +23 -0
  101. data/spec_env/rails2/Rakefile +10 -0
  102. data/spec_env/rails2/app/controllers/application_controller.rb +13 -0
  103. data/spec_env/rails2/app/helpers/application_helper.rb +3 -0
  104. data/spec_env/rails2/app/models/user.rb +2 -0
  105. data/spec_env/rails2/app/views/application/not_found.html.erb +9 -0
  106. data/spec_env/rails2/app/views/layouts/application.html.erb +9 -0
  107. data/spec_env/rails2/config/boot.rb +110 -0
  108. data/spec_env/rails2/config/cucumber.yml +7 -0
  109. data/spec_env/rails2/config/database.yml +25 -0
  110. data/spec_env/rails2/config/environment.rb +46 -0
  111. data/spec_env/rails2/config/environments/cucumber.rb +35 -0
  112. data/spec_env/rails2/config/environments/development.rb +17 -0
  113. data/spec_env/rails2/config/environments/production.rb +28 -0
  114. data/spec_env/rails2/config/environments/test.rb +31 -0
  115. data/spec_env/rails2/config/initializers/backtrace_silencers.rb +7 -0
  116. data/spec_env/rails2/config/initializers/inflections.rb +10 -0
  117. data/spec_env/rails2/config/initializers/mime_types.rb +5 -0
  118. data/spec_env/rails2/config/initializers/new_rails_defaults.rb +21 -0
  119. data/spec_env/rails2/config/initializers/session_store.rb +15 -0
  120. data/spec_env/rails2/config/initializers/sparkly_authentication.rb +30 -0
  121. data/spec_env/rails2/config/locales/en.yml +5 -0
  122. data/spec_env/rails2/config/routes.rb +46 -0
  123. data/spec_env/rails2/db/development.sqlite3 +0 -0
  124. data/spec_env/rails2/db/migrate/001_create_sparkly_passwords.rb +19 -0
  125. data/spec_env/rails2/db/migrate/002_create_sparkly_remembered_tokens.rb +15 -0
  126. data/spec_env/rails2/db/migrate/003_add_confirmed_to_sparkly_passwords.rb +9 -0
  127. data/spec_env/rails2/db/migrate/20100607103543_create_users.rb +12 -0
  128. data/spec_env/rails2/db/migrate/20100609152058_add_email_to_users.rb +9 -0
  129. data/spec_env/rails2/db/schema.rb +42 -0
  130. data/spec_env/rails2/db/seeds.rb +7 -0
  131. data/spec_env/rails2/db/test.sqlite3 +0 -0
  132. data/spec_env/rails2/doc/README_FOR_APP +2 -0
  133. data/spec_env/rails2/doc/sparkly_authentication.txt +56 -0
  134. data/spec_env/rails2/features/support/env.rb +58 -0
  135. data/spec_env/rails2/lib/tasks/cucumber.rake +47 -0
  136. data/spec_env/rails2/lib/tasks/rspec.rake +144 -0
  137. data/spec_env/rails2/lib/tasks/sparkly_migration.rb +1 -0
  138. data/spec_env/rails2/log/cucumber.log +8412 -0
  139. data/spec_env/rails2/log/development.log +317 -0
  140. data/spec_env/rails2/log/test.log +32053 -0
  141. data/spec_env/rails2/public/404.html +30 -0
  142. data/spec_env/rails2/public/422.html +30 -0
  143. data/spec_env/rails2/public/500.html +30 -0
  144. data/spec_env/rails2/public/favicon.ico +0 -0
  145. data/spec_env/rails2/public/images/rails.png +0 -0
  146. data/spec_env/rails2/public/javascripts/application.js +2 -0
  147. data/spec_env/rails2/public/javascripts/controls.js +963 -0
  148. data/spec_env/rails2/public/javascripts/dragdrop.js +973 -0
  149. data/spec_env/rails2/public/javascripts/effects.js +1128 -0
  150. data/spec_env/rails2/public/javascripts/prototype.js +4320 -0
  151. data/spec_env/rails2/public/robots.txt +5 -0
  152. data/spec_env/rails2/rerun.txt +1 -0
  153. data/spec_env/rails2/script/about +4 -0
  154. data/spec_env/rails2/script/autospec +6 -0
  155. data/spec_env/rails2/script/console +3 -0
  156. data/spec_env/rails2/script/cucumber +10 -0
  157. data/spec_env/rails2/script/dbconsole +3 -0
  158. data/spec_env/rails2/script/destroy +3 -0
  159. data/spec_env/rails2/script/generate +3 -0
  160. data/spec_env/rails2/script/performance/benchmarker +3 -0
  161. data/spec_env/rails2/script/performance/profiler +3 -0
  162. data/spec_env/rails2/script/plugin +3 -0
  163. data/spec_env/rails2/script/runner +3 -0
  164. data/spec_env/rails2/script/server +3 -0
  165. data/spec_env/rails2/script/spec +10 -0
  166. data/spec_env/rails2/spec/controllers/sparkly_user_sessions_controller_spec.rb +10 -0
  167. data/spec_env/rails2/spec/rcov.opts +2 -0
  168. data/spec_env/rails2/spec/spec.opts +4 -0
  169. data/spec_env/rails2/spec/spec_helper.rb +54 -0
  170. data/spec_env/rails2/test/fixtures/users.yml +7 -0
  171. data/spec_env/rails2/test/performance/browsing_test.rb +9 -0
  172. data/spec_env/rails2/test/test_helper.rb +38 -0
  173. data/spec_env/rails2/test/unit/user_test.rb +8 -0
  174. data/spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/.specification +63 -0
  175. data/spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/generators/sparkly/sparkly_generator.rb +1 -0
  176. data/spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/lib/sparkly-auth-bootstrap.rb +6 -0
  177. data/spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/rails/init.rb +1 -0
  178. data/spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/sparkly-auth-bootstrap.gemspec +55 -0
  179. data/spec_env/rails3/.gitignore +4 -0
  180. data/spec_env/rails3/Gemfile +43 -0
  181. data/spec_env/rails3/Gemfile.lock +124 -0
  182. data/spec_env/rails3/README +256 -0
  183. data/spec_env/rails3/Rakefile +7 -0
  184. data/spec_env/rails3/app/controllers/application_controller.rb +6 -0
  185. data/spec_env/rails3/app/helpers/application_helper.rb +2 -0
  186. data/spec_env/rails3/app/models/user.rb +3 -0
  187. data/spec_env/rails3/app/views/application/not_found.html.erb +9 -0
  188. data/spec_env/rails3/app/views/layouts/application.html.erb +22 -0
  189. data/spec_env/rails3/config.ru +4 -0
  190. data/spec_env/rails3/config/application.rb +47 -0
  191. data/spec_env/rails3/config/boot.rb +13 -0
  192. data/spec_env/rails3/config/cucumber.yml +8 -0
  193. data/spec_env/rails3/config/database.yml +28 -0
  194. data/spec_env/rails3/config/environment.rb +5 -0
  195. data/spec_env/rails3/config/environments/development.rb +22 -0
  196. data/spec_env/rails3/config/environments/production.rb +49 -0
  197. data/spec_env/rails3/config/environments/spec.rb +35 -0
  198. data/spec_env/rails3/config/environments/test.rb +43 -0
  199. data/spec_env/rails3/config/initializers/backtrace_silencers.rb +7 -0
  200. data/spec_env/rails3/config/initializers/inflections.rb +10 -0
  201. data/spec_env/rails3/config/initializers/mime_types.rb +5 -0
  202. data/spec_env/rails3/config/initializers/secret_token.rb +7 -0
  203. data/spec_env/rails3/config/initializers/session_store.rb +8 -0
  204. data/spec_env/rails3/config/initializers/sparkly_authentication.rb +30 -0
  205. data/spec_env/rails3/config/locales/en.yml +5 -0
  206. data/spec_env/rails3/config/routes.rb +61 -0
  207. data/spec_env/rails3/db/migrate/001_create_sparkly_passwords.rb +19 -0
  208. data/spec_env/rails3/db/migrate/002_create_sparkly_remembered_tokens.rb +15 -0
  209. data/spec_env/rails3/db/migrate/20100810132843_create_users.rb +13 -0
  210. data/spec_env/rails3/db/schema.rb +42 -0
  211. data/spec_env/rails3/db/seeds.rb +7 -0
  212. data/spec_env/rails3/doc/README_FOR_APP +2 -0
  213. data/spec_env/rails3/doc/sparkly_authentication.txt +56 -0
  214. data/spec_env/rails3/features/support/env.rb +62 -0
  215. data/spec_env/rails3/lib/sparkly/bootstrap.rb +1 -0
  216. data/spec_env/rails3/lib/tasks/.gitkeep +0 -0
  217. data/spec_env/rails3/lib/tasks/cucumber.rake +53 -0
  218. data/spec_env/rails3/lib/tasks/sparkly_migration.rb +1 -0
  219. data/spec_env/rails3/public/404.html +26 -0
  220. data/spec_env/rails3/public/422.html +26 -0
  221. data/spec_env/rails3/public/500.html +26 -0
  222. data/spec_env/rails3/public/favicon.ico +0 -0
  223. data/spec_env/rails3/public/images/rails.png +0 -0
  224. data/spec_env/rails3/public/javascripts/application.js +2 -0
  225. data/spec_env/rails3/public/javascripts/controls.js +965 -0
  226. data/spec_env/rails3/public/javascripts/dragdrop.js +974 -0
  227. data/spec_env/rails3/public/javascripts/effects.js +1123 -0
  228. data/spec_env/rails3/public/javascripts/prototype.js +6001 -0
  229. data/spec_env/rails3/public/javascripts/rails.js +175 -0
  230. data/spec_env/rails3/public/robots.txt +5 -0
  231. data/spec_env/rails3/public/stylesheets/.gitkeep +0 -0
  232. data/spec_env/rails3/script/cucumber +10 -0
  233. data/spec_env/rails3/script/rails +6 -0
  234. data/spec_env/rails3/test/fixtures/users.yml +7 -0
  235. data/spec_env/rails3/test/performance/browsing_test.rb +9 -0
  236. data/spec_env/rails3/test/test_helper.rb +13 -0
  237. data/spec_env/rails3/test/unit/user_test.rb +8 -0
  238. data/spec_env/rails3/vendor/plugins/.gitkeep +0 -0
  239. data/spec_env/rails3/webrat.log +5 -0
  240. metadata +393 -15
  241. data/dependencies.rb +0 -1
  242. data/spec/lib/auth/behavior/remember_me_spec.rb +0 -127
  243. data/spec/lib/auth/extensions/controller_spec.rb +0 -32
@@ -0,0 +1,175 @@
1
+ (function() {
2
+ // Technique from Juriy Zaytsev
3
+ // http://thinkweb2.com/projects/prototype/detecting-event-support-without-browser-sniffing/
4
+ function isEventSupported(eventName) {
5
+ var el = document.createElement('div');
6
+ eventName = 'on' + eventName;
7
+ var isSupported = (eventName in el);
8
+ if (!isSupported) {
9
+ el.setAttribute(eventName, 'return;');
10
+ isSupported = typeof el[eventName] == 'function';
11
+ }
12
+ el = null;
13
+ return isSupported;
14
+ }
15
+
16
+ function isForm(element) {
17
+ return Object.isElement(element) && element.nodeName.toUpperCase() == 'FORM'
18
+ }
19
+
20
+ function isInput(element) {
21
+ if (Object.isElement(element)) {
22
+ var name = element.nodeName.toUpperCase()
23
+ return name == 'INPUT' || name == 'SELECT' || name == 'TEXTAREA'
24
+ }
25
+ else return false
26
+ }
27
+
28
+ var submitBubbles = isEventSupported('submit'),
29
+ changeBubbles = isEventSupported('change')
30
+
31
+ if (!submitBubbles || !changeBubbles) {
32
+ // augment the Event.Handler class to observe custom events when needed
33
+ Event.Handler.prototype.initialize = Event.Handler.prototype.initialize.wrap(
34
+ function(init, element, eventName, selector, callback) {
35
+ init(element, eventName, selector, callback)
36
+ // is the handler being attached to an element that doesn't support this event?
37
+ if ( (!submitBubbles && this.eventName == 'submit' && !isForm(this.element)) ||
38
+ (!changeBubbles && this.eventName == 'change' && !isInput(this.element)) ) {
39
+ // "submit" => "emulated:submit"
40
+ this.eventName = 'emulated:' + this.eventName
41
+ }
42
+ }
43
+ )
44
+ }
45
+
46
+ if (!submitBubbles) {
47
+ // discover forms on the page by observing focus events which always bubble
48
+ document.on('focusin', 'form', function(focusEvent, form) {
49
+ // special handler for the real "submit" event (one-time operation)
50
+ if (!form.retrieve('emulated:submit')) {
51
+ form.on('submit', function(submitEvent) {
52
+ var emulated = form.fire('emulated:submit', submitEvent, true)
53
+ // if custom event received preventDefault, cancel the real one too
54
+ if (emulated.returnValue === false) submitEvent.preventDefault()
55
+ })
56
+ form.store('emulated:submit', true)
57
+ }
58
+ })
59
+ }
60
+
61
+ if (!changeBubbles) {
62
+ // discover form inputs on the page
63
+ document.on('focusin', 'input, select, texarea', function(focusEvent, input) {
64
+ // special handler for real "change" events
65
+ if (!input.retrieve('emulated:change')) {
66
+ input.on('change', function(changeEvent) {
67
+ input.fire('emulated:change', changeEvent, true)
68
+ })
69
+ input.store('emulated:change', true)
70
+ }
71
+ })
72
+ }
73
+
74
+ function handleRemote(element) {
75
+ var method, url, params;
76
+
77
+ var event = element.fire("ajax:before");
78
+ if (event.stopped) return false;
79
+
80
+ if (element.tagName.toLowerCase() === 'form') {
81
+ method = element.readAttribute('method') || 'post';
82
+ url = element.readAttribute('action');
83
+ params = element.serialize();
84
+ } else {
85
+ method = element.readAttribute('data-method') || 'get';
86
+ url = element.readAttribute('href');
87
+ params = {};
88
+ }
89
+
90
+ new Ajax.Request(url, {
91
+ method: method,
92
+ parameters: params,
93
+ evalScripts: true,
94
+
95
+ onComplete: function(request) { element.fire("ajax:complete", request); },
96
+ onSuccess: function(request) { element.fire("ajax:success", request); },
97
+ onFailure: function(request) { element.fire("ajax:failure", request); }
98
+ });
99
+
100
+ element.fire("ajax:after");
101
+ }
102
+
103
+ function handleMethod(element) {
104
+ var method = element.readAttribute('data-method'),
105
+ url = element.readAttribute('href'),
106
+ csrf_param = $$('meta[name=csrf-param]')[0],
107
+ csrf_token = $$('meta[name=csrf-token]')[0];
108
+
109
+ var form = new Element('form', { method: "POST", action: url, style: "display: none;" });
110
+ element.parentNode.insert(form);
111
+
112
+ if (method !== 'post') {
113
+ var field = new Element('input', { type: 'hidden', name: '_method', value: method });
114
+ form.insert(field);
115
+ }
116
+
117
+ if (csrf_param) {
118
+ var param = csrf_param.readAttribute('content'),
119
+ token = csrf_token.readAttribute('content'),
120
+ field = new Element('input', { type: 'hidden', name: param, value: token });
121
+ form.insert(field);
122
+ }
123
+
124
+ form.submit();
125
+ }
126
+
127
+
128
+ document.on("click", "*[data-confirm]", function(event, element) {
129
+ var message = element.readAttribute('data-confirm');
130
+ if (!confirm(message)) event.stop();
131
+ });
132
+
133
+ document.on("click", "a[data-remote]", function(event, element) {
134
+ if (event.stopped) return;
135
+ handleRemote(element);
136
+ event.stop();
137
+ });
138
+
139
+ document.on("click", "a[data-method]", function(event, element) {
140
+ if (event.stopped) return;
141
+ handleMethod(element);
142
+ event.stop();
143
+ });
144
+
145
+ document.on("submit", function(event) {
146
+ var element = event.findElement(),
147
+ message = element.readAttribute('data-confirm');
148
+ if (message && !confirm(message)) {
149
+ event.stop();
150
+ return false;
151
+ }
152
+
153
+ var inputs = element.select("input[type=submit][data-disable-with]");
154
+ inputs.each(function(input) {
155
+ input.disabled = true;
156
+ input.writeAttribute('data-original-value', input.value);
157
+ input.value = input.readAttribute('data-disable-with');
158
+ });
159
+
160
+ var element = event.findElement("form[data-remote]");
161
+ if (element) {
162
+ handleRemote(element);
163
+ event.stop();
164
+ }
165
+ });
166
+
167
+ document.on("ajax:after", "form", function(event, element) {
168
+ var inputs = element.select("input[type=submit][disabled=true][data-disable-with]");
169
+ inputs.each(function(input) {
170
+ input.value = input.readAttribute('data-original-value');
171
+ input.removeAttribute('data-original-value');
172
+ input.disabled = false;
173
+ });
174
+ });
175
+ })();
@@ -0,0 +1,5 @@
1
+ # See http://www.robotstxt.org/wc/norobots.html for documentation on how to use the robots.txt file
2
+ #
3
+ # To ban all spiders from the entire site uncomment the next two lines:
4
+ # User-Agent: *
5
+ # Disallow: /
File without changes
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ vendored_cucumber_bin = Dir["#{File.dirname(__FILE__)}/../vendor/{gems,plugins}/cucumber*/bin/cucumber"].first
4
+ if vendored_cucumber_bin
5
+ load File.expand_path(vendored_cucumber_bin)
6
+ else
7
+ require 'rubygems' unless ENV['NO_RUBYGEMS']
8
+ require 'cucumber'
9
+ load Cucumber::BINARY
10
+ end
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env ruby
2
+ # This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
3
+
4
+ APP_PATH = File.expand_path('../../config/application', __FILE__)
5
+ require File.expand_path('../../config/boot', __FILE__)
6
+ require 'rails/commands'
@@ -0,0 +1,7 @@
1
+ # Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
2
+
3
+ one:
4
+ email: MyString
5
+
6
+ two:
7
+ email: MyString
@@ -0,0 +1,9 @@
1
+ require 'test_helper'
2
+ require 'rails/performance_test_help'
3
+
4
+ # Profiling results for each test method are written to tmp/performance.
5
+ class BrowsingTest < ActionDispatch::PerformanceTest
6
+ def test_homepage
7
+ get '/'
8
+ end
9
+ end
@@ -0,0 +1,13 @@
1
+ ENV["RAILS_ENV"] = "test"
2
+ require File.expand_path('../../config/environment', __FILE__)
3
+ require 'rails/test_help'
4
+
5
+ class ActiveSupport::TestCase
6
+ # Setup all fixtures in test/fixtures/*.(yml|csv) for all tests in alphabetical order.
7
+ #
8
+ # Note: You'll currently still have to declare fixtures explicitly in integration tests
9
+ # -- they do not yet inherit this setting
10
+ fixtures :all
11
+
12
+ # Add more helper methods to be used by all tests here...
13
+ end
@@ -0,0 +1,8 @@
1
+ require 'test_helper'
2
+
3
+ class UserTest < ActiveSupport::TestCase
4
+ # Replace this with your real tests.
5
+ test "the truth" do
6
+ assert true
7
+ end
8
+ end
File without changes
@@ -0,0 +1,5 @@
1
+ # Logfile created on 2010-08-12 20:52:01 -0400 by logger.rb/25413
2
+ REQUESTING PAGE: GET /user/new with {} and HTTP headers {}
3
+ REQUESTING PAGE: POST /user with {"_snowman"=>"\xE2\x98\x83", "user"=>{"email"=>"generic@example.com", "password"=>"Ad12345", "password_confirmation"=>"Ad12345"}, "commit"=>"Sign up"} and HTTP headers {"HTTP_REFERER"=>"/user/new"}
4
+ REQUESTING PAGE: GET /user/new with {} and HTTP headers {}
5
+ REQUESTING PAGE: POST /user with {"_snowman"=>"\xE2\x98\x83", "user"=>{"email"=>"generic@example.com", "password"=>"Ad12345", "password_confirmation"=>"Ad12345"}, "commit"=>"Sign up"} and HTTP headers {"HTTP_REFERER"=>"/user/new"}
metadata CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
6
  - 1
7
+ - 1
7
8
  - 0
8
- - 2
9
- version: 1.0.2
9
+ version: 1.1.0
10
10
  platform: ruby
11
11
  authors:
12
12
  - Colin MacKenzie IV
@@ -14,27 +14,29 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-08-10 00:00:00 -04:00
17
+ date: 2010-08-13 00:00:00 -04:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: sc-core-ext
22
22
  prerelease: false
23
23
  requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
24
25
  requirements:
25
26
  - - ">="
26
27
  - !ruby/object:Gem::Version
27
28
  segments:
28
29
  - 1
29
30
  - 2
30
- - 0
31
- version: 1.2.0
31
+ - 1
32
+ version: 1.2.1
32
33
  type: :runtime
33
34
  version_requirements: *id001
34
35
  - !ruby/object:Gem::Dependency
35
36
  name: rspec-rails
36
37
  prerelease: false
37
38
  requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
38
40
  requirements:
39
41
  - - ">="
40
42
  - !ruby/object:Gem::Version
@@ -49,6 +51,7 @@ dependencies:
49
51
  name: webrat
50
52
  prerelease: false
51
53
  requirement: &id003 !ruby/object:Gem::Requirement
54
+ none: false
52
55
  requirements:
53
56
  - - ">="
54
57
  - !ruby/object:Gem::Version
@@ -63,6 +66,7 @@ dependencies:
63
66
  name: genspec
64
67
  prerelease: false
65
68
  requirement: &id004 !ruby/object:Gem::Requirement
69
+ none: false
66
70
  requirements:
67
71
  - - ">="
68
72
  - !ruby/object:Gem::Version
@@ -77,6 +81,7 @@ dependencies:
77
81
  name: email_spec
78
82
  prerelease: false
79
83
  requirement: &id005 !ruby/object:Gem::Requirement
84
+ none: false
80
85
  requirements:
81
86
  - - ">="
82
87
  - !ruby/object:Gem::Version
@@ -87,31 +92,67 @@ dependencies:
87
92
  version: 0.6.2
88
93
  type: :development
89
94
  version_requirements: *id005
90
- description: As fate would have it, I found other authentication solutions unable to suit my needs. So I rolled my own.
95
+ description: As fate would have it, I found other authentication solutions unable to suit my needs. So I rolled my own, totally supporting Rails 2 AND 3.
91
96
  email: sinisterchipmunk@gmail.com
92
97
  executables: []
93
98
 
94
99
  extensions: []
95
100
 
96
101
  extra_rdoc_files:
102
+ - LICENSE
97
103
  - README.rdoc
104
+ - TODO
98
105
  files:
106
+ - .document
107
+ - .gitignore
99
108
  - HISTORY.txt
100
109
  - LICENSE
101
110
  - README.rdoc
102
111
  - Rakefile
112
+ - TODO
103
113
  - VERSION
104
114
  - app/controllers/sparkly_accounts_controller.rb
105
115
  - app/controllers/sparkly_controller.rb
106
116
  - app/controllers/sparkly_sessions_controller.rb
117
+ - app/helpers/sparkly_accounts_helper.rb
118
+ - app/helpers/sparkly_helper.rb
119
+ - app/helpers/sparkly_sessions_helper.rb
107
120
  - app/models/password.rb
108
121
  - app/models/remembrance_token.rb
122
+ - app/views/sparkly_accounts/_rails2_form.html.erb
123
+ - app/views/sparkly_accounts/_rails3_form.html.erb
109
124
  - app/views/sparkly_accounts/edit.html.erb
110
125
  - app/views/sparkly_accounts/new.html.erb
111
126
  - app/views/sparkly_accounts/show.html.erb
127
+ - app/views/sparkly_sessions/_rails2_form.html.erb
128
+ - app/views/sparkly_sessions/_rails3_form.html.erb
112
129
  - app/views/sparkly_sessions/new.html.erb
113
- - dependencies.rb
130
+ - features/create_sparkly_account.feature
131
+ - features/delete_sparkly_account.feature
132
+ - features/edit_sparkly_account.feature
133
+ - features/lock_abused_sparkly_account.feature
134
+ - features/login_sparkly_session.feature
135
+ - features/logout_sparkly_session.feature
136
+ - features/setup/sparkly.rb
137
+ - features/show_sparkly_account.feature
138
+ - features/sparkly_session_timeout.feature
139
+ - features/step_definitions/account/account_steps.rb
140
+ - features/step_definitions/account/brief_steps.rb
141
+ - features/step_definitions/debug_steps.rb
142
+ - features/step_definitions/email_steps.rb
143
+ - features/step_definitions/session/brief_steps.rb
144
+ - features/step_definitions/session/logged_in_steps.rb
145
+ - features/step_definitions/session/login_steps.rb
146
+ - features/step_definitions/session/logout_steps.rb
147
+ - features/step_definitions/session_steps.rb
148
+ - features/step_definitions/sparkly_auth_steps.rb
149
+ - features/step_definitions/web_steps.rb
150
+ - features/support/env.rb
151
+ - features/support/paths.rb
152
+ - features/support/sparkly_helpers.rb
114
153
  - generators/sparkly/USAGE
154
+ - generators/sparkly/rails2.rb
155
+ - generators/sparkly/rails3.rb
115
156
  - generators/sparkly/sparkly_generator.rb
116
157
  - generators/sparkly/templates/accounts_controller.rb
117
158
  - generators/sparkly/templates/accounts_helper.rb
@@ -123,13 +164,17 @@ files:
123
164
  - generators/sparkly/templates/sessions_controller.rb
124
165
  - generators/sparkly/templates/sessions_helper.rb
125
166
  - generators/sparkly/templates/tasks/migrations.rb
167
+ - generators/sparkly/templates/views/sparkly_accounts/_rails2_form.html.erb
168
+ - generators/sparkly/templates/views/sparkly_accounts/_rails3_form.html.erb
126
169
  - generators/sparkly/templates/views/sparkly_accounts/edit.html.erb
127
170
  - generators/sparkly/templates/views/sparkly_accounts/new.html.erb
128
171
  - generators/sparkly/templates/views/sparkly_accounts/show.html.erb
172
+ - generators/sparkly/templates/views/sparkly_sessions/_rails2_form.html.erb
173
+ - generators/sparkly/templates/views/sparkly_sessions/_rails3_form.html.erb
129
174
  - generators/sparkly/templates/views/sparkly_sessions/new.html.erb
130
- - init.rb
131
175
  - lib/auth.rb
132
176
  - lib/auth/behavior/base.rb
177
+ - lib/auth/behavior/base/configuration.rb
133
178
  - lib/auth/behavior/core.rb
134
179
  - lib/auth/behavior/core/authenticated_model_methods.rb
135
180
  - lib/auth/behavior/core/controller_extensions.rb
@@ -140,8 +185,11 @@ files:
140
185
  - lib/auth/behavior/remember_me/configuration.rb
141
186
  - lib/auth/behavior/remember_me/controller_extensions.rb
142
187
  - lib/auth/behavior_lookup.rb
188
+ - lib/auth/builtin_behaviors.rb
143
189
  - lib/auth/configuration.rb
190
+ - lib/auth/configuration/keys.rb
144
191
  - lib/auth/encryptors/sha512.rb
192
+ - lib/auth/engine.rb
145
193
  - lib/auth/generators/configuration_generator.rb
146
194
  - lib/auth/generators/controllers_generator.rb
147
195
  - lib/auth/generators/migration_generator.rb
@@ -153,20 +201,179 @@ files:
153
201
  - lib/auth/tasks/migrations.rb
154
202
  - lib/auth/token.rb
155
203
  - lib/sparkly-auth.rb
204
+ - rails/hacks/rails2.rb
205
+ - rails/hacks/rails3.rb
156
206
  - rails/init.rb
207
+ - rails/init_rails2.rb
208
+ - rails/init_rails3.rb
157
209
  - rails/routes.rb
210
+ - rails/routes_rails3.rb
211
+ - rake3
212
+ - rerun.txt
213
+ - run_all_tests
158
214
  - sparkly-auth.gemspec
215
+ - spec/behaviors/core/controller_extensions_spec.rb
216
+ - spec/behaviors/core_spec.rb
217
+ - spec/behaviors/remember_me/configuration_spec.rb
218
+ - spec/behaviors/remember_me_spec.rb
159
219
  - spec/controllers/application_controller_spec.rb
220
+ - spec/generators/sanity_checks_spec.rb
160
221
  - spec/generators/sparkly_spec.rb
161
- - spec/lib/auth/behavior/core_spec.rb
162
- - spec/lib/auth/behavior/remember_me_spec.rb
163
- - spec/lib/auth/extensions/controller_spec.rb
222
+ - spec/lib/auth/configuration_spec.rb
164
223
  - spec/lib/auth/model_spec.rb
165
224
  - spec/lib/auth_spec.rb
225
+ - spec/lib/hacks/rename_attributes_spec.rb
166
226
  - spec/mocks/models/user.rb
167
227
  - spec/routes_spec.rb
228
+ - spec/spec2_helper.rb
229
+ - spec/spec3_helper.rb
168
230
  - spec/spec_helper.rb
169
231
  - spec/views_spec.rb
232
+ - spec_env/rails2/README.1ST
233
+ - spec_env/rails2/Rakefile
234
+ - spec_env/rails2/app/controllers/application_controller.rb
235
+ - spec_env/rails2/app/helpers/application_helper.rb
236
+ - spec_env/rails2/app/models/user.rb
237
+ - spec_env/rails2/app/views/application/not_found.html.erb
238
+ - spec_env/rails2/app/views/layouts/application.html.erb
239
+ - spec_env/rails2/config/boot.rb
240
+ - spec_env/rails2/config/cucumber.yml
241
+ - spec_env/rails2/config/database.yml
242
+ - spec_env/rails2/config/environment.rb
243
+ - spec_env/rails2/config/environments/cucumber.rb
244
+ - spec_env/rails2/config/environments/development.rb
245
+ - spec_env/rails2/config/environments/production.rb
246
+ - spec_env/rails2/config/environments/test.rb
247
+ - spec_env/rails2/config/initializers/backtrace_silencers.rb
248
+ - spec_env/rails2/config/initializers/inflections.rb
249
+ - spec_env/rails2/config/initializers/mime_types.rb
250
+ - spec_env/rails2/config/initializers/new_rails_defaults.rb
251
+ - spec_env/rails2/config/initializers/session_store.rb
252
+ - spec_env/rails2/config/initializers/sparkly_authentication.rb
253
+ - spec_env/rails2/config/locales/en.yml
254
+ - spec_env/rails2/config/routes.rb
255
+ - spec_env/rails2/db/development.sqlite3
256
+ - spec_env/rails2/db/migrate/001_create_sparkly_passwords.rb
257
+ - spec_env/rails2/db/migrate/002_create_sparkly_remembered_tokens.rb
258
+ - spec_env/rails2/db/migrate/003_add_confirmed_to_sparkly_passwords.rb
259
+ - spec_env/rails2/db/migrate/20100607103543_create_users.rb
260
+ - spec_env/rails2/db/migrate/20100609152058_add_email_to_users.rb
261
+ - spec_env/rails2/db/schema.rb
262
+ - spec_env/rails2/db/seeds.rb
263
+ - spec_env/rails2/db/test.sqlite3
264
+ - spec_env/rails2/doc/README_FOR_APP
265
+ - spec_env/rails2/doc/sparkly_authentication.txt
266
+ - spec_env/rails2/features/support/env.rb
267
+ - spec_env/rails2/lib/tasks/cucumber.rake
268
+ - spec_env/rails2/lib/tasks/rspec.rake
269
+ - spec_env/rails2/lib/tasks/sparkly_migration.rb
270
+ - spec_env/rails2/log/development.log
271
+ - spec_env/rails2/public/404.html
272
+ - spec_env/rails2/public/422.html
273
+ - spec_env/rails2/public/500.html
274
+ - spec_env/rails2/public/favicon.ico
275
+ - spec_env/rails2/public/images/rails.png
276
+ - spec_env/rails2/public/javascripts/application.js
277
+ - spec_env/rails2/public/javascripts/controls.js
278
+ - spec_env/rails2/public/javascripts/dragdrop.js
279
+ - spec_env/rails2/public/javascripts/effects.js
280
+ - spec_env/rails2/public/javascripts/prototype.js
281
+ - spec_env/rails2/public/robots.txt
282
+ - spec_env/rails2/rerun.txt
283
+ - spec_env/rails2/script/about
284
+ - spec_env/rails2/script/autospec
285
+ - spec_env/rails2/script/console
286
+ - spec_env/rails2/script/cucumber
287
+ - spec_env/rails2/script/dbconsole
288
+ - spec_env/rails2/script/destroy
289
+ - spec_env/rails2/script/generate
290
+ - spec_env/rails2/script/performance/benchmarker
291
+ - spec_env/rails2/script/performance/profiler
292
+ - spec_env/rails2/script/plugin
293
+ - spec_env/rails2/script/runner
294
+ - spec_env/rails2/script/server
295
+ - spec_env/rails2/script/spec
296
+ - spec_env/rails2/spec/controllers/sparkly_user_sessions_controller_spec.rb
297
+ - spec_env/rails2/spec/rcov.opts
298
+ - spec_env/rails2/spec/spec.opts
299
+ - spec_env/rails2/spec/spec_helper.rb
300
+ - spec_env/rails2/test/fixtures/users.yml
301
+ - spec_env/rails2/test/performance/browsing_test.rb
302
+ - spec_env/rails2/test/test_helper.rb
303
+ - spec_env/rails2/test/unit/user_test.rb
304
+ - spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/.specification
305
+ - spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/generators/sparkly/sparkly_generator.rb
306
+ - spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/lib/sparkly-auth-bootstrap.rb
307
+ - spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/rails/init.rb
308
+ - spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/sparkly-auth-bootstrap.gemspec
309
+ - spec_env/rails3/.gitignore
310
+ - spec_env/rails3/Gemfile
311
+ - spec_env/rails3/Gemfile.lock
312
+ - spec_env/rails3/README
313
+ - spec_env/rails3/Rakefile
314
+ - spec_env/rails3/app/controllers/application_controller.rb
315
+ - spec_env/rails3/app/helpers/application_helper.rb
316
+ - spec_env/rails3/app/models/user.rb
317
+ - spec_env/rails3/app/views/application/not_found.html.erb
318
+ - spec_env/rails3/app/views/layouts/application.html.erb
319
+ - spec_env/rails3/config.ru
320
+ - spec_env/rails3/config/application.rb
321
+ - spec_env/rails3/config/boot.rb
322
+ - spec_env/rails3/config/cucumber.yml
323
+ - spec_env/rails3/config/database.yml
324
+ - spec_env/rails3/config/environment.rb
325
+ - spec_env/rails3/config/environments/development.rb
326
+ - spec_env/rails3/config/environments/production.rb
327
+ - spec_env/rails3/config/environments/spec.rb
328
+ - spec_env/rails3/config/environments/test.rb
329
+ - spec_env/rails3/config/initializers/backtrace_silencers.rb
330
+ - spec_env/rails3/config/initializers/inflections.rb
331
+ - spec_env/rails3/config/initializers/mime_types.rb
332
+ - spec_env/rails3/config/initializers/secret_token.rb
333
+ - spec_env/rails3/config/initializers/session_store.rb
334
+ - spec_env/rails3/config/initializers/sparkly_authentication.rb
335
+ - spec_env/rails3/config/locales/en.yml
336
+ - spec_env/rails3/config/routes.rb
337
+ - spec_env/rails3/db/migrate/001_create_sparkly_passwords.rb
338
+ - spec_env/rails3/db/migrate/002_create_sparkly_remembered_tokens.rb
339
+ - spec_env/rails3/db/migrate/20100810132843_create_users.rb
340
+ - spec_env/rails3/db/schema.rb
341
+ - spec_env/rails3/db/seeds.rb
342
+ - spec_env/rails3/doc/README_FOR_APP
343
+ - spec_env/rails3/doc/sparkly_authentication.txt
344
+ - spec_env/rails3/features/support/env.rb
345
+ - spec_env/rails3/lib/sparkly/bootstrap.rb
346
+ - spec_env/rails3/lib/tasks/.gitkeep
347
+ - spec_env/rails3/lib/tasks/cucumber.rake
348
+ - spec_env/rails3/lib/tasks/sparkly_migration.rb
349
+ - spec_env/rails3/public/404.html
350
+ - spec_env/rails3/public/422.html
351
+ - spec_env/rails3/public/500.html
352
+ - spec_env/rails3/public/favicon.ico
353
+ - spec_env/rails3/public/images/rails.png
354
+ - spec_env/rails3/public/javascripts/application.js
355
+ - spec_env/rails3/public/javascripts/controls.js
356
+ - spec_env/rails3/public/javascripts/dragdrop.js
357
+ - spec_env/rails3/public/javascripts/effects.js
358
+ - spec_env/rails3/public/javascripts/prototype.js
359
+ - spec_env/rails3/public/javascripts/rails.js
360
+ - spec_env/rails3/public/robots.txt
361
+ - spec_env/rails3/public/stylesheets/.gitkeep
362
+ - spec_env/rails3/script/cucumber
363
+ - spec_env/rails3/script/rails
364
+ - spec_env/rails3/test/fixtures/users.yml
365
+ - spec_env/rails3/test/performance/browsing_test.rb
366
+ - spec_env/rails3/test/test_helper.rb
367
+ - spec_env/rails3/test/unit/user_test.rb
368
+ - spec_env/rails3/vendor/plugins/.gitkeep
369
+ - spec_env/rails3/webrat.log
370
+ - spec_env/rails2/log/cucumber.log
371
+ - spec_env/rails2/log/test.log
372
+ - spec_env/rails3/db/development.sqlite3
373
+ - spec_env/rails3/db/test.sqlite3
374
+ - spec_env/rails3/log/development.log
375
+ - spec_env/rails3/log/spec.log
376
+ - spec_env/rails3/log/test.log
170
377
  has_rdoc: true
171
378
  homepage: http://www.thoughtsincomputation.com
172
379
  licenses: []
@@ -177,6 +384,7 @@ rdoc_options:
177
384
  require_paths:
178
385
  - lib
179
386
  required_ruby_version: !ruby/object:Gem::Requirement
387
+ none: false
180
388
  requirements:
181
389
  - - ">="
182
390
  - !ruby/object:Gem::Version
@@ -184,6 +392,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
184
392
  - 0
185
393
  version: "0"
186
394
  required_rubygems_version: !ruby/object:Gem::Requirement
395
+ none: false
187
396
  requirements:
188
397
  - - ">="
189
398
  - !ruby/object:Gem::Version
@@ -193,19 +402,188 @@ required_rubygems_version: !ruby/object:Gem::Requirement
193
402
  requirements: []
194
403
 
195
404
  rubyforge_project:
196
- rubygems_version: 1.3.6
405
+ rubygems_version: 1.3.7
197
406
  signing_key:
198
407
  specification_version: 3
199
408
  summary: User authentication with Sparkles!
200
409
  test_files:
410
+ - spec/behaviors/core/controller_extensions_spec.rb
411
+ - spec/behaviors/core_spec.rb
412
+ - spec/behaviors/remember_me/configuration_spec.rb
413
+ - spec/behaviors/remember_me_spec.rb
201
414
  - spec/controllers/application_controller_spec.rb
415
+ - spec/generators/sanity_checks_spec.rb
202
416
  - spec/generators/sparkly_spec.rb
203
- - spec/lib/auth/behavior/core_spec.rb
204
- - spec/lib/auth/behavior/remember_me_spec.rb
205
- - spec/lib/auth/extensions/controller_spec.rb
417
+ - spec/lib/auth/configuration_spec.rb
206
418
  - spec/lib/auth/model_spec.rb
207
419
  - spec/lib/auth_spec.rb
420
+ - spec/lib/hacks/rename_attributes_spec.rb
208
421
  - spec/mocks/models/user.rb
209
422
  - spec/routes_spec.rb
423
+ - spec/spec2_helper.rb
424
+ - spec/spec3_helper.rb
210
425
  - spec/spec_helper.rb
211
426
  - spec/views_spec.rb
427
+ - spec_env/rails2/app/controllers/application_controller.rb
428
+ - spec_env/rails2/app/helpers/application_helper.rb
429
+ - spec_env/rails2/app/models/user.rb
430
+ - spec_env/rails2/app/views/application/not_found.html.erb
431
+ - spec_env/rails2/app/views/layouts/application.html.erb
432
+ - spec_env/rails2/config/boot.rb
433
+ - spec_env/rails2/config/cucumber.yml
434
+ - spec_env/rails2/config/database.yml
435
+ - spec_env/rails2/config/environment.rb
436
+ - spec_env/rails2/config/environments/cucumber.rb
437
+ - spec_env/rails2/config/environments/development.rb
438
+ - spec_env/rails2/config/environments/production.rb
439
+ - spec_env/rails2/config/environments/test.rb
440
+ - spec_env/rails2/config/initializers/backtrace_silencers.rb
441
+ - spec_env/rails2/config/initializers/inflections.rb
442
+ - spec_env/rails2/config/initializers/mime_types.rb
443
+ - spec_env/rails2/config/initializers/new_rails_defaults.rb
444
+ - spec_env/rails2/config/initializers/session_store.rb
445
+ - spec_env/rails2/config/initializers/sparkly_authentication.rb
446
+ - spec_env/rails2/config/locales/en.yml
447
+ - spec_env/rails2/config/routes.rb
448
+ - spec_env/rails2/db/development.sqlite3
449
+ - spec_env/rails2/db/migrate/001_create_sparkly_passwords.rb
450
+ - spec_env/rails2/db/migrate/002_create_sparkly_remembered_tokens.rb
451
+ - spec_env/rails2/db/migrate/003_add_confirmed_to_sparkly_passwords.rb
452
+ - spec_env/rails2/db/migrate/20100607103543_create_users.rb
453
+ - spec_env/rails2/db/migrate/20100609152058_add_email_to_users.rb
454
+ - spec_env/rails2/db/schema.rb
455
+ - spec_env/rails2/db/seeds.rb
456
+ - spec_env/rails2/db/test.sqlite3
457
+ - spec_env/rails2/doc/README_FOR_APP
458
+ - spec_env/rails2/doc/sparkly_authentication.txt
459
+ - spec_env/rails2/features/support/env.rb
460
+ - spec_env/rails2/lib/tasks/cucumber.rake
461
+ - spec_env/rails2/lib/tasks/rspec.rake
462
+ - spec_env/rails2/lib/tasks/sparkly_migration.rb
463
+ - spec_env/rails2/log/cucumber.log
464
+ - spec_env/rails2/log/development.log
465
+ - spec_env/rails2/log/test.log
466
+ - spec_env/rails2/public/404.html
467
+ - spec_env/rails2/public/422.html
468
+ - spec_env/rails2/public/500.html
469
+ - spec_env/rails2/public/favicon.ico
470
+ - spec_env/rails2/public/images/rails.png
471
+ - spec_env/rails2/public/javascripts/application.js
472
+ - spec_env/rails2/public/javascripts/controls.js
473
+ - spec_env/rails2/public/javascripts/dragdrop.js
474
+ - spec_env/rails2/public/javascripts/effects.js
475
+ - spec_env/rails2/public/javascripts/prototype.js
476
+ - spec_env/rails2/public/robots.txt
477
+ - spec_env/rails2/Rakefile
478
+ - spec_env/rails2/README.1ST
479
+ - spec_env/rails2/rerun.txt
480
+ - spec_env/rails2/script/about
481
+ - spec_env/rails2/script/autospec
482
+ - spec_env/rails2/script/console
483
+ - spec_env/rails2/script/cucumber
484
+ - spec_env/rails2/script/dbconsole
485
+ - spec_env/rails2/script/destroy
486
+ - spec_env/rails2/script/generate
487
+ - spec_env/rails2/script/performance/benchmarker
488
+ - spec_env/rails2/script/performance/profiler
489
+ - spec_env/rails2/script/plugin
490
+ - spec_env/rails2/script/runner
491
+ - spec_env/rails2/script/server
492
+ - spec_env/rails2/script/spec
493
+ - spec_env/rails2/spec/controllers/sparkly_user_sessions_controller_spec.rb
494
+ - spec_env/rails2/spec/rcov.opts
495
+ - spec_env/rails2/spec/spec.opts
496
+ - spec_env/rails2/spec/spec_helper.rb
497
+ - spec_env/rails2/test/fixtures/users.yml
498
+ - spec_env/rails2/test/performance/browsing_test.rb
499
+ - spec_env/rails2/test/test_helper.rb
500
+ - spec_env/rails2/test/unit/user_test.rb
501
+ - spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/generators/sparkly/sparkly_generator.rb
502
+ - spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/lib/sparkly-auth-bootstrap.rb
503
+ - spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/rails/init.rb
504
+ - spec_env/rails2/vendor/gems/sparkly-auth-bootstrap-1.0.0/sparkly-auth-bootstrap.gemspec
505
+ - spec_env/rails3/app/controllers/application_controller.rb
506
+ - spec_env/rails3/app/helpers/application_helper.rb
507
+ - spec_env/rails3/app/models/user.rb
508
+ - spec_env/rails3/app/views/application/not_found.html.erb
509
+ - spec_env/rails3/app/views/layouts/application.html.erb
510
+ - spec_env/rails3/config/application.rb
511
+ - spec_env/rails3/config/boot.rb
512
+ - spec_env/rails3/config/cucumber.yml
513
+ - spec_env/rails3/config/database.yml
514
+ - spec_env/rails3/config/environment.rb
515
+ - spec_env/rails3/config/environments/development.rb
516
+ - spec_env/rails3/config/environments/production.rb
517
+ - spec_env/rails3/config/environments/spec.rb
518
+ - spec_env/rails3/config/environments/test.rb
519
+ - spec_env/rails3/config/initializers/backtrace_silencers.rb
520
+ - spec_env/rails3/config/initializers/inflections.rb
521
+ - spec_env/rails3/config/initializers/mime_types.rb
522
+ - spec_env/rails3/config/initializers/secret_token.rb
523
+ - spec_env/rails3/config/initializers/session_store.rb
524
+ - spec_env/rails3/config/initializers/sparkly_authentication.rb
525
+ - spec_env/rails3/config/locales/en.yml
526
+ - spec_env/rails3/config/routes.rb
527
+ - spec_env/rails3/config.ru
528
+ - spec_env/rails3/db/development.sqlite3
529
+ - spec_env/rails3/db/migrate/001_create_sparkly_passwords.rb
530
+ - spec_env/rails3/db/migrate/002_create_sparkly_remembered_tokens.rb
531
+ - spec_env/rails3/db/migrate/20100810132843_create_users.rb
532
+ - spec_env/rails3/db/schema.rb
533
+ - spec_env/rails3/db/seeds.rb
534
+ - spec_env/rails3/db/test.sqlite3
535
+ - spec_env/rails3/doc/README_FOR_APP
536
+ - spec_env/rails3/doc/sparkly_authentication.txt
537
+ - spec_env/rails3/features/support/env.rb
538
+ - spec_env/rails3/Gemfile
539
+ - spec_env/rails3/Gemfile.lock
540
+ - spec_env/rails3/lib/sparkly/bootstrap.rb
541
+ - spec_env/rails3/lib/tasks/cucumber.rake
542
+ - spec_env/rails3/lib/tasks/sparkly_migration.rb
543
+ - spec_env/rails3/log/development.log
544
+ - spec_env/rails3/log/spec.log
545
+ - spec_env/rails3/log/test.log
546
+ - spec_env/rails3/public/404.html
547
+ - spec_env/rails3/public/422.html
548
+ - spec_env/rails3/public/500.html
549
+ - spec_env/rails3/public/favicon.ico
550
+ - spec_env/rails3/public/images/rails.png
551
+ - spec_env/rails3/public/javascripts/application.js
552
+ - spec_env/rails3/public/javascripts/controls.js
553
+ - spec_env/rails3/public/javascripts/dragdrop.js
554
+ - spec_env/rails3/public/javascripts/effects.js
555
+ - spec_env/rails3/public/javascripts/prototype.js
556
+ - spec_env/rails3/public/javascripts/rails.js
557
+ - spec_env/rails3/public/robots.txt
558
+ - spec_env/rails3/Rakefile
559
+ - spec_env/rails3/README
560
+ - spec_env/rails3/script/cucumber
561
+ - spec_env/rails3/script/rails
562
+ - spec_env/rails3/test/fixtures/users.yml
563
+ - spec_env/rails3/test/performance/browsing_test.rb
564
+ - spec_env/rails3/test/test_helper.rb
565
+ - spec_env/rails3/test/unit/user_test.rb
566
+ - spec_env/rails3/webrat.log
567
+ - features/create_sparkly_account.feature
568
+ - features/delete_sparkly_account.feature
569
+ - features/edit_sparkly_account.feature
570
+ - features/lock_abused_sparkly_account.feature
571
+ - features/login_sparkly_session.feature
572
+ - features/logout_sparkly_session.feature
573
+ - features/setup/sparkly.rb
574
+ - features/show_sparkly_account.feature
575
+ - features/sparkly_session_timeout.feature
576
+ - features/step_definitions/account/account_steps.rb
577
+ - features/step_definitions/account/brief_steps.rb
578
+ - features/step_definitions/debug_steps.rb
579
+ - features/step_definitions/email_steps.rb
580
+ - features/step_definitions/session/brief_steps.rb
581
+ - features/step_definitions/session/logged_in_steps.rb
582
+ - features/step_definitions/session/login_steps.rb
583
+ - features/step_definitions/session/logout_steps.rb
584
+ - features/step_definitions/session_steps.rb
585
+ - features/step_definitions/sparkly_auth_steps.rb
586
+ - features/step_definitions/web_steps.rb
587
+ - features/support/env.rb
588
+ - features/support/paths.rb
589
+ - features/support/sparkly_helpers.rb