sorcery 0.8.2 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (353) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +56 -0
  3. data/.travis.yml +130 -1
  4. data/CHANGELOG.md +270 -0
  5. data/Gemfile +17 -22
  6. data/README.md +371 -0
  7. data/Rakefile +3 -79
  8. data/gemfiles/active_record-rails40.gemfile +7 -0
  9. data/gemfiles/active_record-rails41.gemfile +7 -0
  10. data/gemfiles/mongo_mapper-rails40.gemfile +9 -0
  11. data/gemfiles/mongo_mapper-rails41.gemfile +9 -0
  12. data/gemfiles/mongoid-rails40.gemfile +9 -0
  13. data/gemfiles/mongoid-rails41.gemfile +9 -0
  14. data/gemfiles/mongoid3-rails32.gemfile +9 -0
  15. data/lib/generators/sorcery/USAGE +1 -1
  16. data/lib/generators/sorcery/helpers.rb +40 -0
  17. data/lib/generators/sorcery/install_generator.rb +38 -20
  18. data/lib/generators/sorcery/templates/initializer.rb +35 -10
  19. data/lib/generators/sorcery/templates/migration/activity_logging.rb +2 -11
  20. data/lib/generators/sorcery/templates/migration/brute_force_protection.rb +3 -7
  21. data/lib/generators/sorcery/templates/migration/core.rb +5 -8
  22. data/lib/generators/sorcery/templates/migration/external.rb +3 -5
  23. data/lib/generators/sorcery/templates/migration/remember_me.rb +2 -9
  24. data/lib/generators/sorcery/templates/migration/reset_password.rb +2 -10
  25. data/lib/generators/sorcery/templates/migration/user_activation.rb +2 -10
  26. data/lib/sorcery/adapters/active_record_adapter.rb +120 -0
  27. data/lib/sorcery/adapters/base_adapter.rb +30 -0
  28. data/lib/sorcery/adapters/data_mapper_adapter.rb +176 -0
  29. data/lib/sorcery/adapters/mongo_mapper_adapter.rb +110 -0
  30. data/lib/sorcery/adapters/mongoid_adapter.rb +97 -0
  31. data/lib/sorcery/controller/config.rb +65 -0
  32. data/lib/sorcery/controller/submodules/activity_logging.rb +16 -21
  33. data/lib/sorcery/controller/submodules/brute_force_protection.rb +6 -6
  34. data/lib/sorcery/controller/submodules/external.rb +42 -43
  35. data/lib/sorcery/controller/submodules/remember_me.rb +5 -5
  36. data/lib/sorcery/controller/submodules/session_timeout.rb +11 -7
  37. data/lib/sorcery/controller.rb +22 -74
  38. data/lib/sorcery/model/config.rb +96 -0
  39. data/lib/sorcery/model/submodules/activity_logging.rb +30 -13
  40. data/lib/sorcery/model/submodules/brute_force_protection.rb +25 -27
  41. data/lib/sorcery/model/submodules/external.rb +53 -9
  42. data/lib/sorcery/model/submodules/remember_me.rb +15 -19
  43. data/lib/sorcery/model/submodules/reset_password.rb +36 -33
  44. data/lib/sorcery/model/submodules/user_activation.rb +51 -48
  45. data/lib/sorcery/model/temporary_token.rb +4 -4
  46. data/lib/sorcery/model.rb +81 -175
  47. data/lib/sorcery/protocols/oauth.rb +42 -0
  48. data/lib/sorcery/protocols/oauth2.rb +47 -0
  49. data/lib/sorcery/providers/base.rb +38 -0
  50. data/lib/sorcery/providers/facebook.rb +63 -0
  51. data/lib/sorcery/providers/github.rb +51 -0
  52. data/lib/sorcery/providers/google.rb +51 -0
  53. data/lib/sorcery/providers/heroku.rb +57 -0
  54. data/lib/sorcery/providers/jira.rb +77 -0
  55. data/lib/sorcery/providers/linkedin.rb +66 -0
  56. data/lib/sorcery/providers/liveid.rb +53 -0
  57. data/lib/sorcery/providers/salesforce.rb +50 -0
  58. data/lib/sorcery/providers/twitter.rb +59 -0
  59. data/lib/sorcery/providers/vk.rb +63 -0
  60. data/lib/sorcery/providers/xing.rb +64 -0
  61. data/lib/sorcery/test_helpers/internal/rails.rb +17 -6
  62. data/lib/sorcery/test_helpers/internal.rb +27 -6
  63. data/lib/sorcery/test_helpers/rails/controller.rb +21 -0
  64. data/lib/sorcery/test_helpers/rails/integration.rb +26 -0
  65. data/lib/sorcery/version.rb +3 -0
  66. data/lib/sorcery.rb +82 -58
  67. data/sorcery.gemspec +24 -362
  68. data/spec/active_record/user_activation_spec.rb +18 -0
  69. data/spec/active_record/user_activity_logging_spec.rb +17 -0
  70. data/spec/{rails3/spec → active_record}/user_brute_force_protection_spec.rb +6 -5
  71. data/spec/{rails3/spec → active_record}/user_oauth_spec.rb +6 -5
  72. data/spec/{rails3/spec → active_record}/user_remember_me_spec.rb +5 -4
  73. data/spec/{rails3/spec → active_record}/user_reset_password_spec.rb +7 -7
  74. data/spec/active_record/user_spec.rb +37 -0
  75. data/spec/controllers/controller_activity_logging_spec.rb +124 -0
  76. data/spec/controllers/controller_brute_force_protection_spec.rb +43 -0
  77. data/spec/controllers/controller_http_basic_auth_spec.rb +68 -0
  78. data/spec/controllers/controller_oauth2_spec.rb +414 -0
  79. data/spec/controllers/controller_oauth_spec.rb +240 -0
  80. data/spec/controllers/controller_remember_me_spec.rb +117 -0
  81. data/spec/controllers/controller_session_timeout_spec.rb +80 -0
  82. data/spec/controllers/controller_spec.rb +218 -0
  83. data/spec/data_mapper/user_activation_spec.rb +10 -0
  84. data/spec/data_mapper/user_activity_logging_spec.rb +14 -0
  85. data/spec/data_mapper/user_brute_force_protection_spec.rb +9 -0
  86. data/spec/data_mapper/user_oauth_spec.rb +9 -0
  87. data/spec/data_mapper/user_remember_me_spec.rb +8 -0
  88. data/spec/data_mapper/user_reset_password_spec.rb +8 -0
  89. data/spec/data_mapper/user_spec.rb +27 -0
  90. data/spec/mongo_mapper/user_activation_spec.rb +9 -0
  91. data/spec/mongo_mapper/user_activity_logging_spec.rb +8 -0
  92. data/spec/mongo_mapper/user_brute_force_protection_spec.rb +8 -0
  93. data/spec/mongo_mapper/user_oauth_spec.rb +8 -0
  94. data/spec/mongo_mapper/user_remember_me_spec.rb +8 -0
  95. data/spec/mongo_mapper/user_reset_password_spec.rb +8 -0
  96. data/spec/mongo_mapper/user_spec.rb +37 -0
  97. data/spec/mongoid/user_activation_spec.rb +9 -0
  98. data/spec/mongoid/user_activity_logging_spec.rb +8 -0
  99. data/spec/mongoid/user_brute_force_protection_spec.rb +8 -0
  100. data/spec/mongoid/user_oauth_spec.rb +8 -0
  101. data/spec/mongoid/user_remember_me_spec.rb +8 -0
  102. data/spec/mongoid/user_reset_password_spec.rb +8 -0
  103. data/spec/mongoid/user_spec.rb +51 -0
  104. data/spec/orm/active_record.rb +21 -0
  105. data/spec/orm/data_mapper.rb +48 -0
  106. data/spec/orm/mongo_mapper.rb +10 -0
  107. data/spec/orm/mongoid.rb +22 -0
  108. data/spec/{rails3/app/models → rails_app/app/active_record}/user.rb +1 -2
  109. data/spec/rails_app/app/active_record/user_provider.rb +3 -0
  110. data/spec/rails_app/app/controllers/sorcery_controller.rb +285 -0
  111. data/spec/rails_app/app/data_mapper/authentication.rb +8 -0
  112. data/spec/rails_app/app/data_mapper/user.rb +7 -0
  113. data/spec/{rails3_mongo_mapper/app/models → rails_app/app/mongo_mapper}/user.rb +2 -0
  114. data/spec/{rails3_mongoid/app/models → rails_app/app/mongoid}/user.rb +2 -0
  115. data/spec/{rails3_mongo_mapper → rails_app}/config/application.rb +13 -8
  116. data/spec/rails_app/config/boot.rb +4 -0
  117. data/spec/rails_app/config/database.yml +22 -0
  118. data/spec/{rails3_mongo_mapper → rails_app}/config/environments/test.rb +2 -0
  119. data/spec/{rails3_mongoid → rails_app}/config/initializers/session_store.rb +4 -0
  120. data/spec/rails_app/config/routes.rb +51 -0
  121. data/spec/{rails3_mongo_mapper → rails_app}/config.ru +1 -1
  122. data/spec/{rails3 → rails_app}/db/migrate/activation/20101224223622_add_activation_to_users.rb +3 -3
  123. data/spec/{rails3 → rails_app}/db/migrate/core/20101224223620_create_users.rb +2 -2
  124. data/spec/rails_app/db/migrate/external/20101224223628_create_authentications_and_user_providers.rb +22 -0
  125. data/spec/rails_app/log/development.log +1791 -0
  126. data/spec/shared_examples/user_activation_shared_examples.rb +137 -98
  127. data/spec/shared_examples/user_activity_logging_shared_examples.rb +83 -15
  128. data/spec/shared_examples/user_brute_force_protection_shared_examples.rb +140 -21
  129. data/spec/shared_examples/user_oauth_shared_examples.rb +21 -16
  130. data/spec/shared_examples/user_remember_me_shared_examples.rb +36 -24
  131. data/spec/shared_examples/user_reset_password_shared_examples.rb +163 -130
  132. data/spec/shared_examples/user_shared_examples.rb +355 -193
  133. data/spec/sorcery_crypto_providers_spec.rb +74 -72
  134. data/spec/spec_helper.rb +32 -4
  135. metadata +262 -508
  136. data/Gemfile.lock +0 -175
  137. data/README.rdoc +0 -261
  138. data/VERSION +0 -1
  139. data/lib/sorcery/controller/submodules/external/protocols/oauth1.rb +0 -46
  140. data/lib/sorcery/controller/submodules/external/protocols/oauth2.rb +0 -49
  141. data/lib/sorcery/controller/submodules/external/providers/base.rb +0 -21
  142. data/lib/sorcery/controller/submodules/external/providers/facebook.rb +0 -98
  143. data/lib/sorcery/controller/submodules/external/providers/github.rb +0 -92
  144. data/lib/sorcery/controller/submodules/external/providers/google.rb +0 -91
  145. data/lib/sorcery/controller/submodules/external/providers/linkedin.rb +0 -102
  146. data/lib/sorcery/controller/submodules/external/providers/liveid.rb +0 -92
  147. data/lib/sorcery/controller/submodules/external/providers/twitter.rb +0 -93
  148. data/lib/sorcery/controller/submodules/external/providers/vk.rb +0 -100
  149. data/lib/sorcery/controller/submodules/external/providers/xing.rb +0 -97
  150. data/lib/sorcery/model/adapters/active_record.rb +0 -49
  151. data/lib/sorcery/model/adapters/mongo_mapper.rb +0 -56
  152. data/lib/sorcery/model/adapters/mongoid.rb +0 -88
  153. data/lib/sorcery/test_helpers/rails.rb +0 -16
  154. data/lib/sorcery/test_helpers.rb +0 -5
  155. data/spec/Gemfile +0 -12
  156. data/spec/Gemfile.lock +0 -129
  157. data/spec/README.md +0 -31
  158. data/spec/Rakefile +0 -12
  159. data/spec/rails3/.gitignore +0 -4
  160. data/spec/rails3/.rspec +0 -1
  161. data/spec/rails3/Gemfile +0 -15
  162. data/spec/rails3/Gemfile.lock +0 -162
  163. data/spec/rails3/README +0 -256
  164. data/spec/rails3/Rakefile +0 -11
  165. data/spec/rails3/app/controllers/application_controller.rb +0 -208
  166. data/spec/rails3/config/application.rb +0 -46
  167. data/spec/rails3/config/boot.rb +0 -13
  168. data/spec/rails3/config/database.yml +0 -27
  169. data/spec/rails3/config/environments/development.rb +0 -26
  170. data/spec/rails3/config/environments/in_memory.rb +0 -35
  171. data/spec/rails3/config/environments/production.rb +0 -49
  172. data/spec/rails3/config/environments/test.rb +0 -35
  173. data/spec/rails3/config/initializers/session_store.rb +0 -8
  174. data/spec/rails3/config/routes.rb +0 -59
  175. data/spec/rails3/config.ru +0 -4
  176. data/spec/rails3/db/migrate/external/20101224223628_create_authentications.rb +0 -14
  177. data/spec/rails3/lib/tasks/.gitkeep +0 -0
  178. data/spec/rails3/public/404.html +0 -26
  179. data/spec/rails3/public/422.html +0 -26
  180. data/spec/rails3/public/500.html +0 -26
  181. data/spec/rails3/public/favicon.ico +0 -0
  182. data/spec/rails3/public/images/rails.png +0 -0
  183. data/spec/rails3/public/javascripts/application.js +0 -2
  184. data/spec/rails3/public/javascripts/controls.js +0 -965
  185. data/spec/rails3/public/javascripts/dragdrop.js +0 -974
  186. data/spec/rails3/public/javascripts/effects.js +0 -1123
  187. data/spec/rails3/public/javascripts/prototype.js +0 -6001
  188. data/spec/rails3/public/javascripts/rails.js +0 -175
  189. data/spec/rails3/public/robots.txt +0 -5
  190. data/spec/rails3/public/stylesheets/.gitkeep +0 -0
  191. data/spec/rails3/script/rails +0 -6
  192. data/spec/rails3/spec/controller_activity_logging_spec.rb +0 -130
  193. data/spec/rails3/spec/controller_brute_force_protection_spec.rb +0 -96
  194. data/spec/rails3/spec/controller_http_basic_auth_spec.rb +0 -50
  195. data/spec/rails3/spec/controller_oauth2_spec.rb +0 -380
  196. data/spec/rails3/spec/controller_oauth_spec.rb +0 -206
  197. data/spec/rails3/spec/controller_remember_me_spec.rb +0 -96
  198. data/spec/rails3/spec/controller_session_timeout_spec.rb +0 -55
  199. data/spec/rails3/spec/controller_spec.rb +0 -182
  200. data/spec/rails3/spec/integration_spec.rb +0 -23
  201. data/spec/rails3/spec/spec.opts +0 -2
  202. data/spec/rails3/spec/spec_helper.orig.rb +0 -27
  203. data/spec/rails3/spec/spec_helper.rb +0 -71
  204. data/spec/rails3/spec/user_activation_spec.rb +0 -16
  205. data/spec/rails3/spec/user_activity_logging_spec.rb +0 -8
  206. data/spec/rails3/spec/user_spec.rb +0 -36
  207. data/spec/rails3/vendor/plugins/.gitkeep +0 -0
  208. data/spec/rails3_mongo_mapper/.gitignore +0 -4
  209. data/spec/rails3_mongo_mapper/.rspec +0 -1
  210. data/spec/rails3_mongo_mapper/Gemfile +0 -16
  211. data/spec/rails3_mongo_mapper/Gemfile.lock +0 -156
  212. data/spec/rails3_mongo_mapper/Rakefile +0 -11
  213. data/spec/rails3_mongo_mapper/app/controllers/application_controller.rb +0 -122
  214. data/spec/rails3_mongo_mapper/app/helpers/application_helper.rb +0 -2
  215. data/spec/rails3_mongo_mapper/app/mailers/sorcery_mailer.rb +0 -25
  216. data/spec/rails3_mongo_mapper/app/views/layouts/application.html.erb +0 -14
  217. data/spec/rails3_mongo_mapper/app/views/sorcery_mailer/activation_email.html.erb +0 -17
  218. data/spec/rails3_mongo_mapper/app/views/sorcery_mailer/activation_email.text.erb +0 -9
  219. data/spec/rails3_mongo_mapper/app/views/sorcery_mailer/activation_success_email.text.erb +0 -9
  220. data/spec/rails3_mongo_mapper/app/views/sorcery_mailer/reset_password_email.html.erb +0 -16
  221. data/spec/rails3_mongo_mapper/app/views/sorcery_mailer/reset_password_email.text.erb +0 -8
  222. data/spec/rails3_mongo_mapper/config/boot.rb +0 -13
  223. data/spec/rails3_mongo_mapper/config/environment.rb +0 -5
  224. data/spec/rails3_mongo_mapper/config/environments/development.rb +0 -30
  225. data/spec/rails3_mongo_mapper/config/environments/in_memory.rb +0 -0
  226. data/spec/rails3_mongo_mapper/config/environments/production.rb +0 -49
  227. data/spec/rails3_mongo_mapper/config/initializers/backtrace_silencers.rb +0 -7
  228. data/spec/rails3_mongo_mapper/config/initializers/inflections.rb +0 -10
  229. data/spec/rails3_mongo_mapper/config/initializers/mime_types.rb +0 -5
  230. data/spec/rails3_mongo_mapper/config/initializers/mongo.rb +0 -2
  231. data/spec/rails3_mongo_mapper/config/initializers/secret_token.rb +0 -7
  232. data/spec/rails3_mongo_mapper/config/initializers/session_store.rb +0 -8
  233. data/spec/rails3_mongo_mapper/config/locales/en.yml +0 -5
  234. data/spec/rails3_mongo_mapper/config/routes.rb +0 -59
  235. data/spec/rails3_mongo_mapper/db/schema.rb +0 -23
  236. data/spec/rails3_mongo_mapper/db/seeds.rb +0 -7
  237. data/spec/rails3_mongo_mapper/lib/tasks/.gitkeep +0 -0
  238. data/spec/rails3_mongo_mapper/public/404.html +0 -26
  239. data/spec/rails3_mongo_mapper/public/422.html +0 -26
  240. data/spec/rails3_mongo_mapper/public/500.html +0 -26
  241. data/spec/rails3_mongo_mapper/public/favicon.ico +0 -0
  242. data/spec/rails3_mongo_mapper/public/images/rails.png +0 -0
  243. data/spec/rails3_mongo_mapper/public/javascripts/application.js +0 -2
  244. data/spec/rails3_mongo_mapper/public/javascripts/controls.js +0 -965
  245. data/spec/rails3_mongo_mapper/public/javascripts/dragdrop.js +0 -974
  246. data/spec/rails3_mongo_mapper/public/javascripts/effects.js +0 -1123
  247. data/spec/rails3_mongo_mapper/public/javascripts/prototype.js +0 -6001
  248. data/spec/rails3_mongo_mapper/public/javascripts/rails.js +0 -175
  249. data/spec/rails3_mongo_mapper/public/robots.txt +0 -5
  250. data/spec/rails3_mongo_mapper/public/stylesheets/.gitkeep +0 -0
  251. data/spec/rails3_mongo_mapper/script/rails +0 -6
  252. data/spec/rails3_mongo_mapper/spec/controller_spec.rb +0 -175
  253. data/spec/rails3_mongo_mapper/spec/spec.opts +0 -2
  254. data/spec/rails3_mongo_mapper/spec/spec_helper.orig.rb +0 -27
  255. data/spec/rails3_mongo_mapper/spec/spec_helper.rb +0 -55
  256. data/spec/rails3_mongo_mapper/spec/user_activation_spec.rb +0 -9
  257. data/spec/rails3_mongo_mapper/spec/user_activity_logging_spec.rb +0 -8
  258. data/spec/rails3_mongo_mapper/spec/user_brute_force_protection_spec.rb +0 -8
  259. data/spec/rails3_mongo_mapper/spec/user_oauth_spec.rb +0 -8
  260. data/spec/rails3_mongo_mapper/spec/user_remember_me_spec.rb +0 -8
  261. data/spec/rails3_mongo_mapper/spec/user_reset_password_spec.rb +0 -8
  262. data/spec/rails3_mongo_mapper/spec/user_spec.rb +0 -37
  263. data/spec/rails3_mongo_mapper/vendor/plugins/.gitkeep +0 -0
  264. data/spec/rails3_mongoid/.gitignore +0 -4
  265. data/spec/rails3_mongoid/.rspec +0 -1
  266. data/spec/rails3_mongoid/Gemfile +0 -15
  267. data/spec/rails3_mongoid/Gemfile.lock +0 -146
  268. data/spec/rails3_mongoid/Rakefile +0 -11
  269. data/spec/rails3_mongoid/app/controllers/application_controller.rb +0 -127
  270. data/spec/rails3_mongoid/app/helpers/application_helper.rb +0 -2
  271. data/spec/rails3_mongoid/app/mailers/sorcery_mailer.rb +0 -25
  272. data/spec/rails3_mongoid/app/views/layouts/application.html.erb +0 -14
  273. data/spec/rails3_mongoid/app/views/sorcery_mailer/activation_email.html.erb +0 -17
  274. data/spec/rails3_mongoid/app/views/sorcery_mailer/activation_email.text.erb +0 -9
  275. data/spec/rails3_mongoid/app/views/sorcery_mailer/activation_success_email.html.erb +0 -17
  276. data/spec/rails3_mongoid/app/views/sorcery_mailer/activation_success_email.text.erb +0 -9
  277. data/spec/rails3_mongoid/app/views/sorcery_mailer/reset_password_email.html.erb +0 -16
  278. data/spec/rails3_mongoid/app/views/sorcery_mailer/reset_password_email.text.erb +0 -8
  279. data/spec/rails3_mongoid/config/application.rb +0 -51
  280. data/spec/rails3_mongoid/config/boot.rb +0 -13
  281. data/spec/rails3_mongoid/config/environment.rb +0 -5
  282. data/spec/rails3_mongoid/config/environments/development.rb +0 -26
  283. data/spec/rails3_mongoid/config/environments/in_memory.rb +0 -0
  284. data/spec/rails3_mongoid/config/environments/production.rb +0 -49
  285. data/spec/rails3_mongoid/config/environments/test.rb +0 -35
  286. data/spec/rails3_mongoid/config/initializers/backtrace_silencers.rb +0 -7
  287. data/spec/rails3_mongoid/config/initializers/inflections.rb +0 -10
  288. data/spec/rails3_mongoid/config/initializers/mime_types.rb +0 -5
  289. data/spec/rails3_mongoid/config/initializers/secret_token.rb +0 -7
  290. data/spec/rails3_mongoid/config/locales/en.yml +0 -5
  291. data/spec/rails3_mongoid/config/mongoid.yml +0 -7
  292. data/spec/rails3_mongoid/config/routes.rb +0 -59
  293. data/spec/rails3_mongoid/config.ru +0 -4
  294. data/spec/rails3_mongoid/db/schema.rb +0 -23
  295. data/spec/rails3_mongoid/db/seeds.rb +0 -7
  296. data/spec/rails3_mongoid/lib/tasks/.gitkeep +0 -0
  297. data/spec/rails3_mongoid/public/404.html +0 -26
  298. data/spec/rails3_mongoid/public/422.html +0 -26
  299. data/spec/rails3_mongoid/public/500.html +0 -26
  300. data/spec/rails3_mongoid/public/favicon.ico +0 -0
  301. data/spec/rails3_mongoid/public/images/rails.png +0 -0
  302. data/spec/rails3_mongoid/public/javascripts/application.js +0 -2
  303. data/spec/rails3_mongoid/public/javascripts/controls.js +0 -965
  304. data/spec/rails3_mongoid/public/javascripts/dragdrop.js +0 -974
  305. data/spec/rails3_mongoid/public/javascripts/effects.js +0 -1123
  306. data/spec/rails3_mongoid/public/javascripts/prototype.js +0 -6001
  307. data/spec/rails3_mongoid/public/javascripts/rails.js +0 -175
  308. data/spec/rails3_mongoid/public/robots.txt +0 -5
  309. data/spec/rails3_mongoid/public/stylesheets/.gitkeep +0 -0
  310. data/spec/rails3_mongoid/script/rails +0 -6
  311. data/spec/rails3_mongoid/spec/controller_activity_logging_spec.rb +0 -111
  312. data/spec/rails3_mongoid/spec/controller_spec.rb +0 -186
  313. data/spec/rails3_mongoid/spec/spec.opts +0 -2
  314. data/spec/rails3_mongoid/spec/spec_helper.orig.rb +0 -27
  315. data/spec/rails3_mongoid/spec/spec_helper.rb +0 -55
  316. data/spec/rails3_mongoid/spec/user_activation_spec.rb +0 -9
  317. data/spec/rails3_mongoid/spec/user_activity_logging_spec.rb +0 -8
  318. data/spec/rails3_mongoid/spec/user_brute_force_protection_spec.rb +0 -8
  319. data/spec/rails3_mongoid/spec/user_oauth_spec.rb +0 -8
  320. data/spec/rails3_mongoid/spec/user_remember_me_spec.rb +0 -8
  321. data/spec/rails3_mongoid/spec/user_reset_password_spec.rb +0 -8
  322. data/spec/rails3_mongoid/spec/user_spec.rb +0 -38
  323. data/spec/rails3_mongoid/vendor/plugins/.gitkeep +0 -0
  324. data/spec/shared_examples/controller_oauth2_shared_examples.rb +0 -56
  325. data/spec/shared_examples/controller_oauth_shared_examples.rb +0 -55
  326. /data/lib/sorcery/{controller/submodules/external/protocols → protocols}/certs/ca-bundle.crt +0 -0
  327. /data/spec/{rails3/app/models → rails_app/app/active_record}/authentication.rb +0 -0
  328. /data/spec/{rails3 → rails_app}/app/helpers/application_helper.rb +0 -0
  329. /data/spec/{rails3 → rails_app}/app/mailers/sorcery_mailer.rb +0 -0
  330. /data/spec/{rails3_mongo_mapper/app/models → rails_app/app/mongo_mapper}/authentication.rb +0 -0
  331. /data/spec/{rails3_mongoid/app/models → rails_app/app/mongoid}/authentication.rb +0 -0
  332. /data/spec/{rails3 → rails_app}/app/views/application/index.html.erb +0 -0
  333. /data/spec/{rails3 → rails_app}/app/views/layouts/application.html.erb +0 -0
  334. /data/spec/{rails3 → rails_app}/app/views/sorcery_mailer/activation_email.html.erb +0 -0
  335. /data/spec/{rails3 → rails_app}/app/views/sorcery_mailer/activation_email.text.erb +0 -0
  336. /data/spec/{rails3/app/views/sorcery_mailer/activation_success_email.html.erb → rails_app/app/views/sorcery_mailer/activation_needed_email.html.erb} +0 -0
  337. /data/spec/{rails3_mongo_mapper → rails_app}/app/views/sorcery_mailer/activation_success_email.html.erb +0 -0
  338. /data/spec/{rails3 → rails_app}/app/views/sorcery_mailer/activation_success_email.text.erb +0 -0
  339. /data/spec/{rails3 → rails_app}/app/views/sorcery_mailer/reset_password_email.html.erb +0 -0
  340. /data/spec/{rails3 → rails_app}/app/views/sorcery_mailer/reset_password_email.text.erb +0 -0
  341. /data/spec/{rails3 → rails_app}/app/views/sorcery_mailer/send_unlock_token_email.text.erb +0 -0
  342. /data/spec/{rails3 → rails_app}/config/environment.rb +0 -0
  343. /data/spec/{rails3 → rails_app}/config/initializers/backtrace_silencers.rb +0 -0
  344. /data/spec/{rails3 → rails_app}/config/initializers/inflections.rb +0 -0
  345. /data/spec/{rails3 → rails_app}/config/initializers/mime_types.rb +0 -0
  346. /data/spec/{rails3 → rails_app}/config/initializers/secret_token.rb +0 -0
  347. /data/spec/{rails3 → rails_app}/config/locales/en.yml +0 -0
  348. /data/spec/{rails3 → rails_app}/db/migrate/activity_logging/20101224223624_add_activity_logging_to_users.rb +0 -0
  349. /data/spec/{rails3 → rails_app}/db/migrate/brute_force_protection/20101224223626_add_brute_force_protection_to_users.rb +0 -0
  350. /data/spec/{rails3 → rails_app}/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb +0 -0
  351. /data/spec/{rails3 → rails_app}/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb +0 -0
  352. /data/spec/{rails3 → rails_app}/db/schema.rb +0 -0
  353. /data/spec/{rails3 → rails_app}/db/seeds.rb +0 -0
