authlogic_facebook_koala 0.3.0 → 0.3.2
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/README.md +4 -0
- data/authlogic_facebook_koala.gemspec +25 -22
- metadata +31 -165
- data/LICENSE +0 -20
- data/README.rdoc +0 -76
- data/Rakefile +0 -39
- data/VERSION +0 -1
- data/init.rb +0 -1
- data/lib/authlogic_facebook_koala.rb +0 -17
- data/lib/authlogic_facebook_koala/acts_as_authentic.rb +0 -20
- data/lib/authlogic_facebook_koala/adapter.rb +0 -35
- data/lib/authlogic_facebook_koala/config.rb +0 -80
- data/lib/authlogic_facebook_koala/helper.rb +0 -4
- data/lib/authlogic_facebook_koala/session.rb +0 -68
- data/rails/init.rb +0 -1
- data/test/rails_root/app/controllers/application_controller.rb +0 -10
- data/test/rails_root/app/helpers/application_helper.rb +0 -3
- data/test/rails_root/app/models/user.rb +0 -7
- data/test/rails_root/app/models/user_session.rb +0 -7
- data/test/rails_root/config/boot.rb +0 -110
- data/test/rails_root/config/database.yml +0 -10
- data/test/rails_root/config/environment.rb +0 -31
- data/test/rails_root/config/environments/development.rb +0 -0
- data/test/rails_root/config/environments/test.rb +0 -0
- data/test/rails_root/config/facebook.yml +0 -7
- data/test/rails_root/config/initializers/authlogic_facebook_koala.rb +0 -5
- data/test/rails_root/config/initializers/new_rails_defaults.rb +0 -21
- data/test/rails_root/config/initializers/session_store.rb +0 -15
- data/test/rails_root/config/locales/en.yml +0 -5
- data/test/rails_root/config/routes.rb +0 -43
- data/test/rails_root/db/migrate/20101217000008_create_users.rb +0 -37
- data/test/rails_root/db/seeds.rb +0 -7
- data/test/rails_root/script/console +0 -3
- data/test/rails_root/script/dbconsole +0 -3
- data/test/rails_root/script/generate +0 -3
- data/test/test_helper.rb +0 -43
- data/test/units/adapter_test.rb +0 -182
- data/test/units/config_test.rb +0 -145
- data/test/units/session_test.rb +0 -221
@@ -1,21 +0,0 @@
|
|
1
|
-
# Be sure to restart your server when you modify this file.
|
2
|
-
|
3
|
-
# These settings change the behavior of Rails 2 apps and will be defaults
|
4
|
-
# for Rails 3. You can remove this initializer when Rails 3 is released.
|
5
|
-
|
6
|
-
if defined?(ActiveRecord)
|
7
|
-
# Include Active Record class name as root for JSON serialized output.
|
8
|
-
ActiveRecord::Base.include_root_in_json = true
|
9
|
-
|
10
|
-
# Store the full class name (including module namespace) in STI type column.
|
11
|
-
ActiveRecord::Base.store_full_sti_class = true
|
12
|
-
end
|
13
|
-
|
14
|
-
ActionController::Routing.generate_best_match = false
|
15
|
-
|
16
|
-
# Use ISO 8601 format for JSON serialized times and dates.
|
17
|
-
ActiveSupport.use_standard_json_time_format = true
|
18
|
-
|
19
|
-
# Don't escape HTML entities in JSON, leave that for the #json_escape helper.
|
20
|
-
# if you're including raw json in an HTML page.
|
21
|
-
ActiveSupport.escape_html_entities_in_json = false
|
@@ -1,15 +0,0 @@
|
|
1
|
-
# Be sure to restart your server when you modify this file.
|
2
|
-
|
3
|
-
# Your secret key for verifying cookie session data integrity.
|
4
|
-
# If you change this key, all old sessions will become invalid!
|
5
|
-
# Make sure the secret is at least 30 characters and all random,
|
6
|
-
# no regular words or you'll be exposed to dictionary attacks.
|
7
|
-
ActionController::Base.session = {
|
8
|
-
:key => '_rails_root_session',
|
9
|
-
:secret => '4deb5b6e05377d982fa6ef37582c0be6de39e1473cc99a4a0f32fd61ec735cd9e86276b2c25fc781e7df8cd6afdc819208f7f497a755e217bff75728d05f543b'
|
10
|
-
}
|
11
|
-
|
12
|
-
# Use the database for sessions instead of the cookie-based default,
|
13
|
-
# which shouldn't be used to store highly confidential information
|
14
|
-
# (create the session table with "rake db:sessions:create")
|
15
|
-
# ActionController::Base.session_store = :active_record_store
|
@@ -1,43 +0,0 @@
|
|
1
|
-
ActionController::Routing::Routes.draw do |map|
|
2
|
-
# The priority is based upon order of creation: first created -> highest priority.
|
3
|
-
|
4
|
-
# Sample of regular route:
|
5
|
-
# map.connect 'products/:id', :controller => 'catalog', :action => 'view'
|
6
|
-
# Keep in mind you can assign values other than :controller and :action
|
7
|
-
|
8
|
-
# Sample of named route:
|
9
|
-
# map.purchase 'products/:id/purchase', :controller => 'catalog', :action => 'purchase'
|
10
|
-
# This route can be invoked with purchase_url(:id => product.id)
|
11
|
-
|
12
|
-
# Sample resource route (maps HTTP verbs to controller actions automatically):
|
13
|
-
# map.resources :products
|
14
|
-
|
15
|
-
# Sample resource route with options:
|
16
|
-
# map.resources :products, :member => { :short => :get, :toggle => :post }, :collection => { :sold => :get }
|
17
|
-
|
18
|
-
# Sample resource route with sub-resources:
|
19
|
-
# map.resources :products, :has_many => [ :comments, :sales ], :has_one => :seller
|
20
|
-
|
21
|
-
# Sample resource route with more complex sub-resources
|
22
|
-
# map.resources :products do |products|
|
23
|
-
# products.resources :comments
|
24
|
-
# products.resources :sales, :collection => { :recent => :get }
|
25
|
-
# end
|
26
|
-
|
27
|
-
# Sample resource route within a namespace:
|
28
|
-
# map.namespace :admin do |admin|
|
29
|
-
# # Directs /admin/products/* to Admin::ProductsController (app/controllers/admin/products_controller.rb)
|
30
|
-
# admin.resources :products
|
31
|
-
# end
|
32
|
-
|
33
|
-
# You can have the root of your site routed with map.root -- just remember to delete public/index.html.
|
34
|
-
# map.root :controller => "welcome"
|
35
|
-
|
36
|
-
# See how all your routes lay out with "rake routes"
|
37
|
-
|
38
|
-
# Install the default routes as the lowest priority.
|
39
|
-
# Note: These default routes make all actions in every controller accessible via GET requests. You should
|
40
|
-
# consider removing or commenting them out if you're using named routes and resources.
|
41
|
-
map.connect ':controller/:action/:id'
|
42
|
-
map.connect ':controller/:action/:id.:format'
|
43
|
-
end
|
@@ -1,37 +0,0 @@
|
|
1
|
-
class CreateUsers < ActiveRecord::Migration
|
2
|
-
|
3
|
-
def self.up
|
4
|
-
create_table :users do |t|
|
5
|
-
t.datetime :created_at
|
6
|
-
t.datetime :updated_at
|
7
|
-
t.integer :lock_version, :default => 0
|
8
|
-
t.integer :company_id
|
9
|
-
t.string :login
|
10
|
-
t.string :crypted_password
|
11
|
-
t.string :password_salt
|
12
|
-
t.string :persistence_token
|
13
|
-
t.string :single_access_token
|
14
|
-
t.string :perishable_token
|
15
|
-
t.string :email
|
16
|
-
t.string :first_name
|
17
|
-
t.string :last_name
|
18
|
-
t.integer :login_count, :default => 0, :null => false
|
19
|
-
t.integer :failed_login_count, :default => 0, :null => false
|
20
|
-
t.datetime :last_request_at
|
21
|
-
t.datetime :current_login_at
|
22
|
-
t.datetime :last_login_at
|
23
|
-
t.string :current_login_ip
|
24
|
-
t.string :last_login_ip
|
25
|
-
t.boolean :active, :default => true
|
26
|
-
t.boolean :approved, :default => true
|
27
|
-
t.boolean :confirmed, :default => true
|
28
|
-
t.string :facebook_uid
|
29
|
-
end
|
30
|
-
|
31
|
-
end
|
32
|
-
|
33
|
-
def self.down
|
34
|
-
drop_table :users
|
35
|
-
end
|
36
|
-
|
37
|
-
end
|
data/test/rails_root/db/seeds.rb
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
# This file should contain all the record creation needed to seed the database with its default values.
|
2
|
-
# The data can then be loaded with the rake db:seed (or created alongside the db with db:setup).
|
3
|
-
#
|
4
|
-
# Examples:
|
5
|
-
#
|
6
|
-
# cities = City.create([{ :name => 'Chicago' }, { :name => 'Copenhagen' }])
|
7
|
-
# Major.create(:name => 'Daley', :city => cities.first)
|
data/test/test_helper.rb
DELETED
@@ -1,43 +0,0 @@
|
|
1
|
-
# Load the environment
|
2
|
-
ENV['RAILS_ENV'] = 'test'
|
3
|
-
rails_root = File.dirname(__FILE__) + '/rails_root'
|
4
|
-
require "#{rails_root}/config/environment.rb"
|
5
|
-
|
6
|
-
# Load the testing framework
|
7
|
-
require 'test_help'
|
8
|
-
require 'flexmock/test_unit'
|
9
|
-
require "authlogic/test_case"
|
10
|
-
|
11
|
-
silence_warnings { RAILS_ENV = ENV['RAILS_ENV'] }
|
12
|
-
|
13
|
-
# Run the migrations
|
14
|
-
ActiveRecord::Migration.verbose = false
|
15
|
-
ActiveRecord::Migrator.migrate("#{RAILS_ROOT}/db/migrate")
|
16
|
-
|
17
|
-
# Setup the fixtures path
|
18
|
-
|
19
|
-
class ActiveSupport::TestCase #:nodoc:
|
20
|
-
self.fixture_path = File.join(File.dirname(__FILE__), "fixtures")
|
21
|
-
self.use_transactional_fixtures = false
|
22
|
-
self.use_instantiated_fixtures = false
|
23
|
-
self.pre_loaded_fixtures = false
|
24
|
-
|
25
|
-
fixtures :all
|
26
|
-
setup :activate_authlogic
|
27
|
-
|
28
|
-
end
|
29
|
-
|
30
|
-
# --- Sample valid cookie hash generated with the code below
|
31
|
-
# cookie_hash = {'fbs_233423200151' => 'access_token=233423200151|6892d62675cd952ade8b3f9b-6184456410|xrNaOlTCUF0QFZrJCHmVWzTb5Mk.&expires=0&secret=339a00cdafe6959c3caa1b8004e5f8db&session_key=6892d62675cd952ade8b3f9b-6184456410&sig=19d3c9ccb5b5a55d680ed1cf18698f57&uid=6184456410'}
|
32
|
-
|
33
|
-
# --- Generates user params from cookie for this app_id & secret
|
34
|
-
# oauth = Koala::Facebook::OAuth.new('233423200151', '8371c9fc95a7d0a3d9cdb6bbacfea306')
|
35
|
-
# params = oauth.get_user_from_cookie(cookie_hash)
|
36
|
-
|
37
|
-
# --- Generates a signature for a cookie hash
|
38
|
-
# fb_cookie = cookie_hash["fbs_233423200151"]
|
39
|
-
# components = {}
|
40
|
-
# fb_cookie.split("&").map {|param| param = param.split("="); components[param[0]] = param[1]}
|
41
|
-
# auth_string = components.keys.sort.collect {|a| a == "sig" ? nil : "#{a}=#{components[a]}"}.reject {|a| a.nil?}.join("")
|
42
|
-
# sig = Digest::MD5.hexdigest(auth_string + '8371c9fc95a7d0a3d9cdb6bbacfea306')
|
43
|
-
|
data/test/units/adapter_test.rb
DELETED
@@ -1,182 +0,0 @@
|
|
1
|
-
require File.expand_path( '../test_helper.rb', File.dirname(__FILE__) )
|
2
|
-
|
3
|
-
class AdapterTest < ActiveSupport::TestCase
|
4
|
-
|
5
|
-
setup :activate_authlogic
|
6
|
-
|
7
|
-
context "Adapter" do
|
8
|
-
setup do
|
9
|
-
@user_info = {
|
10
|
-
'session_key' => 'mocksessionkey',
|
11
|
-
'expires' => '0',
|
12
|
-
'uid' => 'mockuid',
|
13
|
-
'sig' => 'cbd80b97f124bf392f76e2ee61168990',
|
14
|
-
'secret' => 'mocksecret',
|
15
|
-
'access_token' => 'mockaccesstoken'
|
16
|
-
}
|
17
|
-
@mock_cookies = MockCookieJar.new
|
18
|
-
@mock_cookies['fbs_mockappid'] = {:value => 'access_token=mockaccesstoken&expires=0&secret=mocksecret&session_key=mocksessionkey&sig=cbd80b97f124bf392f76e2ee61168990&uid=mockuid'}
|
19
|
-
@session = flexmock(UserSession.new)
|
20
|
-
@controller = flexmock('Controller')
|
21
|
-
|
22
|
-
@session.should_receive(:facebook_app_id).and_return('mockappid').by_default
|
23
|
-
@session.should_receive(:facebook_api_key).and_return('mockapikey').by_default
|
24
|
-
@session.should_receive(:facebook_secret_key).and_return('mocksecret').by_default
|
25
|
-
@session.should_receive(:controller).and_return(@controller).by_default
|
26
|
-
@controller.should_receive(:cookies).and_return(@mock_cookies).by_default
|
27
|
-
end
|
28
|
-
|
29
|
-
context "setup - for my own sanity" do
|
30
|
-
|
31
|
-
should "set the controller" do
|
32
|
-
assert_equal @controller, @session.controller
|
33
|
-
end
|
34
|
-
|
35
|
-
should "set the cookies" do
|
36
|
-
assert_equal @mock_cookies, @session.controller.cookies
|
37
|
-
end
|
38
|
-
|
39
|
-
should "set the facebook_app_id" do
|
40
|
-
assert_equal 'mockappid', @session.facebook_app_id
|
41
|
-
end
|
42
|
-
|
43
|
-
should "set the facebook_secret_key" do
|
44
|
-
assert_equal 'mocksecret', @session.facebook_secret_key
|
45
|
-
end
|
46
|
-
|
47
|
-
should "set the facebook_api_key" do
|
48
|
-
assert_equal 'mockapikey', @session.facebook_api_key
|
49
|
-
end
|
50
|
-
|
51
|
-
end
|
52
|
-
|
53
|
-
context "facebook_session" do
|
54
|
-
|
55
|
-
context "with a valid facebook cookie" do
|
56
|
-
|
57
|
-
context "and koala support for get_user_info_from_cookie" do
|
58
|
-
|
59
|
-
should "return a session_key" do
|
60
|
-
assert_equal 'mocksessionkey', @session.facebook_session.session_key
|
61
|
-
end
|
62
|
-
|
63
|
-
should "return a uid" do
|
64
|
-
assert_equal 'mockuid', @session.facebook_session.uid
|
65
|
-
end
|
66
|
-
|
67
|
-
should "return a secret" do
|
68
|
-
assert_equal 'mocksecret', @session.facebook_session.secret
|
69
|
-
end
|
70
|
-
|
71
|
-
should "return a sig" do
|
72
|
-
assert_equal 'cbd80b97f124bf392f76e2ee61168990', @session.facebook_session.sig
|
73
|
-
end
|
74
|
-
|
75
|
-
should "return an access_token" do
|
76
|
-
assert_equal 'mockaccesstoken', @session.facebook_session.access_token
|
77
|
-
end
|
78
|
-
|
79
|
-
end
|
80
|
-
|
81
|
-
context "with previous koala api" do
|
82
|
-
|
83
|
-
should "get user info with the get_user_from_cookie method" do
|
84
|
-
@oauth = flexmock('oauth')
|
85
|
-
flexmock(Koala::Facebook::OAuth).should_receive(:new).and_return(@oauth).once
|
86
|
-
@oauth.should_receive(:respond_to?).with(:get_user_info_from_cookie).and_return(false).once
|
87
|
-
@oauth.should_receive(:get_user_from_cookie).with(@mock_cookies).and_return(@user_info).once
|
88
|
-
|
89
|
-
assert_equal 'mocksessionkey', @session.facebook_session.session_key
|
90
|
-
end
|
91
|
-
|
92
|
-
end
|
93
|
-
|
94
|
-
end
|
95
|
-
|
96
|
-
context "with no valid facebook cookie" do
|
97
|
-
|
98
|
-
should "return nil" do
|
99
|
-
@session.should_receive('facebook_app_id').and_return(nil).once
|
100
|
-
assert_nil @session.facebook_session
|
101
|
-
end
|
102
|
-
|
103
|
-
end
|
104
|
-
|
105
|
-
end
|
106
|
-
|
107
|
-
context "facebook_session?" do
|
108
|
-
|
109
|
-
context "with a valid facebook session" do
|
110
|
-
|
111
|
-
should "be true" do
|
112
|
-
assert @session.facebook_session?
|
113
|
-
end
|
114
|
-
|
115
|
-
end
|
116
|
-
|
117
|
-
context "without a valid facebook session" do
|
118
|
-
|
119
|
-
should "return nil" do
|
120
|
-
@session.should_receive('facebook_app_id').and_return(nil).once
|
121
|
-
assert_equal false, @session.facebook_session?
|
122
|
-
end
|
123
|
-
|
124
|
-
end
|
125
|
-
|
126
|
-
end
|
127
|
-
|
128
|
-
context "facebook_user" do
|
129
|
-
|
130
|
-
context "with a valid facebook session" do
|
131
|
-
|
132
|
-
setup do
|
133
|
-
@user = {
|
134
|
-
"id" => "mockid",
|
135
|
-
"name" => "Full name",
|
136
|
-
"first_name" => "First name",
|
137
|
-
"last_name" => "Last name"
|
138
|
-
}
|
139
|
-
|
140
|
-
@access_token = flexmock('access token')
|
141
|
-
@session.should_receive('facebook_session.access_token').and_return(@access_token).by_default
|
142
|
-
@session.should_receive('facebook_session?').and_return(true).by_default
|
143
|
-
|
144
|
-
@graph_api = flexmock('graph api', :get_object => @user)
|
145
|
-
flexmock(Koala::Facebook::GraphAPI).should_receive(:new).and_return(@graph_api).by_default
|
146
|
-
end
|
147
|
-
|
148
|
-
should "initialize the graph api" do
|
149
|
-
flexmock(Koala::Facebook::GraphAPI).should_receive(:new).with(@access_token).and_return(@graph_api).once
|
150
|
-
@session.facebook_user
|
151
|
-
end
|
152
|
-
|
153
|
-
should "return an OpenStruct" do
|
154
|
-
assert @session.facebook_user.is_a?(OpenStruct)
|
155
|
-
end
|
156
|
-
|
157
|
-
should "return the user details" do
|
158
|
-
assert_equal 'Full name', @session.facebook_user.name
|
159
|
-
assert_equal 'First name', @session.facebook_user.first_name
|
160
|
-
assert_equal 'Last name', @session.facebook_user.last_name
|
161
|
-
end
|
162
|
-
|
163
|
-
should "return the facebook id as uid" do
|
164
|
-
assert_equal 'mockid', @session.facebook_user.uid
|
165
|
-
end
|
166
|
-
|
167
|
-
end
|
168
|
-
|
169
|
-
context "with no valid facebook session" do
|
170
|
-
|
171
|
-
should "return nil" do
|
172
|
-
@session.should_receive('facebook_session?').and_return(false).once
|
173
|
-
assert_nil @session.facebook_user
|
174
|
-
end
|
175
|
-
|
176
|
-
end
|
177
|
-
|
178
|
-
end
|
179
|
-
|
180
|
-
end
|
181
|
-
|
182
|
-
end
|
data/test/units/config_test.rb
DELETED
@@ -1,145 +0,0 @@
|
|
1
|
-
require File.expand_path( '../test_helper.rb', File.dirname(__FILE__) )
|
2
|
-
|
3
|
-
class ConfigTest < ActiveSupport::TestCase
|
4
|
-
|
5
|
-
context "Config" do
|
6
|
-
|
7
|
-
setup do
|
8
|
-
@session_class = Class.new(Authlogic::Session::Base)
|
9
|
-
end
|
10
|
-
|
11
|
-
context "facebook_config_file" do
|
12
|
-
|
13
|
-
should "have a default 'facebook.yml'" do
|
14
|
-
assert_equal 'facebook.yml', @session_class.facebook_config_file
|
15
|
-
end
|
16
|
-
|
17
|
-
should "have a setter method" do
|
18
|
-
fb_config = 'fbconf.yml'
|
19
|
-
@session_class.facebook_config_file = fb_config
|
20
|
-
assert_equal fb_config, @session_class.facebook_config_file
|
21
|
-
end
|
22
|
-
|
23
|
-
end
|
24
|
-
|
25
|
-
context "facebook_app_id" do
|
26
|
-
|
27
|
-
should "default to default_config.app_id" do
|
28
|
-
default_from_config = 'defaultappid'
|
29
|
-
flexmock(@session_class).should_receive('default_config.app_id').and_return(default_from_config).once
|
30
|
-
assert_equal default_from_config, @session_class.facebook_app_id
|
31
|
-
end
|
32
|
-
|
33
|
-
should "have a setter method" do
|
34
|
-
fb_app_id = '234234234'
|
35
|
-
@session_class.facebook_app_id = fb_app_id
|
36
|
-
assert_equal fb_app_id, @session_class.facebook_app_id
|
37
|
-
end
|
38
|
-
|
39
|
-
end
|
40
|
-
|
41
|
-
context "facebook_secret_key" do
|
42
|
-
|
43
|
-
should "default to default_config.secret_key" do
|
44
|
-
default_from_config = 'defaultsecretkey'
|
45
|
-
flexmock(@session_class).should_receive('default_config.secret_key').and_return(default_from_config).once
|
46
|
-
assert_equal default_from_config, @session_class.facebook_secret_key
|
47
|
-
end
|
48
|
-
|
49
|
-
should "have a setter method" do
|
50
|
-
fb_secret = '553246736447566b583138525a716e693950736'
|
51
|
-
@session_class.facebook_secret_key = fb_secret
|
52
|
-
assert_equal fb_secret, @session_class.facebook_secret_key
|
53
|
-
end
|
54
|
-
|
55
|
-
end
|
56
|
-
|
57
|
-
context "facebook_api_key" do
|
58
|
-
|
59
|
-
should "default to default_config.api_key" do
|
60
|
-
default_from_config = 'defaultapikey'
|
61
|
-
flexmock(@session_class).should_receive('default_config.api_key').and_return(default_from_config).once
|
62
|
-
assert_equal default_from_config, @session_class.facebook_api_key
|
63
|
-
end
|
64
|
-
|
65
|
-
should "have a setter method" do
|
66
|
-
fb_api_key = '25a366a46366451636933676978776a45585734'
|
67
|
-
@session_class.facebook_api_key = fb_api_key
|
68
|
-
assert_equal fb_api_key, @session_class.facebook_api_key
|
69
|
-
end
|
70
|
-
|
71
|
-
end
|
72
|
-
|
73
|
-
context "facebook_uid_field" do
|
74
|
-
|
75
|
-
should "have a default of :facebook_uid" do
|
76
|
-
assert_equal :facebook_uid, @session_class.facebook_uid_field
|
77
|
-
end
|
78
|
-
|
79
|
-
should "have a setter method" do
|
80
|
-
fb_uid_field = 'fb_uid'
|
81
|
-
@session_class.facebook_uid_field = fb_uid_field
|
82
|
-
assert_equal fb_uid_field, @session_class.facebook_uid_field
|
83
|
-
end
|
84
|
-
|
85
|
-
end
|
86
|
-
|
87
|
-
context "facebook_finder" do
|
88
|
-
|
89
|
-
should 'have a default nil' do
|
90
|
-
assert_nil @session_class.facebook_finder
|
91
|
-
end
|
92
|
-
|
93
|
-
should "have a setter method" do
|
94
|
-
fb_finder = 'find_by_fb_uid'
|
95
|
-
@session_class.facebook_finder = fb_finder
|
96
|
-
assert_equal fb_finder, @session_class.facebook_finder
|
97
|
-
end
|
98
|
-
|
99
|
-
end
|
100
|
-
|
101
|
-
context "facebook_auto_register" do
|
102
|
-
|
103
|
-
should 'have a default false' do
|
104
|
-
assert_false @session_class.facebook_auto_register
|
105
|
-
end
|
106
|
-
|
107
|
-
should "have a setter method" do
|
108
|
-
fb_auto_reg = true
|
109
|
-
@session_class.facebook_auto_register = fb_auto_reg
|
110
|
-
assert_equal fb_auto_reg, @session_class.facebook_auto_register
|
111
|
-
end
|
112
|
-
|
113
|
-
end
|
114
|
-
|
115
|
-
context "default_config" do
|
116
|
-
|
117
|
-
should "be a class method" do
|
118
|
-
assert @session_class.respond_to?(:default_config)
|
119
|
-
end
|
120
|
-
|
121
|
-
should "return an OpenStruct" do
|
122
|
-
assert @session_class.default_config.is_a?(OpenStruct)
|
123
|
-
end
|
124
|
-
|
125
|
-
should "return the app_id from the default config file" do
|
126
|
-
assert_equal 'appidfromfile', @session_class.default_config.app_id
|
127
|
-
end
|
128
|
-
|
129
|
-
should "return the api_key from the default config file" do
|
130
|
-
assert_equal 'apikeyfromfile', @session_class.default_config.api_key
|
131
|
-
end
|
132
|
-
|
133
|
-
should "return the secret_key from the default config file" do
|
134
|
-
assert_equal 'secretkeyfromfile', @session_class.default_config.secret_key
|
135
|
-
end
|
136
|
-
|
137
|
-
should "return an empty OpenStruct if the file isn't found" do
|
138
|
-
flexmock(@session_class).should_receive(:facebook_config_file).and_return('notthere.yml').once
|
139
|
-
assert_equal OpenStruct.new({}), @session_class.default_config
|
140
|
-
end
|
141
|
-
end
|
142
|
-
|
143
|
-
end
|
144
|
-
|
145
|
-
end
|