facebook-stub 0.0.1.13 → 0.0.1.14
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/bin/facebook-stub.js
CHANGED
@@ -56,10 +56,11 @@
|
|
56
56
|
}
|
57
57
|
|
58
58
|
// simulate prompt to login
|
59
|
-
function promptToLogin(options, callback) {
|
59
|
+
function promptToLogin(options, callback, skipConnection) {
|
60
60
|
FBWorld.beingPromptedToLogin = true;
|
61
61
|
FBWorld.beingPromptedToLoginOptions = options;
|
62
62
|
FBWorld.beingPromptedToLoginCallback = callback;
|
63
|
+
FBWorld.beingPromptedToLoginSkipConnection = skipConnection
|
63
64
|
}
|
64
65
|
|
65
66
|
// simulates resolving a login prompt in one of three ways
|
@@ -78,12 +79,13 @@
|
|
78
79
|
FBWorld.setUid(facebook_uid);
|
79
80
|
FBWorld.loggedIn();
|
80
81
|
|
81
|
-
if (!FBWorld.state('connected')) {
|
82
|
+
if (!FBWorld.beingPromptedToLoginSkipConnection && !FBWorld.state('connected')) {
|
82
83
|
promptToConnect(options, callback);
|
83
84
|
} else {
|
84
85
|
setPermissions(options.scope);
|
85
86
|
callback(getStatus());
|
86
87
|
}
|
88
|
+
FBWorld.beingPromptedToLoginSkipConnection = false;
|
87
89
|
|
88
90
|
} else {
|
89
91
|
FBWorld.notLoggedIn();
|
@@ -368,11 +370,19 @@
|
|
368
370
|
// sharing
|
369
371
|
|
370
372
|
function ui(options, callback) {
|
371
|
-
if (
|
372
|
-
|
373
|
-
|
374
|
-
|
373
|
+
if (FBWorld.state('loggedIn')) {
|
374
|
+
if (options.method === 'feed'){
|
375
|
+
FBWorld.beingPromptedToShare = true;
|
376
|
+
FBWorld.beingPromptedToShareOptions = options;
|
377
|
+
FBWorld.beingPromptedToShareCallback = callback;
|
378
|
+
}
|
379
|
+
}else{
|
380
|
+
// if not logged in, prompt to login without connecting to app
|
381
|
+
promptToLogin(options, function() {
|
382
|
+
FB.ui(options, callback);
|
383
|
+
}, true);
|
375
384
|
}
|
385
|
+
|
376
386
|
}
|
377
387
|
|
378
388
|
// simulate closing the share prompt by either sharing or canceling
|
@@ -401,6 +411,7 @@
|
|
401
411
|
FBWorld.beingPromptedToLogin = false;
|
402
412
|
FBWorld.beingPromptedToLoginOptions = undefined;
|
403
413
|
FBWorld.beingPromptedToLoginCallback = undefined;
|
414
|
+
FBWorld.beingPromptedToLoginSkipConnection = false;
|
404
415
|
FBWorld.beingPromptedToConnect = false;
|
405
416
|
FBWorld.beingPromptedToConnectOptions = undefined;
|
406
417
|
FBWorld.beingPromptedToConnectCallback = undefined;
|
@@ -459,6 +470,7 @@
|
|
459
470
|
beingPromptedToLogin : false,
|
460
471
|
beingPromptedToLoginOptions : undefined,
|
461
472
|
beingPromptedToLoginCallback : undefined,
|
473
|
+
beingPromptedToLoginSkipConnection : false,
|
462
474
|
successfullyLogin : successfullyLogin,
|
463
475
|
failToLogin : failToLogin,
|
464
476
|
cancelLogin : cancelLogin,
|
data/lib/facebook_stub/core.js
CHANGED
@@ -56,10 +56,11 @@
|
|
56
56
|
}
|
57
57
|
|
58
58
|
// simulate prompt to login
|
59
|
-
function promptToLogin(options, callback) {
|
59
|
+
function promptToLogin(options, callback, skipConnection) {
|
60
60
|
FBWorld.beingPromptedToLogin = true;
|
61
61
|
FBWorld.beingPromptedToLoginOptions = options;
|
62
62
|
FBWorld.beingPromptedToLoginCallback = callback;
|
63
|
+
FBWorld.beingPromptedToLoginSkipConnection = skipConnection
|
63
64
|
}
|
64
65
|
|
65
66
|
// simulates resolving a login prompt in one of three ways
|
@@ -78,12 +79,13 @@
|
|
78
79
|
FBWorld.setUid(facebook_uid);
|
79
80
|
FBWorld.loggedIn();
|
80
81
|
|
81
|
-
if (!FBWorld.state('connected')) {
|
82
|
+
if (!FBWorld.beingPromptedToLoginSkipConnection && !FBWorld.state('connected')) {
|
82
83
|
promptToConnect(options, callback);
|
83
84
|
} else {
|
84
85
|
setPermissions(options.scope);
|
85
86
|
callback(getStatus());
|
86
87
|
}
|
88
|
+
FBWorld.beingPromptedToLoginSkipConnection = false;
|
87
89
|
|
88
90
|
} else {
|
89
91
|
FBWorld.notLoggedIn();
|
@@ -368,11 +370,19 @@
|
|
368
370
|
// sharing
|
369
371
|
|
370
372
|
function ui(options, callback) {
|
371
|
-
if (
|
372
|
-
|
373
|
-
|
374
|
-
|
373
|
+
if (FBWorld.state('loggedIn')) {
|
374
|
+
if (options.method === 'feed'){
|
375
|
+
FBWorld.beingPromptedToShare = true;
|
376
|
+
FBWorld.beingPromptedToShareOptions = options;
|
377
|
+
FBWorld.beingPromptedToShareCallback = callback;
|
378
|
+
}
|
379
|
+
}else{
|
380
|
+
// if not logged in, prompt to login without connecting to app
|
381
|
+
promptToLogin(options, function() {
|
382
|
+
FB.ui(options, callback);
|
383
|
+
}, true);
|
375
384
|
}
|
385
|
+
|
376
386
|
}
|
377
387
|
|
378
388
|
// simulate closing the share prompt by either sharing or canceling
|
@@ -401,6 +411,7 @@
|
|
401
411
|
FBWorld.beingPromptedToLogin = false;
|
402
412
|
FBWorld.beingPromptedToLoginOptions = undefined;
|
403
413
|
FBWorld.beingPromptedToLoginCallback = undefined;
|
414
|
+
FBWorld.beingPromptedToLoginSkipConnection = false;
|
404
415
|
FBWorld.beingPromptedToConnect = false;
|
405
416
|
FBWorld.beingPromptedToConnectOptions = undefined;
|
406
417
|
FBWorld.beingPromptedToConnectCallback = undefined;
|
@@ -459,6 +470,7 @@
|
|
459
470
|
beingPromptedToLogin : false,
|
460
471
|
beingPromptedToLoginOptions : undefined,
|
461
472
|
beingPromptedToLoginCallback : undefined,
|
473
|
+
beingPromptedToLoginSkipConnection : false,
|
462
474
|
successfullyLogin : successfullyLogin,
|
463
475
|
failToLogin : failToLogin,
|
464
476
|
cancelLogin : cancelLogin,
|
File without changes
|
@@ -0,0 +1,37 @@
|
|
1
|
+
describe("FB.ui", function() {
|
2
|
+
beforeEach(function() {
|
3
|
+
setup();
|
4
|
+
});
|
5
|
+
|
6
|
+
afterEach(function() {
|
7
|
+
FBWorld.reset();
|
8
|
+
});
|
9
|
+
|
10
|
+
describe("when calling with {method: 'feed'}", function() {
|
11
|
+
describe("when loggedIn", function() {
|
12
|
+
|
13
|
+
beforeEach(function() {
|
14
|
+
FBWorld.loggedIn();
|
15
|
+
});
|
16
|
+
|
17
|
+
it("should set me to beingPromptedToShare", function() {
|
18
|
+
FB.ui({method: 'feed'});
|
19
|
+
expect(FBWorld.beingPromptedToShare).toBeTruthy();
|
20
|
+
});
|
21
|
+
});
|
22
|
+
|
23
|
+
describe("when not loggedIn", function () {
|
24
|
+
it("should set me to beingPromptedToLogin", function() {
|
25
|
+
FB.ui({method: 'feed'});
|
26
|
+
expect(FBWorld.beingPromptedToLogin).toBeTruthy();
|
27
|
+
expect(FBWorld.beingPromptedToShare).toBeFalsy();
|
28
|
+
|
29
|
+
FBWorld.successfullyLogin(Math.floor(Math.random() * 100000));
|
30
|
+
|
31
|
+
expect(FBWorld.beingPromptedToShare).toBeTruthy();
|
32
|
+
|
33
|
+
});
|
34
|
+
});
|
35
|
+
});
|
36
|
+
|
37
|
+
});
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: facebook-stub
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.1.
|
4
|
+
version: 0.0.1.14
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-05-03 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: debugger
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirement: &70104358544640 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,15 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ! '>='
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: '0'
|
24
|
+
version_requirements: *70104358544640
|
30
25
|
- !ruby/object:Gem::Dependency
|
31
26
|
name: sprockets
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
27
|
+
requirement: &70104358547960 !ruby/object:Gem::Requirement
|
33
28
|
none: false
|
34
29
|
requirements:
|
35
30
|
- - ! '>='
|
@@ -37,15 +32,10 @@ dependencies:
|
|
37
32
|
version: '0'
|
38
33
|
type: :development
|
39
34
|
prerelease: false
|
40
|
-
version_requirements:
|
41
|
-
none: false
|
42
|
-
requirements:
|
43
|
-
- - ! '>='
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: '0'
|
35
|
+
version_requirements: *70104358547960
|
46
36
|
- !ruby/object:Gem::Dependency
|
47
37
|
name: rake
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
38
|
+
requirement: &70104358533100 !ruby/object:Gem::Requirement
|
49
39
|
none: false
|
50
40
|
requirements:
|
51
41
|
- - ! '>='
|
@@ -53,15 +43,10 @@ dependencies:
|
|
53
43
|
version: '0'
|
54
44
|
type: :development
|
55
45
|
prerelease: false
|
56
|
-
version_requirements:
|
57
|
-
none: false
|
58
|
-
requirements:
|
59
|
-
- - ! '>='
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
46
|
+
version_requirements: *70104358533100
|
62
47
|
- !ruby/object:Gem::Dependency
|
63
48
|
name: sinatra
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
+
requirement: &70104358371960 !ruby/object:Gem::Requirement
|
65
50
|
none: false
|
66
51
|
requirements:
|
67
52
|
- - ! '>='
|
@@ -69,15 +54,10 @@ dependencies:
|
|
69
54
|
version: '0'
|
70
55
|
type: :development
|
71
56
|
prerelease: false
|
72
|
-
version_requirements:
|
73
|
-
none: false
|
74
|
-
requirements:
|
75
|
-
- - ! '>='
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
version: '0'
|
57
|
+
version_requirements: *70104358371960
|
78
58
|
- !ruby/object:Gem::Dependency
|
79
59
|
name: shotgun
|
80
|
-
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirement: &70104358326520 !ruby/object:Gem::Requirement
|
81
61
|
none: false
|
82
62
|
requirements:
|
83
63
|
- - ! '>='
|
@@ -85,15 +65,10 @@ dependencies:
|
|
85
65
|
version: '0'
|
86
66
|
type: :development
|
87
67
|
prerelease: false
|
88
|
-
version_requirements:
|
89
|
-
none: false
|
90
|
-
requirements:
|
91
|
-
- - ! '>='
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: '0'
|
68
|
+
version_requirements: *70104358326520
|
94
69
|
- !ruby/object:Gem::Dependency
|
95
70
|
name: haml
|
96
|
-
requirement: !ruby/object:Gem::Requirement
|
71
|
+
requirement: &70104358302360 !ruby/object:Gem::Requirement
|
97
72
|
none: false
|
98
73
|
requirements:
|
99
74
|
- - ! '>='
|
@@ -101,15 +76,10 @@ dependencies:
|
|
101
76
|
version: '0'
|
102
77
|
type: :development
|
103
78
|
prerelease: false
|
104
|
-
version_requirements:
|
105
|
-
none: false
|
106
|
-
requirements:
|
107
|
-
- - ! '>='
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: '0'
|
79
|
+
version_requirements: *70104358302360
|
110
80
|
- !ruby/object:Gem::Dependency
|
111
81
|
name: rspec
|
112
|
-
requirement: !ruby/object:Gem::Requirement
|
82
|
+
requirement: &70104358205460 !ruby/object:Gem::Requirement
|
113
83
|
none: false
|
114
84
|
requirements:
|
115
85
|
- - ! '>='
|
@@ -117,15 +87,10 @@ dependencies:
|
|
117
87
|
version: '0'
|
118
88
|
type: :development
|
119
89
|
prerelease: false
|
120
|
-
version_requirements:
|
121
|
-
none: false
|
122
|
-
requirements:
|
123
|
-
- - ! '>='
|
124
|
-
- !ruby/object:Gem::Version
|
125
|
-
version: '0'
|
90
|
+
version_requirements: *70104358205460
|
126
91
|
- !ruby/object:Gem::Dependency
|
127
92
|
name: capybara
|
128
|
-
requirement: !ruby/object:Gem::Requirement
|
93
|
+
requirement: &70104352096940 !ruby/object:Gem::Requirement
|
129
94
|
none: false
|
130
95
|
requirements:
|
131
96
|
- - ! '>='
|
@@ -133,15 +98,10 @@ dependencies:
|
|
133
98
|
version: '0'
|
134
99
|
type: :development
|
135
100
|
prerelease: false
|
136
|
-
version_requirements:
|
137
|
-
none: false
|
138
|
-
requirements:
|
139
|
-
- - ! '>='
|
140
|
-
- !ruby/object:Gem::Version
|
141
|
-
version: '0'
|
101
|
+
version_requirements: *70104352096940
|
142
102
|
- !ruby/object:Gem::Dependency
|
143
103
|
name: jasmine
|
144
|
-
requirement: !ruby/object:Gem::Requirement
|
104
|
+
requirement: &70104352096080 !ruby/object:Gem::Requirement
|
145
105
|
none: false
|
146
106
|
requirements:
|
147
107
|
- - ! '>='
|
@@ -149,12 +109,7 @@ dependencies:
|
|
149
109
|
version: '0'
|
150
110
|
type: :development
|
151
111
|
prerelease: false
|
152
|
-
version_requirements:
|
153
|
-
none: false
|
154
|
-
requirements:
|
155
|
-
- - ! '>='
|
156
|
-
- !ruby/object:Gem::Version
|
157
|
-
version: '0'
|
112
|
+
version_requirements: *70104352096080
|
158
113
|
description: facebook-stub is a gem for stubbing out the Facebook JavaScript API in
|
159
114
|
acceptance and integration tests.
|
160
115
|
email:
|
@@ -181,7 +136,8 @@ files:
|
|
181
136
|
- lib/facebook_stub/utf8_encode.js
|
182
137
|
- lib/facebook_stub/version.rb
|
183
138
|
- spec/acceptance/facebook-stub_spec.rb
|
184
|
-
- spec/javascripts/
|
139
|
+
- spec/javascripts/FBApiSpec.js
|
140
|
+
- spec/javascripts/FBUiSpec.js
|
185
141
|
- spec/javascripts/helpers/SpecHelper.js
|
186
142
|
- spec/javascripts/support/jasmine.yml
|
187
143
|
- spec/javascripts/support/jasmine_config.rb
|
@@ -204,7 +160,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
204
160
|
version: '0'
|
205
161
|
segments:
|
206
162
|
- 0
|
207
|
-
hash:
|
163
|
+
hash: 2190103251761564407
|
208
164
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
209
165
|
none: false
|
210
166
|
requirements:
|
@@ -213,16 +169,17 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
213
169
|
version: '0'
|
214
170
|
segments:
|
215
171
|
- 0
|
216
|
-
hash:
|
172
|
+
hash: 2190103251761564407
|
217
173
|
requirements: []
|
218
174
|
rubyforge_project: facebook-stub
|
219
|
-
rubygems_version: 1.8.
|
175
|
+
rubygems_version: 1.8.11
|
220
176
|
signing_key:
|
221
177
|
specification_version: 3
|
222
178
|
summary: Stub out the FB JS API
|
223
179
|
test_files:
|
224
180
|
- spec/acceptance/facebook-stub_spec.rb
|
225
|
-
- spec/javascripts/
|
181
|
+
- spec/javascripts/FBApiSpec.js
|
182
|
+
- spec/javascripts/FBUiSpec.js
|
226
183
|
- spec/javascripts/helpers/SpecHelper.js
|
227
184
|
- spec/javascripts/support/jasmine.yml
|
228
185
|
- spec/javascripts/support/jasmine_config.rb
|