@@ -1,49 +0,0 @@
1
- module Sorcery
2
- module Model
3
- module Adapters
4
- module ActiveRecord
5
- def self.included(klass)
6
- klass.extend ClassMethods
7
- klass.send(:include, InstanceMethods)
8
- end
9
-
10
- module InstanceMethods
11
- def update_many_attributes(attrs)
12
- attrs.each do |name, value|
13
- self.send(:"#{name}=", value)
14
- end
15
- primary_key = self.class.primary_key
16
- self.class.where(:"#{primary_key}" => self.send(:"#{primary_key}")).update_all(attrs)
17
- end
18
-
19
- def update_single_attribute(name, value)
20
- update_many_attributes(name => value)
21
- end
22
- end
23
-
24
- module ClassMethods
25
- def column_name(attribute)
26
- return "LOWER(#{attribute})" if (@sorcery_config.downcase_username_before_authenticating)
27
- return "#{attribute}"
28
- end
29
-
30
- def find_by_credentials(credentials)
31
- sql = @sorcery_config.username_attribute_names.map{|attribute| column_name(attribute) + " = :login"}
32
- where(sql.join(' OR '), :login => credentials[0]).first
33
- end
34
-
35
- def find_by_sorcery_token(token_attr_name, token)
36
- where("#{token_attr_name} = ?", token).first
37
- end
38
-
39
- def get_current_users
40
- config = sorcery_config
41
- where("#{config.last_activity_at_attribute_name} IS NOT NULL") \
42
- .where("#{config.last_logout_at_attribute_name} IS NULL OR #{config.last_activity_at_attribute_name} > #{config.last_logout_at_attribute_name}") \
43
- .where("#{config.last_activity_at_attribute_name} > ? ", config.activity_timeout.seconds.ago.utc.to_s(:db))
44
- end
45
- end
46
- end
47
- end
48
- end
49
- end
@@ -1,56 +0,0 @@
1
- module Sorcery
2
- module Model
3
- module Adapters
4
- module MongoMapper
5
- extend ActiveSupport::Concern
6
-
7
- included do
8
- include Sorcery::Model
9
- end
10
-
11
- def increment(attr)
12
- self.class.increment(id, attr => 1)
13
- end
14
-
15
- def save!(options = {})
16
- save(options)
17
- end
18
-
19
- def update_many_attributes(attrs)
20
- update_attributes(attrs)
21
- end
22
-
23
- module ClassMethods
24
- def credential_regex(credential)
25
- return { :$regex => /^#{credential}$/i } if (@sorcery_config.downcase_username_before_authenticating)
26
- return credential
27
- end
28
-
29
- def find_by_credentials(credentials)
30
- @sorcery_config.username_attribute_names.each do |attribute|
31
- @user = where(attribute => credential_regex(credentials[0])).first
32
- break if @user
33
- end
34
- @user
35
- end
36
-
37
- def find_by_id(id)
38
- find(id)
39
- end
40
-
41
- def find_by_activation_token(token)
42
- where(sorcery_config.activation_token_attribute_name => token).first
43
- end
44
-
45
- def transaction(&blk)
46
- tap(&blk)
47
- end
48
-
49
- def find_by_sorcery_token(token_attr_name, token)
50
- where(token_attr_name => token).first
51
- end
52
- end
53
- end
54
- end
55
- end
56
- end
@@ -1,88 +0,0 @@
1
- module Sorcery
2
- module Model
3
- module Adapters
4
- module Mongoid
5
- def self.included(klass)
6
- klass.extend ClassMethods
7
- klass.send(:include, InstanceMethods)
8
- end
9
-
10
- module InstanceMethods
11
- def increment(attr)
12
- self.inc(attr,1)
13
- end
14
-
15
- def update_many_attributes(attrs)
16
- attrs.each do |name, value|
17
- attrs[name] = value.utc if value.is_a?(ActiveSupport::TimeWithZone)
18
- self.send(:"#{name}=", value)
19
- end
20
- self.class.where(:_id => self.id).update_all(attrs)
21
- end
22
-
23
- def update_single_attribute(name, value)
24
- update_many_attributes(name => value)
25
- end
26
- end
27
-
28
- module ClassMethods
29
- def credential_regex(credential)
30
- return { :$regex => /^#{credential}$/i } if (@sorcery_config.downcase_username_before_authenticating)
31
- return credential
32
- end
33
-
34
- def find_by_credentials(credentials)
35
- @sorcery_config.username_attribute_names.each do |attribute|
36
- @user = where(attribute => credential_regex(credentials[0])).first
37
- break if @user
38
- end
39
- @user
40
- end
41
-
42
- def find_by_provider_and_uid(provider, uid)
43
- @user_klass ||= ::Sorcery::Controller::Config.user_class.to_s.constantize
44
- where(@user_klass.sorcery_config.provider_attribute_name => provider, @user_klass.sorcery_config.provider_uid_attribute_name => uid).first
45
- end
46
-
47
- def find_by_id(id)
48
- find(id)
49
- rescue ::Mongoid::Errors::DocumentNotFound
50
- nil
51
- end
52
-
53
- def find_by_activation_token(token)
54
- where(sorcery_config.activation_token_attribute_name => token).first
55
- end
56
-
57
- def find_by_remember_me_token(token)
58
- where(sorcery_config.remember_me_token_attribute_name => token).first
59
- end
60
-
61
- def find_by_username(username)
62
- query = sorcery_config.username_attribute_names.map {|name| {name => username}}
63
- any_of(*query).first
64
- end
65
-
66
- def transaction(&blk)
67
- tap(&blk)
68
- end
69
-
70
- def find_by_sorcery_token(token_attr_name, token)
71
- where(token_attr_name => token).first
72
- end
73
-
74
- def find_by_email(email)
75
- where(sorcery_config.email_attribute_name => email).first
76
- end
77
-
78
- def get_current_users
79
- config = sorcery_config
80
- where(config.last_activity_at_attribute_name.ne => nil) \
81
- .where("this.#{config.last_logout_at_attribute_name} == null || this.#{config.last_activity_at_attribute_name} > this.#{config.last_logout_at_attribute_name}") \
82
- .where(config.last_activity_at_attribute_name.gt => config.activity_timeout.seconds.ago.utc).order_by([:_id,:asc])
83
- end
84
- end
85
- end
86
- end
87
- end
88
- end
@@ -1,16 +0,0 @@
1
- module Sorcery
2
- module TestHelpers
3
- module Rails
4
- # logins a user and calls all callbacks
5
- def login_user(user = nil)
6
- user ||= @user
7
- @controller.send(:auto_login,user)
8
- @controller.send(:after_login!,user,[user.send(user.sorcery_config.username_attribute_names.first),'secret'])
9
- end
10
-
11
- def logout_user
12
- @controller.send(:logout)
13
- end
14
- end
15
- end
16
- end
@@ -1,5 +0,0 @@
1
- module Sorcery
2
- module TestHelpers
3
-
4
- end
5
- end
data/spec/Gemfile DELETED
@@ -1,12 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gem "rails", '3.0.3'
4
- gem 'bcrypt-ruby', :require => 'bcrypt'
5
- gem "sorcery", '>= 0.1.0', :path => '../'
6
- gem 'oauth', "~> 0.4.4"
7
- gem 'oauth2', "~> 0.8.0"
8
- group :development do
9
- gem "rspec", "~> 2.5.0"
10
- gem 'ruby-debug19'
11
- gem 'simplecov', '>= 0.3.8', :require => false # Will install simplecov-html as a dependency
12
- end
data/spec/Gemfile.lock DELETED
@@ -1,129 +0,0 @@
1
- PATH
2
- remote: ../
3
- specs:
4
- sorcery (0.8.1)
5
- bcrypt-ruby (~> 3.0.0)
6
- oauth (~> 0.4.4)
7
- oauth2 (~> 0.8.0)
8
-
9
- GEM
10
- remote: http://rubygems.org/
11
- specs:
12
- abstract (1.0.0)
13
- actionmailer (3.0.3)
14
- actionpack (= 3.0.3)
15
- mail (~> 2.2.9)
16
- actionpack (3.0.3)
17
- activemodel (= 3.0.3)
18
- activesupport (= 3.0.3)
19
- builder (~> 2.1.2)
20
- erubis (~> 2.6.6)
21
- i18n (~> 0.4)
22
- rack (~> 1.2.1)
23
- rack-mount (~> 0.6.13)
24
- rack-test (~> 0.5.6)
25
- tzinfo (~> 0.3.23)
26
- activemodel (3.0.3)
27
- activesupport (= 3.0.3)
28
- builder (~> 2.1.2)
29
- i18n (~> 0.4)
30
- activerecord (3.0.3)
31
- activemodel (= 3.0.3)
32
- activesupport (= 3.0.3)
33
- arel (~> 2.0.2)
34
- tzinfo (~> 0.3.23)
35
- activeresource (3.0.3)
36
- activemodel (= 3.0.3)
37
- activesupport (= 3.0.3)
38
- activesupport (3.0.3)
39
- archive-tar-minitar (0.5.2)
40
- arel (2.0.10)
41
- bcrypt-ruby (3.0.1)
42
- builder (2.1.2)
43
- columnize (0.3.6)
44
- diff-lcs (1.1.3)
45
- erubis (2.6.6)
46
- abstract (>= 1.0.0)
47
- faraday (0.8.4)
48
- multipart-post (~> 1.1)
49
- httpauth (0.2.0)
50
- i18n (0.6.0)
51
- jwt (0.1.5)
52
- multi_json (>= 1.0)
53
- linecache19 (0.5.12)
54
- ruby_core_source (>= 0.1.4)
55
- mail (2.2.19)
56
- activesupport (>= 2.3.6)
57
- i18n (>= 0.4.0)
58
- mime-types (~> 1.16)
59
- treetop (~> 1.4.8)
60
- mime-types (1.17.2)
61
- multi_json (1.1.0)
62
- multipart-post (1.1.5)
63
- oauth (0.4.5)
64
- oauth2 (0.8.0)
65
- faraday (~> 0.8)
66
- httpauth (~> 0.1)
67
- jwt (~> 0.1.4)
68
- multi_json (~> 1.0)
69
- rack (~> 1.2)
70
- polyglot (0.3.3)
71
- rack (1.2.5)
72
- rack-mount (0.6.14)
73
- rack (>= 1.0.0)
74
- rack-test (0.5.7)
75
- rack (>= 1.0)
76
- rails (3.0.3)
77
- actionmailer (= 3.0.3)
78
- actionpack (= 3.0.3)
79
- activerecord (= 3.0.3)
80
- activeresource (= 3.0.3)
81
- activesupport (= 3.0.3)
82
- bundler (~> 1.0)
83
- railties (= 3.0.3)
84
- railties (3.0.3)
85
- actionpack (= 3.0.3)
86
- activesupport (= 3.0.3)
87
- rake (>= 0.8.7)
88
- thor (~> 0.14.4)
89
- rake (0.9.2.2)
90
- rspec (2.5.0)
91
- rspec-core (~> 2.5.0)
92
- rspec-expectations (~> 2.5.0)
93
- rspec-mocks (~> 2.5.0)
94
- rspec-core (2.5.2)
95
- rspec-expectations (2.5.0)
96
- diff-lcs (~> 1.1.2)
97
- rspec-mocks (2.5.0)
98
- ruby-debug-base19 (0.11.25)
99
- columnize (>= 0.3.1)
100
- linecache19 (>= 0.5.11)
101
- ruby_core_source (>= 0.1.4)
102
- ruby-debug19 (0.11.6)
103
- columnize (>= 0.3.1)
104
- linecache19 (>= 0.5.11)
105
- ruby-debug-base19 (>= 0.11.19)
106
- ruby_core_source (0.1.5)
107
- archive-tar-minitar (>= 0.5.2)
108
- simplecov (0.6.1)
109
- multi_json (~> 1.0)
110
- simplecov-html (~> 0.5.3)
111
- simplecov-html (0.5.3)
112
- thor (0.14.6)
113
- treetop (1.4.10)
114
- polyglot
115
- polyglot (>= 0.3.1)
116
- tzinfo (0.3.31)
117
-
118
- PLATFORMS
119
- ruby
120
-
121
- DEPENDENCIES
122
- bcrypt-ruby
123
- oauth (~> 0.4.4)
124
- oauth2 (~> 0.8.0)
125
- rails (= 3.0.3)
126
- rspec (~> 2.5.0)
127
- ruby-debug19
128
- simplecov (>= 0.3.8)
129
- sorcery (>= 0.1.0)!
data/spec/README.md DELETED
@@ -1,31 +0,0 @@
1
- Running Sorcery's Specs
2
- =======================
3
- Sorcery is meant to be used with Rails and Sinatra so sample apps have been included in `spec/`.
4
-
5
- Each sample app runs a set of shared specs ( `spec/shared_examples/*_example.rb`) and also includes specs that address framework specific concerns.
6
-
7
- Sorcery has one set of specs (`sorcery_crypto_providers_spec.rb`) that can be run outside of any of the frameworks. To run it simply:
8
-
9
- cd spec/
10
- bundle
11
- bundle exec rake spec
12
-
13
- Running Framework Specs
14
- -----------------------
15
- To run framework specs, cd into each directory, bundle, and run the specs. For example, to run the rails3 specs you would:
16
-
17
- cd spec/rails3/
18
- bundle
19
- bundle exec rake spec
20
-
21
- **Note:** the rails3_mongoid and rails3_mongo_mapper sample apps do require, well, MongoDB. Installing MongoDB on mac osx is easy with homebrew. Seeing as you're reading the readme for running specs, I'll assume you can install MongoDB on your machine. For the purpose of running these tests, I put mongod in verbose mode and in the background so I can see it log to stdout.
22
-
23
- cd spec/rails3_mongoid
24
- bundle
25
- mongod -v &
26
- bundle exec rake spec
27
-
28
- cd spec/rails3_mongo_mapper
29
- bundle
30
- mongod -v &
31
- bundle exec rake spec
data/spec/Rakefile DELETED
@@ -1,12 +0,0 @@
1
- require 'rake'
2
-
3
- require 'rspec/core/rake_task'
4
-
5
- desc 'Default: Run all specs for a specific rails version.'
6
- task :default => :spec
7
-
8
- desc "Run all specs for a specific rails version"
9
- RSpec::Core::RakeTask.new(:spec) do |t|
10
- t.pattern = '*_spec.rb'
11
- t.rspec_opts = ["--options #{File.dirname(__FILE__)}/spec.opts"]
12
- end
@@ -1,4 +0,0 @@
1
- .bundle
2
- db/*.sqlite3
3
- log/*.log
4
- tmp/**/*
data/spec/rails3/.rspec DELETED
@@ -1 +0,0 @@
1
- --colour
data/spec/rails3/Gemfile DELETED
@@ -1,15 +0,0 @@
1
- source 'http://rubygems.org'
2
-
3
- gem 'bcrypt-ruby', '~> 3.0.0'
4
- gem 'rails', '3.0.3'
5
- gem 'sqlite3-ruby', :require => 'sqlite3'
6
- gem "sorcery", '>= 0.1.0', :path => '../../'
7
-
8
- group :development, :test do
9
- gem 'rspec-rails', "~> 2.7.0"
10
- gem 'ruby-debug19'
11
- gem 'simplecov', '>= 0.3.8', :require => false # Will install simplecov-html as a dependency
12
- gem 'timecop'
13
- gem 'capybara', '~> 1.1.1'
14
- gem 'launchy', '~> 2.0.5'
15
- end
@@ -1,162 +0,0 @@
1
- PATH
2
- remote: ../../
3
- specs:
4
- sorcery (0.8.1)
5
- bcrypt-ruby (~> 3.0.0)
6
- oauth (~> 0.4.4)
7
- oauth2 (~> 0.8.0)
8
-
9
- GEM
10
- remote: http://rubygems.org/
11
- specs:
12
- abstract (1.0.0)
13
- actionmailer (3.0.3)
14
- actionpack (= 3.0.3)
15
- mail (~> 2.2.9)
16
- actionpack (3.0.3)
17
- activemodel (= 3.0.3)
18
- activesupport (= 3.0.3)
19
- builder (~> 2.1.2)
20
- erubis (~> 2.6.6)
21
- i18n (~> 0.4)
22
- rack (~> 1.2.1)
23
- rack-mount (~> 0.6.13)
24
- rack-test (~> 0.5.6)
25
- tzinfo (~> 0.3.23)
26
- activemodel (3.0.3)
27
- activesupport (= 3.0.3)
28
- builder (~> 2.1.2)
29
- i18n (~> 0.4)
30
- activerecord (3.0.3)
31
- activemodel (= 3.0.3)
32
- activesupport (= 3.0.3)
33
- arel (~> 2.0.2)
34
- tzinfo (~> 0.3.23)
35
- activeresource (3.0.3)
36
- activemodel (= 3.0.3)
37
- activesupport (= 3.0.3)
38
- activesupport (3.0.3)
39
- addressable (2.2.7)
40
- archive-tar-minitar (0.5.2)
41
- arel (2.0.10)
42
- bcrypt-ruby (3.0.1)
43
- builder (2.1.2)
44
- capybara (1.1.2)
45
- mime-types (>= 1.16)
46
- nokogiri (>= 1.3.3)
47
- rack (>= 1.0.0)
48
- rack-test (>= 0.5.4)
49
- selenium-webdriver (~> 2.0)
50
- xpath (~> 0.1.4)
51
- childprocess (0.3.1)
52
- ffi (~> 1.0.6)
53
- columnize (0.3.6)
54
- diff-lcs (1.1.3)
55
- erubis (2.6.6)
56
- abstract (>= 1.0.0)
57
- faraday (0.8.5)
58
- multipart-post (~> 1.1)
59
- ffi (1.0.11)
60
- httpauth (0.2.0)
61
- i18n (0.6.0)
62
- jwt (0.1.5)
63
- multi_json (>= 1.0)
64
- launchy (2.0.5)
65
- addressable (~> 2.2.6)
66
- linecache19 (0.5.12)
67
- ruby_core_source (>= 0.1.4)
68
- mail (2.2.19)
69
- activesupport (>= 2.3.6)
70
- i18n (>= 0.4.0)
71
- mime-types (~> 1.16)
72
- treetop (~> 1.4.8)
73
- mime-types (1.17.2)
74
- multi_json (1.1.0)
75
- multipart-post (1.1.5)
76
- nokogiri (1.5.0)
77
- oauth (0.4.7)
78
- oauth2 (0.8.1)
79
- faraday (~> 0.8)
80
- httpauth (~> 0.1)
81
- jwt (~> 0.1.4)
82
- multi_json (~> 1.0)
83
- rack (~> 1.2)
84
- polyglot (0.3.3)
85
- rack (1.2.5)
86
- rack-mount (0.6.14)
87
- rack (>= 1.0.0)
88
- rack-test (0.5.7)
89
- rack (>= 1.0)
90
- rails (3.0.3)
91
- actionmailer (= 3.0.3)
92
- actionpack (= 3.0.3)
93
- activerecord (= 3.0.3)
94
- activeresource (= 3.0.3)
95
- activesupport (= 3.0.3)
96
- bundler (~> 1.0)
97
- railties (= 3.0.3)
98
- railties (3.0.3)
99
- actionpack (= 3.0.3)
100
- activesupport (= 3.0.3)
101
- rake (>= 0.8.7)
102
- thor (~> 0.14.4)
103
- rake (0.9.2.2)
104
- rspec (2.7.0)
105
- rspec-core (~> 2.7.0)
106
- rspec-expectations (~> 2.7.0)
107
- rspec-mocks (~> 2.7.0)
108
- rspec-core (2.7.1)
109
- rspec-expectations (2.7.0)
110
- diff-lcs (~> 1.1.2)
111
- rspec-mocks (2.7.0)
112
- rspec-rails (2.7.0)
113
- actionpack (~> 3.0)
114
- activesupport (~> 3.0)
115
- railties (~> 3.0)
116
- rspec (~> 2.7.0)
117
- ruby-debug-base19 (0.11.25)
118
- columnize (>= 0.3.1)
119
- linecache19 (>= 0.5.11)
120
- ruby_core_source (>= 0.1.4)
121
- ruby-debug19 (0.11.6)
122
- columnize (>= 0.3.1)
123
- linecache19 (>= 0.5.11)
124
- ruby-debug-base19 (>= 0.11.19)
125
- ruby_core_source (0.1.5)
126
- archive-tar-minitar (>= 0.5.2)
127
- rubyzip (0.9.6.1)
128
- selenium-webdriver (2.20.0)
129
- childprocess (>= 0.2.5)
130
- ffi (~> 1.0)
131
- multi_json (~> 1.0)
132
- rubyzip
133
- simplecov (0.6.1)
134
- multi_json (~> 1.0)
135
- simplecov-html (~> 0.5.3)
136
- simplecov-html (0.5.3)
137
- sqlite3 (1.3.5)
138
- sqlite3-ruby (1.3.3)
139
- sqlite3 (>= 1.3.3)
140
- thor (0.14.6)
141
- timecop (0.3.5)
142
- treetop (1.4.10)
143
- polyglot
144
- polyglot (>= 0.3.1)
145
- tzinfo (0.3.31)
146
- xpath (0.1.4)
147
- nokogiri (~> 1.3)
148
-
149
- PLATFORMS
150
- ruby
151
-
152
- DEPENDENCIES
153
- bcrypt-ruby (~> 3.0.0)
154
- capybara (~> 1.1.1)
155
- launchy (~> 2.0.5)
156
- rails (= 3.0.3)
157
- rspec-rails (~> 2.7.0)
158
- ruby-debug19
159
- simplecov (>= 0.3.8)
160
- sorcery (>= 0.1.0)!
161
- sqlite3-ruby
162
- timecop