sorcery 0.1.4 → 0.3.1
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.
- data/Gemfile +4 -2
- data/Gemfile.lock +16 -13
- data/README.rdoc +149 -78
- data/Rakefile +5 -0
- data/VERSION +1 -1
- data/lib/generators/sorcery_migration/sorcery_migration_generator.rb +24 -0
- data/lib/generators/sorcery_migration/templates/activity_logging.rb +17 -0
- data/lib/generators/sorcery_migration/templates/brute_force_protection.rb +11 -0
- data/lib/generators/sorcery_migration/templates/core.rb +16 -0
- data/lib/generators/sorcery_migration/templates/external.rb +14 -0
- data/lib/generators/sorcery_migration/templates/remember_me.rb +15 -0
- data/lib/generators/sorcery_migration/templates/reset_password.rb +13 -0
- data/lib/generators/sorcery_migration/templates/user_activation.rb +17 -0
- data/lib/sorcery/controller/adapters/sinatra.rb +97 -0
- data/lib/sorcery/controller/submodules/activity_logging.rb +20 -7
- data/lib/sorcery/controller/submodules/brute_force_protection.rb +9 -2
- data/lib/sorcery/controller/submodules/email.rb +44 -0
- data/lib/sorcery/controller/submodules/external/protocols/oauth1.rb +35 -0
- data/lib/sorcery/controller/submodules/external/protocols/oauth2.rb +26 -0
- data/lib/sorcery/controller/submodules/external/providers/facebook.rb +82 -0
- data/lib/sorcery/controller/submodules/external/providers/twitter.rb +86 -0
- data/lib/sorcery/controller/submodules/external.rb +83 -0
- data/lib/sorcery/controller/submodules/http_basic_auth.rb +18 -9
- data/lib/sorcery/controller/submodules/oauth.rb +95 -0
- data/lib/sorcery/controller/submodules/remember_me.rb +14 -5
- data/lib/sorcery/controller/submodules/session_timeout.rb +6 -1
- data/lib/sorcery/controller.rb +30 -16
- data/lib/sorcery/engine.rb +9 -2
- data/lib/sorcery/model/submodules/activity_logging.rb +13 -8
- data/lib/sorcery/model/submodules/brute_force_protection.rb +11 -8
- data/lib/sorcery/model/submodules/external.rb +53 -0
- data/lib/sorcery/model/submodules/remember_me.rb +5 -3
- data/lib/sorcery/model/submodules/reset_password.rb +16 -13
- data/lib/sorcery/model/submodules/user_activation.rb +38 -19
- data/lib/sorcery/model/temporary_token.rb +22 -0
- data/lib/sorcery/model.rb +17 -7
- data/lib/sorcery/sinatra.rb +14 -0
- data/lib/sorcery/test_helpers/rails.rb +57 -0
- data/lib/sorcery/test_helpers/sinatra.rb +131 -0
- data/lib/sorcery/test_helpers.rb +40 -0
- data/lib/sorcery.rb +22 -0
- data/sorcery.gemspec +146 -41
- data/spec/Gemfile +3 -2
- data/spec/Gemfile.lock +15 -2
- data/spec/rails3/app_root/.rspec +1 -0
- data/spec/rails3/{Gemfile → app_root/Gemfile} +4 -4
- data/spec/rails3/{Gemfile.lock → app_root/Gemfile.lock} +23 -3
- data/spec/rails3/app_root/app/controllers/application_controller.rb +42 -1
- data/spec/rails3/app_root/app/models/authentication.rb +3 -0
- data/spec/rails3/app_root/app/models/user.rb +4 -1
- data/spec/rails3/app_root/config/application.rb +1 -3
- data/spec/rails3/app_root/config/routes.rb +1 -10
- data/spec/rails3/app_root/db/migrate/activation/20101224223622_add_activation_to_users.rb +6 -4
- data/spec/rails3/app_root/db/migrate/core/20101224223620_create_users.rb +4 -4
- data/spec/rails3/app_root/db/migrate/external/20101224223628_create_authentications.rb +14 -0
- data/spec/rails3/{controller_activity_logging_spec.rb → app_root/spec/controller_activity_logging_spec.rb} +13 -13
- data/spec/rails3/{controller_brute_force_protection_spec.rb → app_root/spec/controller_brute_force_protection_spec.rb} +16 -6
- data/spec/rails3/{controller_http_basic_auth_spec.rb → app_root/spec/controller_http_basic_auth_spec.rb} +3 -3
- data/spec/rails3/app_root/spec/controller_oauth2_spec.rb +119 -0
- data/spec/rails3/app_root/spec/controller_oauth_spec.rb +122 -0
- data/spec/rails3/{controller_remember_me_spec.rb → app_root/spec/controller_remember_me_spec.rb} +4 -4
- data/spec/rails3/{controller_session_timeout_spec.rb → app_root/spec/controller_session_timeout_spec.rb} +6 -6
- data/spec/rails3/{controller_spec.rb → app_root/spec/controller_spec.rb} +20 -13
- data/spec/rails3/app_root/spec/spec_helper.orig.rb +27 -0
- data/spec/rails3/app_root/spec/spec_helper.rb +62 -0
- data/spec/rails3/{user_activation_spec.rb → app_root/spec/user_activation_spec.rb} +60 -20
- data/spec/rails3/{user_activity_logging_spec.rb → app_root/spec/user_activity_logging_spec.rb} +4 -4
- data/spec/rails3/{user_brute_force_protection_spec.rb → app_root/spec/user_brute_force_protection_spec.rb} +7 -7
- data/spec/rails3/app_root/spec/user_oauth_spec.rb +39 -0
- data/spec/rails3/{user_remember_me_spec.rb → app_root/spec/user_remember_me_spec.rb} +4 -4
- data/spec/rails3/{user_reset_password_spec.rb → app_root/spec/user_reset_password_spec.rb} +21 -41
- data/spec/rails3/app_root/spec/user_spec.rb +317 -0
- data/spec/sinatra/Gemfile +12 -0
- data/spec/sinatra/Gemfile.lock +134 -0
- data/spec/sinatra/Rakefile +10 -0
- data/spec/sinatra/authentication.rb +3 -0
- data/spec/sinatra/db/migrate/activation/20101224223622_add_activation_to_users.rb +17 -0
- data/spec/sinatra/db/migrate/activity_logging/20101224223624_add_activity_logging_to_users.rb +17 -0
- data/spec/sinatra/db/migrate/brute_force_protection/20101224223626_add_brute_force_protection_to_users.rb +11 -0
- data/spec/sinatra/db/migrate/core/20101224223620_create_users.rb +16 -0
- data/spec/sinatra/db/migrate/external/20101224223628_create_authentications.rb +14 -0
- data/spec/sinatra/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb +15 -0
- data/spec/sinatra/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb +13 -0
- data/spec/sinatra/filters.rb +21 -0
- data/spec/sinatra/myapp.rb +133 -0
- data/spec/sinatra/sorcery_mailer.rb +25 -0
- data/spec/sinatra/spec/controller_activity_logging_spec.rb +85 -0
- data/spec/sinatra/spec/controller_brute_force_protection_spec.rb +69 -0
- data/spec/sinatra/spec/controller_http_basic_auth_spec.rb +53 -0
- data/spec/sinatra/spec/controller_oauth2_spec.rb +119 -0
- data/spec/sinatra/spec/controller_oauth_spec.rb +121 -0
- data/spec/sinatra/spec/controller_remember_me_spec.rb +64 -0
- data/spec/sinatra/spec/controller_session_timeout_spec.rb +52 -0
- data/spec/sinatra/spec/controller_spec.rb +120 -0
- data/spec/sinatra/spec/spec.opts +4 -0
- data/spec/sinatra/spec/spec_helper.rb +44 -0
- data/spec/sinatra/spec/user_activation_spec.rb +188 -0
- data/spec/sinatra/spec/user_activity_logging_spec.rb +36 -0
- data/spec/sinatra/spec/user_brute_force_protection_spec.rb +76 -0
- data/spec/sinatra/spec/user_oauth_spec.rb +39 -0
- data/spec/sinatra/spec/user_remember_me_spec.rb +66 -0
- data/spec/sinatra/spec/user_reset_password_spec.rb +178 -0
- data/spec/{rails3 → sinatra/spec}/user_spec.rb +68 -38
- data/spec/sinatra/user.rb +6 -0
- data/spec/sinatra/views/test_login.erb +4 -0
- data/spec/untitled folder +18 -0
- metadata +203 -58
- data/spec/rails3/app_root/test/fixtures/users.yml +0 -9
- data/spec/rails3/app_root/test/performance/browsing_test.rb +0 -9
- data/spec/rails3/app_root/test/test_helper.rb +0 -13
- data/spec/rails3/app_root/test/unit/user_test.rb +0 -8
- data/spec/rails3/spec_helper.rb +0 -135
- /data/spec/rails3/{Rakefile → app_root/Rakefile} +0 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
module Sorcery
|
|
2
|
+
module TestHelpers
|
|
3
|
+
module Rails
|
|
4
|
+
SUBMODUELS_AUTO_ADDED_CONTROLLER_FILTERS = [:register_last_activity_time_to_db, :deny_banned_user, :validate_session]
|
|
5
|
+
|
|
6
|
+
def sorcery_reload!(submodules = [], options = {})
|
|
7
|
+
reload_user_class
|
|
8
|
+
|
|
9
|
+
# return to no-module configuration
|
|
10
|
+
::Sorcery::Controller::Config.init!
|
|
11
|
+
::Sorcery::Controller::Config.reset!
|
|
12
|
+
|
|
13
|
+
# remove all plugin before_filters so they won't fail other tests.
|
|
14
|
+
# I don't like this way, but I didn't find another.
|
|
15
|
+
# hopefully it won't break until Rails 4.
|
|
16
|
+
ApplicationController._process_action_callbacks.delete_if {|c| SUBMODUELS_AUTO_ADDED_CONTROLLER_FILTERS.include?(c.filter) }
|
|
17
|
+
|
|
18
|
+
# configure
|
|
19
|
+
::Sorcery::Controller::Config.submodules = submodules
|
|
20
|
+
::Sorcery::Controller::Config.user_class = nil
|
|
21
|
+
ActionController::Base.send(:include,::Sorcery::Controller)
|
|
22
|
+
|
|
23
|
+
User.activate_sorcery! do |config|
|
|
24
|
+
options.each do |property,value|
|
|
25
|
+
config.send(:"#{property}=", value)
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def sorcery_controller_property_set(property, value)
|
|
31
|
+
ApplicationController.activate_sorcery! do |config|
|
|
32
|
+
config.send(:"#{property}=", value)
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def sorcery_controller_oauth_property_set(provider, property, value)
|
|
37
|
+
ApplicationController.activate_sorcery! do |config|
|
|
38
|
+
config.send(provider).send(:"#{property}=", value)
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def login_user(user = nil)
|
|
43
|
+
user ||= @user
|
|
44
|
+
subject.send(:login_user,user)
|
|
45
|
+
subject.send(:after_login!,user,[user.username,'secret'])
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def logout_user
|
|
49
|
+
subject.send(:logout)
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def clear_user_without_logout
|
|
53
|
+
subject.instance_variable_set(:@current_user,nil)
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
end
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
module Sorcery
|
|
2
|
+
module TestHelpers
|
|
3
|
+
module Sinatra
|
|
4
|
+
|
|
5
|
+
class MyApp
|
|
6
|
+
class << self
|
|
7
|
+
def new
|
|
8
|
+
return this
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
class ::Sinatra::Application
|
|
14
|
+
class << self
|
|
15
|
+
attr_accessor :sorcery_vars
|
|
16
|
+
end
|
|
17
|
+
@sorcery_vars = {}
|
|
18
|
+
|
|
19
|
+
# NOTE: see before and after test filters in filters.rb
|
|
20
|
+
|
|
21
|
+
def save_instance_vars
|
|
22
|
+
instance_variables.each do |var|
|
|
23
|
+
self.class.sorcery_vars[:"#{var.to_s.delete("@")}"] = instance_variable_get(var)
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
::RSpec::Matchers.define :redirect_to do |expected|
|
|
29
|
+
match do |actual|
|
|
30
|
+
actual.status == 302 && actual.location == expected
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def get_sinatra_app(app)
|
|
35
|
+
while app.class != ::Sinatra::Application do
|
|
36
|
+
app = app.instance_variable_get(:@app)
|
|
37
|
+
end
|
|
38
|
+
app
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def login_user(user=nil)
|
|
42
|
+
user ||= @user
|
|
43
|
+
get_sinatra_app(subject).send(:login_user,user)
|
|
44
|
+
get_sinatra_app(subject).send(:after_login!,user,[user.username,'secret'])
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def logout_user
|
|
48
|
+
get_sinatra_app(subject).send(:logout)
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def clear_user_without_logout
|
|
52
|
+
get_sinatra_app(subject).instance_variable_set(:@current_user,nil)
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def assigns
|
|
56
|
+
::Sinatra::Application.sorcery_vars
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
class SessionData
|
|
60
|
+
def initialize(cookies)
|
|
61
|
+
@cookies = cookies
|
|
62
|
+
@data = cookies['rack.session']
|
|
63
|
+
if @data
|
|
64
|
+
@data = @data.unpack("m*").first
|
|
65
|
+
@data = Marshal.load(@data)
|
|
66
|
+
else
|
|
67
|
+
@data = {}
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
def [](key)
|
|
72
|
+
@data[key]
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
def []=(key, value)
|
|
76
|
+
@data[key] = value
|
|
77
|
+
session_data = Marshal.dump(@data)
|
|
78
|
+
session_data = [session_data].pack("m*")
|
|
79
|
+
@cookies.merge("rack.session=#{Rack::Utils.escape(session_data)}", URI.parse("//example.org//"))
|
|
80
|
+
raise "session variable not set" unless @cookies['rack.session'] == session_data
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
def session
|
|
85
|
+
SessionData.new(rack_test_session.instance_variable_get(:@rack_mock_session).cookie_jar)
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
def cookies
|
|
89
|
+
rack_test_session.instance_variable_get(:@rack_mock_session).cookie_jar
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
def sorcery_reload!(submodules = [], options = {})
|
|
93
|
+
reload_user_class
|
|
94
|
+
|
|
95
|
+
# return to no-module configuration
|
|
96
|
+
::Sorcery::Controller::Config.init!
|
|
97
|
+
::Sorcery::Controller::Config.reset!
|
|
98
|
+
|
|
99
|
+
# clear all filters
|
|
100
|
+
::Sinatra::Application.instance_variable_set(:@filters,{:before => [],:after => []})
|
|
101
|
+
::Sinatra::Application.class_eval do
|
|
102
|
+
load File.join(File.dirname(__FILE__),'..','..','..','spec','sinatra','filters.rb')
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
# configure
|
|
106
|
+
::Sorcery::Controller::Config.submodules = submodules
|
|
107
|
+
::Sorcery::Controller::Config.user_class = nil
|
|
108
|
+
::Sinatra::Application.send(:include, Sorcery::Controller::Adapters::Sinatra)
|
|
109
|
+
::Sinatra::Application.send(:include, Sorcery::Controller)
|
|
110
|
+
|
|
111
|
+
User.activate_sorcery! do |config|
|
|
112
|
+
options.each do |property,value|
|
|
113
|
+
config.send(:"#{property}=", value)
|
|
114
|
+
end
|
|
115
|
+
end
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
def sorcery_controller_property_set(property, value)
|
|
119
|
+
::Sinatra::Application.activate_sorcery! do |config|
|
|
120
|
+
config.send(:"#{property}=", value)
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
def sorcery_controller_oauth_property_set(provider, property, value)
|
|
125
|
+
::Sinatra::Application.activate_sorcery! do |config|
|
|
126
|
+
config.send(provider).send(:"#{property}=", value)
|
|
127
|
+
end
|
|
128
|
+
end
|
|
129
|
+
end
|
|
130
|
+
end
|
|
131
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
module Sorcery
|
|
2
|
+
module TestHelpers
|
|
3
|
+
# a patch to fix a bug in testing that happens when you 'destroy' a session twice.
|
|
4
|
+
# After the first destroy, the session is an ordinary hash, and then when destroy is called again there's an exception.
|
|
5
|
+
class ::Hash
|
|
6
|
+
def destroy
|
|
7
|
+
clear
|
|
8
|
+
end
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def create_new_user(attributes_hash = nil)
|
|
12
|
+
user_attributes_hash = attributes_hash || {:username => 'gizmo', :email => "bla@bla.com", :password => 'secret'}
|
|
13
|
+
@user = User.new(user_attributes_hash)
|
|
14
|
+
@user.save!
|
|
15
|
+
@user
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def create_new_external_user(provider, attributes_hash = nil)
|
|
19
|
+
user_attributes_hash = attributes_hash || {:username => 'gizmo', :authentications_attributes => [{:provider => provider, :uid => 123}]}
|
|
20
|
+
@user = User.new(user_attributes_hash)
|
|
21
|
+
@user.save!
|
|
22
|
+
@user
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def sorcery_model_property_set(property, *values)
|
|
26
|
+
User.class_eval do
|
|
27
|
+
sorcery_config.send(:"#{property}=", *values)
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
private
|
|
32
|
+
|
|
33
|
+
# reload user class between specs
|
|
34
|
+
# so it will be possible to test the different submodules in isolation
|
|
35
|
+
def reload_user_class
|
|
36
|
+
Object.send(:remove_const,:User)
|
|
37
|
+
load 'user.rb'
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
data/lib/sorcery.rb
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
module Sorcery
|
|
2
2
|
autoload :Model, 'sorcery/model'
|
|
3
3
|
module Model
|
|
4
|
+
autoload :TemporaryToken, 'sorcery/model/temporary_token'
|
|
4
5
|
module Submodules
|
|
5
6
|
autoload :UserActivation, 'sorcery/model/submodules/user_activation'
|
|
6
7
|
autoload :ResetPassword, 'sorcery/model/submodules/reset_password'
|
|
7
8
|
autoload :RememberMe, 'sorcery/model/submodules/remember_me'
|
|
8
9
|
autoload :ActivityLogging, 'sorcery/model/submodules/activity_logging'
|
|
9
10
|
autoload :BruteForceProtection, 'sorcery/model/submodules/brute_force_protection'
|
|
11
|
+
autoload :External, 'sorcery/model/submodules/external'
|
|
10
12
|
end
|
|
11
13
|
end
|
|
12
14
|
autoload :Controller, 'sorcery/controller'
|
|
@@ -17,6 +19,20 @@ module Sorcery
|
|
|
17
19
|
autoload :BruteForceProtection, 'sorcery/controller/submodules/brute_force_protection'
|
|
18
20
|
autoload :HttpBasicAuth, 'sorcery/controller/submodules/http_basic_auth'
|
|
19
21
|
autoload :ActivityLogging, 'sorcery/controller/submodules/activity_logging'
|
|
22
|
+
autoload :External, 'sorcery/controller/submodules/external'
|
|
23
|
+
module External
|
|
24
|
+
module Protocols
|
|
25
|
+
autoload :Oauth1, 'sorcery/controller/submodules/external/protocols/oauth1'
|
|
26
|
+
autoload :Oauth2, 'sorcery/controller/submodules/external/protocols/oauth2'
|
|
27
|
+
end
|
|
28
|
+
module Providers
|
|
29
|
+
autoload :Twitter, 'sorcery/controller/submodules/external/providers/twitter'
|
|
30
|
+
autoload :Facebook, 'sorcery/controller/submodules/external/providers/facebook'
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
module Adapters
|
|
35
|
+
autoload :Sinatra, 'sorcery/controller/adapters/sinatra'
|
|
20
36
|
end
|
|
21
37
|
end
|
|
22
38
|
module CryptoProviders
|
|
@@ -27,6 +43,12 @@ module Sorcery
|
|
|
27
43
|
autoload :SHA256, 'sorcery/crypto_providers/sha256'
|
|
28
44
|
autoload :SHA512, 'sorcery/crypto_providers/sha512'
|
|
29
45
|
end
|
|
46
|
+
autoload :TestHelpers, 'sorcery/test_helpers'
|
|
47
|
+
module TestHelpers
|
|
48
|
+
autoload :Rails, 'sorcery/test_helpers/rails'
|
|
49
|
+
autoload :Sinatra, 'sorcery/test_helpers/sinatra'
|
|
50
|
+
end
|
|
30
51
|
|
|
31
52
|
require 'sorcery/engine' if defined?(Rails) && Rails::VERSION::MAJOR == 3
|
|
53
|
+
require 'sorcery/sinatra' if defined?(Sinatra)
|
|
32
54
|
end
|
data/sorcery.gemspec
CHANGED
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
|
|
6
6
|
Gem::Specification.new do |s|
|
|
7
7
|
s.name = %q{sorcery}
|
|
8
|
-
s.version = "0.1
|
|
8
|
+
s.version = "0.3.1"
|
|
9
9
|
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
|
11
11
|
s.authors = ["Noam Ben Ari"]
|
|
12
|
-
s.date = %q{2011-
|
|
12
|
+
s.date = %q{2011-04-17}
|
|
13
13
|
s.description = %q{Provides common authentication needs such as signing in/out, activating by email and resetting password.}
|
|
14
14
|
s.email = %q{nbenari@gmail.com}
|
|
15
15
|
s.extra_rdoc_files = [
|
|
@@ -25,11 +25,27 @@ Gem::Specification.new do |s|
|
|
|
25
25
|
"README.rdoc",
|
|
26
26
|
"Rakefile",
|
|
27
27
|
"VERSION",
|
|
28
|
+
"lib/generators/sorcery_migration/sorcery_migration_generator.rb",
|
|
29
|
+
"lib/generators/sorcery_migration/templates/activity_logging.rb",
|
|
30
|
+
"lib/generators/sorcery_migration/templates/brute_force_protection.rb",
|
|
31
|
+
"lib/generators/sorcery_migration/templates/core.rb",
|
|
32
|
+
"lib/generators/sorcery_migration/templates/external.rb",
|
|
33
|
+
"lib/generators/sorcery_migration/templates/remember_me.rb",
|
|
34
|
+
"lib/generators/sorcery_migration/templates/reset_password.rb",
|
|
35
|
+
"lib/generators/sorcery_migration/templates/user_activation.rb",
|
|
28
36
|
"lib/sorcery.rb",
|
|
29
37
|
"lib/sorcery/controller.rb",
|
|
38
|
+
"lib/sorcery/controller/adapters/sinatra.rb",
|
|
30
39
|
"lib/sorcery/controller/submodules/activity_logging.rb",
|
|
31
40
|
"lib/sorcery/controller/submodules/brute_force_protection.rb",
|
|
41
|
+
"lib/sorcery/controller/submodules/email.rb",
|
|
42
|
+
"lib/sorcery/controller/submodules/external.rb",
|
|
43
|
+
"lib/sorcery/controller/submodules/external/protocols/oauth1.rb",
|
|
44
|
+
"lib/sorcery/controller/submodules/external/protocols/oauth2.rb",
|
|
45
|
+
"lib/sorcery/controller/submodules/external/providers/facebook.rb",
|
|
46
|
+
"lib/sorcery/controller/submodules/external/providers/twitter.rb",
|
|
32
47
|
"lib/sorcery/controller/submodules/http_basic_auth.rb",
|
|
48
|
+
"lib/sorcery/controller/submodules/oauth.rb",
|
|
33
49
|
"lib/sorcery/controller/submodules/remember_me.rb",
|
|
34
50
|
"lib/sorcery/controller/submodules/session_timeout.rb",
|
|
35
51
|
"lib/sorcery/crypto_providers/aes256.rb",
|
|
@@ -42,23 +58,31 @@ Gem::Specification.new do |s|
|
|
|
42
58
|
"lib/sorcery/model.rb",
|
|
43
59
|
"lib/sorcery/model/submodules/activity_logging.rb",
|
|
44
60
|
"lib/sorcery/model/submodules/brute_force_protection.rb",
|
|
61
|
+
"lib/sorcery/model/submodules/external.rb",
|
|
45
62
|
"lib/sorcery/model/submodules/remember_me.rb",
|
|
46
63
|
"lib/sorcery/model/submodules/reset_password.rb",
|
|
47
64
|
"lib/sorcery/model/submodules/user_activation.rb",
|
|
65
|
+
"lib/sorcery/model/temporary_token.rb",
|
|
66
|
+
"lib/sorcery/sinatra.rb",
|
|
67
|
+
"lib/sorcery/test_helpers.rb",
|
|
68
|
+
"lib/sorcery/test_helpers/rails.rb",
|
|
69
|
+
"lib/sorcery/test_helpers/sinatra.rb",
|
|
48
70
|
"sorcery.gemspec",
|
|
49
71
|
"spec/Gemfile",
|
|
50
72
|
"spec/Gemfile.lock",
|
|
51
73
|
"spec/Rakefile",
|
|
52
74
|
"spec/rails3/.rspec",
|
|
53
|
-
"spec/rails3/Gemfile",
|
|
54
|
-
"spec/rails3/Gemfile.lock",
|
|
55
|
-
"spec/rails3/Rakefile",
|
|
56
75
|
"spec/rails3/app_root/.gitignore",
|
|
76
|
+
"spec/rails3/app_root/.rspec",
|
|
77
|
+
"spec/rails3/app_root/Gemfile",
|
|
78
|
+
"spec/rails3/app_root/Gemfile.lock",
|
|
57
79
|
"spec/rails3/app_root/README",
|
|
80
|
+
"spec/rails3/app_root/Rakefile",
|
|
58
81
|
"spec/rails3/app_root/Rakefile.unused",
|
|
59
82
|
"spec/rails3/app_root/app/controllers/application_controller.rb",
|
|
60
83
|
"spec/rails3/app_root/app/helpers/application_helper.rb",
|
|
61
84
|
"spec/rails3/app_root/app/mailers/sorcery_mailer.rb",
|
|
85
|
+
"spec/rails3/app_root/app/models/authentication.rb",
|
|
62
86
|
"spec/rails3/app_root/app/models/user.rb",
|
|
63
87
|
"spec/rails3/app_root/app/views/layouts/application.html.erb",
|
|
64
88
|
"spec/rails3/app_root/app/views/sorcery_mailer/activation_email.html.erb",
|
|
@@ -87,6 +111,7 @@ Gem::Specification.new do |s|
|
|
|
87
111
|
"spec/rails3/app_root/db/migrate/activity_logging/20101224223624_add_activity_logging_to_users.rb",
|
|
88
112
|
"spec/rails3/app_root/db/migrate/brute_force_protection/20101224223626_add_brute_force_protection_to_users.rb",
|
|
89
113
|
"spec/rails3/app_root/db/migrate/core/20101224223620_create_users.rb",
|
|
114
|
+
"spec/rails3/app_root/db/migrate/external/20101224223628_create_authentications.rb",
|
|
90
115
|
"spec/rails3/app_root/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb",
|
|
91
116
|
"spec/rails3/app_root/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb",
|
|
92
117
|
"spec/rails3/app_root/db/schema.rb",
|
|
@@ -107,36 +132,71 @@ Gem::Specification.new do |s|
|
|
|
107
132
|
"spec/rails3/app_root/public/robots.txt",
|
|
108
133
|
"spec/rails3/app_root/public/stylesheets/.gitkeep",
|
|
109
134
|
"spec/rails3/app_root/script/rails",
|
|
110
|
-
"spec/rails3/app_root/
|
|
111
|
-
"spec/rails3/app_root/
|
|
112
|
-
"spec/rails3/app_root/
|
|
113
|
-
"spec/rails3/app_root/
|
|
135
|
+
"spec/rails3/app_root/spec/controller_activity_logging_spec.rb",
|
|
136
|
+
"spec/rails3/app_root/spec/controller_brute_force_protection_spec.rb",
|
|
137
|
+
"spec/rails3/app_root/spec/controller_http_basic_auth_spec.rb",
|
|
138
|
+
"spec/rails3/app_root/spec/controller_oauth2_spec.rb",
|
|
139
|
+
"spec/rails3/app_root/spec/controller_oauth_spec.rb",
|
|
140
|
+
"spec/rails3/app_root/spec/controller_remember_me_spec.rb",
|
|
141
|
+
"spec/rails3/app_root/spec/controller_session_timeout_spec.rb",
|
|
142
|
+
"spec/rails3/app_root/spec/controller_spec.rb",
|
|
143
|
+
"spec/rails3/app_root/spec/spec_helper.orig.rb",
|
|
144
|
+
"spec/rails3/app_root/spec/spec_helper.rb",
|
|
145
|
+
"spec/rails3/app_root/spec/user_activation_spec.rb",
|
|
146
|
+
"spec/rails3/app_root/spec/user_activity_logging_spec.rb",
|
|
147
|
+
"spec/rails3/app_root/spec/user_brute_force_protection_spec.rb",
|
|
148
|
+
"spec/rails3/app_root/spec/user_oauth_spec.rb",
|
|
149
|
+
"spec/rails3/app_root/spec/user_remember_me_spec.rb",
|
|
150
|
+
"spec/rails3/app_root/spec/user_reset_password_spec.rb",
|
|
151
|
+
"spec/rails3/app_root/spec/user_spec.rb",
|
|
114
152
|
"spec/rails3/app_root/vendor/plugins/.gitkeep",
|
|
115
|
-
"spec/
|
|
116
|
-
"spec/
|
|
117
|
-
"spec/
|
|
118
|
-
"spec/
|
|
119
|
-
"spec/
|
|
120
|
-
"spec/
|
|
121
|
-
"spec/
|
|
122
|
-
"spec/
|
|
123
|
-
"spec/
|
|
124
|
-
"spec/
|
|
125
|
-
"spec/
|
|
126
|
-
"spec/
|
|
127
|
-
"spec/
|
|
153
|
+
"spec/sinatra/Gemfile",
|
|
154
|
+
"spec/sinatra/Gemfile.lock",
|
|
155
|
+
"spec/sinatra/Rakefile",
|
|
156
|
+
"spec/sinatra/authentication.rb",
|
|
157
|
+
"spec/sinatra/db/migrate/activation/20101224223622_add_activation_to_users.rb",
|
|
158
|
+
"spec/sinatra/db/migrate/activity_logging/20101224223624_add_activity_logging_to_users.rb",
|
|
159
|
+
"spec/sinatra/db/migrate/brute_force_protection/20101224223626_add_brute_force_protection_to_users.rb",
|
|
160
|
+
"spec/sinatra/db/migrate/core/20101224223620_create_users.rb",
|
|
161
|
+
"spec/sinatra/db/migrate/external/20101224223628_create_authentications.rb",
|
|
162
|
+
"spec/sinatra/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb",
|
|
163
|
+
"spec/sinatra/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb",
|
|
164
|
+
"spec/sinatra/filters.rb",
|
|
165
|
+
"spec/sinatra/myapp.rb",
|
|
166
|
+
"spec/sinatra/sorcery_mailer.rb",
|
|
167
|
+
"spec/sinatra/spec/controller_activity_logging_spec.rb",
|
|
168
|
+
"spec/sinatra/spec/controller_brute_force_protection_spec.rb",
|
|
169
|
+
"spec/sinatra/spec/controller_http_basic_auth_spec.rb",
|
|
170
|
+
"spec/sinatra/spec/controller_oauth2_spec.rb",
|
|
171
|
+
"spec/sinatra/spec/controller_oauth_spec.rb",
|
|
172
|
+
"spec/sinatra/spec/controller_remember_me_spec.rb",
|
|
173
|
+
"spec/sinatra/spec/controller_session_timeout_spec.rb",
|
|
174
|
+
"spec/sinatra/spec/controller_spec.rb",
|
|
175
|
+
"spec/sinatra/spec/spec.opts",
|
|
176
|
+
"spec/sinatra/spec/spec_helper.rb",
|
|
177
|
+
"spec/sinatra/spec/user_activation_spec.rb",
|
|
178
|
+
"spec/sinatra/spec/user_activity_logging_spec.rb",
|
|
179
|
+
"spec/sinatra/spec/user_brute_force_protection_spec.rb",
|
|
180
|
+
"spec/sinatra/spec/user_oauth_spec.rb",
|
|
181
|
+
"spec/sinatra/spec/user_remember_me_spec.rb",
|
|
182
|
+
"spec/sinatra/spec/user_reset_password_spec.rb",
|
|
183
|
+
"spec/sinatra/spec/user_spec.rb",
|
|
184
|
+
"spec/sinatra/user.rb",
|
|
185
|
+
"spec/sinatra/views/test_login.erb",
|
|
128
186
|
"spec/sorcery_crypto_providers_spec.rb",
|
|
129
|
-
"spec/spec_helper.rb"
|
|
187
|
+
"spec/spec_helper.rb",
|
|
188
|
+
"spec/untitled folder"
|
|
130
189
|
]
|
|
131
190
|
s.homepage = %q{http://github.com/NoamB/sorcery}
|
|
132
191
|
s.licenses = ["MIT"]
|
|
133
192
|
s.require_paths = ["lib"]
|
|
134
|
-
s.rubygems_version = %q{1.
|
|
193
|
+
s.rubygems_version = %q{1.6.2}
|
|
135
194
|
s.summary = %q{Magical authentication for Rails 3 applications}
|
|
136
195
|
s.test_files = [
|
|
137
196
|
"spec/rails3/app_root/app/controllers/application_controller.rb",
|
|
138
197
|
"spec/rails3/app_root/app/helpers/application_helper.rb",
|
|
139
198
|
"spec/rails3/app_root/app/mailers/sorcery_mailer.rb",
|
|
199
|
+
"spec/rails3/app_root/app/models/authentication.rb",
|
|
140
200
|
"spec/rails3/app_root/app/models/user.rb",
|
|
141
201
|
"spec/rails3/app_root/config/application.rb",
|
|
142
202
|
"spec/rails3/app_root/config/boot.rb",
|
|
@@ -155,26 +215,56 @@ Gem::Specification.new do |s|
|
|
|
155
215
|
"spec/rails3/app_root/db/migrate/activity_logging/20101224223624_add_activity_logging_to_users.rb",
|
|
156
216
|
"spec/rails3/app_root/db/migrate/brute_force_protection/20101224223626_add_brute_force_protection_to_users.rb",
|
|
157
217
|
"spec/rails3/app_root/db/migrate/core/20101224223620_create_users.rb",
|
|
218
|
+
"spec/rails3/app_root/db/migrate/external/20101224223628_create_authentications.rb",
|
|
158
219
|
"spec/rails3/app_root/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb",
|
|
159
220
|
"spec/rails3/app_root/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb",
|
|
160
221
|
"spec/rails3/app_root/db/schema.rb",
|
|
161
222
|
"spec/rails3/app_root/db/seeds.rb",
|
|
162
|
-
"spec/rails3/app_root/
|
|
163
|
-
"spec/rails3/app_root/
|
|
164
|
-
"spec/rails3/app_root/
|
|
165
|
-
"spec/rails3/
|
|
166
|
-
"spec/rails3/
|
|
167
|
-
"spec/rails3/
|
|
168
|
-
"spec/rails3/
|
|
169
|
-
"spec/rails3/
|
|
170
|
-
"spec/rails3/
|
|
171
|
-
"spec/rails3/spec_helper.rb",
|
|
172
|
-
"spec/rails3/user_activation_spec.rb",
|
|
173
|
-
"spec/rails3/user_activity_logging_spec.rb",
|
|
174
|
-
"spec/rails3/user_brute_force_protection_spec.rb",
|
|
175
|
-
"spec/rails3/
|
|
176
|
-
"spec/rails3/
|
|
177
|
-
"spec/rails3/
|
|
223
|
+
"spec/rails3/app_root/spec/controller_activity_logging_spec.rb",
|
|
224
|
+
"spec/rails3/app_root/spec/controller_brute_force_protection_spec.rb",
|
|
225
|
+
"spec/rails3/app_root/spec/controller_http_basic_auth_spec.rb",
|
|
226
|
+
"spec/rails3/app_root/spec/controller_oauth2_spec.rb",
|
|
227
|
+
"spec/rails3/app_root/spec/controller_oauth_spec.rb",
|
|
228
|
+
"spec/rails3/app_root/spec/controller_remember_me_spec.rb",
|
|
229
|
+
"spec/rails3/app_root/spec/controller_session_timeout_spec.rb",
|
|
230
|
+
"spec/rails3/app_root/spec/controller_spec.rb",
|
|
231
|
+
"spec/rails3/app_root/spec/spec_helper.orig.rb",
|
|
232
|
+
"spec/rails3/app_root/spec/spec_helper.rb",
|
|
233
|
+
"spec/rails3/app_root/spec/user_activation_spec.rb",
|
|
234
|
+
"spec/rails3/app_root/spec/user_activity_logging_spec.rb",
|
|
235
|
+
"spec/rails3/app_root/spec/user_brute_force_protection_spec.rb",
|
|
236
|
+
"spec/rails3/app_root/spec/user_oauth_spec.rb",
|
|
237
|
+
"spec/rails3/app_root/spec/user_remember_me_spec.rb",
|
|
238
|
+
"spec/rails3/app_root/spec/user_reset_password_spec.rb",
|
|
239
|
+
"spec/rails3/app_root/spec/user_spec.rb",
|
|
240
|
+
"spec/sinatra/authentication.rb",
|
|
241
|
+
"spec/sinatra/db/migrate/activation/20101224223622_add_activation_to_users.rb",
|
|
242
|
+
"spec/sinatra/db/migrate/activity_logging/20101224223624_add_activity_logging_to_users.rb",
|
|
243
|
+
"spec/sinatra/db/migrate/brute_force_protection/20101224223626_add_brute_force_protection_to_users.rb",
|
|
244
|
+
"spec/sinatra/db/migrate/core/20101224223620_create_users.rb",
|
|
245
|
+
"spec/sinatra/db/migrate/external/20101224223628_create_authentications.rb",
|
|
246
|
+
"spec/sinatra/db/migrate/remember_me/20101224223623_add_remember_me_token_to_users.rb",
|
|
247
|
+
"spec/sinatra/db/migrate/reset_password/20101224223622_add_reset_password_to_users.rb",
|
|
248
|
+
"spec/sinatra/filters.rb",
|
|
249
|
+
"spec/sinatra/myapp.rb",
|
|
250
|
+
"spec/sinatra/sorcery_mailer.rb",
|
|
251
|
+
"spec/sinatra/spec/controller_activity_logging_spec.rb",
|
|
252
|
+
"spec/sinatra/spec/controller_brute_force_protection_spec.rb",
|
|
253
|
+
"spec/sinatra/spec/controller_http_basic_auth_spec.rb",
|
|
254
|
+
"spec/sinatra/spec/controller_oauth2_spec.rb",
|
|
255
|
+
"spec/sinatra/spec/controller_oauth_spec.rb",
|
|
256
|
+
"spec/sinatra/spec/controller_remember_me_spec.rb",
|
|
257
|
+
"spec/sinatra/spec/controller_session_timeout_spec.rb",
|
|
258
|
+
"spec/sinatra/spec/controller_spec.rb",
|
|
259
|
+
"spec/sinatra/spec/spec_helper.rb",
|
|
260
|
+
"spec/sinatra/spec/user_activation_spec.rb",
|
|
261
|
+
"spec/sinatra/spec/user_activity_logging_spec.rb",
|
|
262
|
+
"spec/sinatra/spec/user_brute_force_protection_spec.rb",
|
|
263
|
+
"spec/sinatra/spec/user_oauth_spec.rb",
|
|
264
|
+
"spec/sinatra/spec/user_remember_me_spec.rb",
|
|
265
|
+
"spec/sinatra/spec/user_reset_password_spec.rb",
|
|
266
|
+
"spec/sinatra/spec/user_spec.rb",
|
|
267
|
+
"spec/sinatra/user.rb",
|
|
178
268
|
"spec/sorcery_crypto_providers_spec.rb",
|
|
179
269
|
"spec/spec_helper.rb"
|
|
180
270
|
]
|
|
@@ -183,7 +273,10 @@ Gem::Specification.new do |s|
|
|
|
183
273
|
s.specification_version = 3
|
|
184
274
|
|
|
185
275
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
|
186
|
-
s.
|
|
276
|
+
s.add_runtime_dependency(%q<rails>, [">= 3.0.0"])
|
|
277
|
+
s.add_runtime_dependency(%q<json>, [">= 1.5.1"])
|
|
278
|
+
s.add_runtime_dependency(%q<oauth>, [">= 0.4.4"])
|
|
279
|
+
s.add_runtime_dependency(%q<oauth2>, [">= 0.1.1"])
|
|
187
280
|
s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
|
|
188
281
|
s.add_development_dependency(%q<rspec-rails>, [">= 0"])
|
|
189
282
|
s.add_development_dependency(%q<ruby-debug19>, [">= 0"])
|
|
@@ -193,8 +286,13 @@ Gem::Specification.new do |s|
|
|
|
193
286
|
s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
|
|
194
287
|
s.add_development_dependency(%q<simplecov>, [">= 0.3.8"])
|
|
195
288
|
s.add_runtime_dependency(%q<bcrypt-ruby>, ["~> 2.1.4"])
|
|
289
|
+
s.add_runtime_dependency(%q<oauth>, [">= 0.4.4"])
|
|
290
|
+
s.add_runtime_dependency(%q<oauth2>, [">= 0.1.1"])
|
|
196
291
|
else
|
|
197
292
|
s.add_dependency(%q<rails>, [">= 3.0.0"])
|
|
293
|
+
s.add_dependency(%q<json>, [">= 1.5.1"])
|
|
294
|
+
s.add_dependency(%q<oauth>, [">= 0.4.4"])
|
|
295
|
+
s.add_dependency(%q<oauth2>, [">= 0.1.1"])
|
|
198
296
|
s.add_dependency(%q<rspec>, ["~> 2.3.0"])
|
|
199
297
|
s.add_dependency(%q<rspec-rails>, [">= 0"])
|
|
200
298
|
s.add_dependency(%q<ruby-debug19>, [">= 0"])
|
|
@@ -204,9 +302,14 @@ Gem::Specification.new do |s|
|
|
|
204
302
|
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
|
205
303
|
s.add_dependency(%q<simplecov>, [">= 0.3.8"])
|
|
206
304
|
s.add_dependency(%q<bcrypt-ruby>, ["~> 2.1.4"])
|
|
305
|
+
s.add_dependency(%q<oauth>, [">= 0.4.4"])
|
|
306
|
+
s.add_dependency(%q<oauth2>, [">= 0.1.1"])
|
|
207
307
|
end
|
|
208
308
|
else
|
|
209
309
|
s.add_dependency(%q<rails>, [">= 3.0.0"])
|
|
310
|
+
s.add_dependency(%q<json>, [">= 1.5.1"])
|
|
311
|
+
s.add_dependency(%q<oauth>, [">= 0.4.4"])
|
|
312
|
+
s.add_dependency(%q<oauth2>, [">= 0.1.1"])
|
|
210
313
|
s.add_dependency(%q<rspec>, ["~> 2.3.0"])
|
|
211
314
|
s.add_dependency(%q<rspec-rails>, [">= 0"])
|
|
212
315
|
s.add_dependency(%q<ruby-debug19>, [">= 0"])
|
|
@@ -216,6 +319,8 @@ Gem::Specification.new do |s|
|
|
|
216
319
|
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
|
217
320
|
s.add_dependency(%q<simplecov>, [">= 0.3.8"])
|
|
218
321
|
s.add_dependency(%q<bcrypt-ruby>, ["~> 2.1.4"])
|
|
322
|
+
s.add_dependency(%q<oauth>, [">= 0.4.4"])
|
|
323
|
+
s.add_dependency(%q<oauth2>, [">= 0.1.1"])
|
|
219
324
|
end
|
|
220
325
|
end
|
|
221
326
|
|
data/spec/Gemfile
CHANGED
|
@@ -2,8 +2,9 @@ source 'http://rubygems.org'
|
|
|
2
2
|
|
|
3
3
|
gem "rails", '3.0.3'
|
|
4
4
|
gem 'bcrypt-ruby', :require => 'bcrypt'
|
|
5
|
-
gem "sorcery", '0.1
|
|
6
|
-
|
|
5
|
+
gem "sorcery", '0.3.1', :path => '../../../'
|
|
6
|
+
gem 'oauth', ">= 0.4.4"
|
|
7
|
+
gem 'oauth2', ">= 0.1.1"
|
|
7
8
|
group :development do
|
|
8
9
|
gem 'rspec'
|
|
9
10
|
gem 'ruby-debug19'
|
data/spec/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: ../../../
|
|
3
3
|
specs:
|
|
4
|
-
sorcery (0.1
|
|
4
|
+
sorcery (0.3.1)
|
|
5
5
|
|
|
6
6
|
GEM
|
|
7
7
|
remote: http://rubygems.org/
|
|
@@ -33,6 +33,7 @@ GEM
|
|
|
33
33
|
activemodel (= 3.0.3)
|
|
34
34
|
activesupport (= 3.0.3)
|
|
35
35
|
activesupport (3.0.3)
|
|
36
|
+
addressable (2.2.4)
|
|
36
37
|
archive-tar-minitar (0.5.2)
|
|
37
38
|
arel (2.0.6)
|
|
38
39
|
bcrypt-ruby (2.1.3)
|
|
@@ -41,6 +42,10 @@ GEM
|
|
|
41
42
|
diff-lcs (1.1.2)
|
|
42
43
|
erubis (2.6.6)
|
|
43
44
|
abstract (>= 1.0.0)
|
|
45
|
+
faraday (0.5.5)
|
|
46
|
+
addressable (~> 2.2.4)
|
|
47
|
+
multipart-post (~> 1.1.0)
|
|
48
|
+
rack (< 2, >= 1.1.0)
|
|
44
49
|
i18n (0.5.0)
|
|
45
50
|
linecache19 (0.5.11)
|
|
46
51
|
ruby_core_source (>= 0.1.4)
|
|
@@ -50,6 +55,12 @@ GEM
|
|
|
50
55
|
mime-types (~> 1.16)
|
|
51
56
|
treetop (~> 1.4.8)
|
|
52
57
|
mime-types (1.16)
|
|
58
|
+
multi_json (0.0.5)
|
|
59
|
+
multipart-post (1.1.0)
|
|
60
|
+
oauth (0.4.4)
|
|
61
|
+
oauth2 (0.1.1)
|
|
62
|
+
faraday (~> 0.5.0)
|
|
63
|
+
multi_json (~> 0.0.4)
|
|
53
64
|
polyglot (0.3.1)
|
|
54
65
|
rack (1.2.1)
|
|
55
66
|
rack-mount (0.6.13)
|
|
@@ -101,8 +112,10 @@ PLATFORMS
|
|
|
101
112
|
|
|
102
113
|
DEPENDENCIES
|
|
103
114
|
bcrypt-ruby
|
|
115
|
+
oauth (>= 0.4.4)
|
|
116
|
+
oauth2 (>= 0.1.1)
|
|
104
117
|
rails (= 3.0.3)
|
|
105
118
|
rspec
|
|
106
119
|
ruby-debug19
|
|
107
120
|
simplecov (>= 0.3.8)
|
|
108
|
-
sorcery (= 0.1
|
|
121
|
+
sorcery (= 0.3.1)!
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
--colour
|
|
@@ -2,12 +2,12 @@ source 'http://rubygems.org'
|
|
|
2
2
|
|
|
3
3
|
gem 'rails', '3.0.3'
|
|
4
4
|
gem 'sqlite3-ruby', :require => 'sqlite3'
|
|
5
|
-
gem "sorcery", '0.1
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
group :development do
|
|
5
|
+
gem "sorcery", '0.3.1', :path => '../../../'
|
|
6
|
+
|
|
7
|
+
group :development, :test do
|
|
9
8
|
gem 'rspec'
|
|
10
9
|
gem 'rspec-rails'
|
|
11
10
|
gem 'ruby-debug19'
|
|
12
11
|
gem 'simplecov', '>= 0.3.8', :require => false # Will install simplecov-html as a dependency
|
|
12
|
+
gem 'spork', '~> 0.9.0.rc'
|
|
13
13
|
end
|