test/facebook/test_parse.rb in rest-more-3.2.0 vs test/facebook/test_parse.rb in rest-more-3.3.0
- old
+ new
@@ -1,26 +1,25 @@
require 'rest-more/test'
describe RC::Facebook do
-
- should 'return nil if parse error, but not when call data directly' do
+ would 'return nil if parse error, but not when call data directly' do
rg = RC::Facebook.new
rg.parse_cookies!({}).should.eq nil
rg.data .should.eq({})
end
- should 'parse if fbs contains json as well' do
+ would 'parse if fbs contains json as well' do
algorithm = 'HMAC-SHA256'
user = '{"country"=>"us", "age"=>{"min"=>21}}'
data = {'algorithm' => algorithm, 'user' => user}
rg = RC::Facebook.new(:data => data, :secret => 'secret')
sig = rg.send(:calculate_sig, data)
rg.parse_fbs!("\"#{rg.fbs}\"").should.eq data.merge('sig' => sig)
end
- should 'extract correct access_token or fail checking sig' do
+ would 'extract correct access_token or fail checking sig' do
access_token = '1|2-5|f.'
app_id = '1829'
secret = app_id.reverse
sig = '398262caea8442bd8801e8fba7c55c8a'
fbs = "access_token=#{RC::Middleware.escape(access_token)}&" \
@@ -52,17 +51,17 @@
fbs << '&inject=evil"'
check.call(nil, fbs)
check.call(nil, "\"#{fbs}\"")
end
- should 'not pass if there is no secret, prevent from forgery' do
+ would 'not pass if there is no secret, prevent from forgery' do
rg = RC::Facebook.new
rg.parse_fbs!('"feed=me&sig=bddd192cf27f22c05f61c8bea24fa4b7"').
should.eq nil
end
- should 'parse json correctly' do
+ would 'parse json correctly' do
rg = RC::Facebook.new
rg.parse_json!('bad json') .should.eq nil
rg.parse_json!('{"no":"sig"}').should.eq nil
rg.parse_json!('{"feed":"me","sig":"bddd192cf27f22c05f61c8bea24fa4b7"}').
@@ -85,15 +84,15 @@
json_encoded = encode(RC::Json.encode(data))
sig ||= OpenSSL::HMAC.digest('sha256', secret, json_encoded)
"#{encode(sig)}.#{json_encoded}"
end
- should 'parse invalid' do
+ would 'parse invalid' do
RC::Facebook.new.parse_signed_request!('bad').should.eq nil
end
- should 'parse' do
+ would 'parse' do
secret = 'aloha'
rg = RC::Facebook.new(:secret => secret)
rg.parse_signed_request!(setup_sr(secret, {'ooh' => 'dir',
'moo' => 'bar'}))
rg.data['ooh'].should.eq 'dir'
@@ -103,11 +102,11 @@
'moo' => 'bar'}, 'wrong')).
should.eq nil
rg.data .should.eq({})
end
- should 'fbsr and cookies with fbsr' do
+ would 'fbsr and cookies with fbsr' do
secret = 'lulala'
code = 'lalalu'
access_token = 'lololo'
user_id = 123
app_id = 456
@@ -134,24 +133,24 @@
setup_sr(secret, 'code' => code, 'user_id' => user_id))
check.call
end
end
- should 'generate correct fbs with correct sig' do
+ would 'generate correct fbs with correct sig' do
RC::Facebook.new(:access_token => 'fake', :secret => 's').fbs.
should.eq \
"access_token=fake&sig=#{Digest::MD5.hexdigest('access_token=fakes')}"
end
- should 'parse fbs from facebook response which lacks sig...' do
+ would 'parse fbs from facebook response which lacks sig...' do
rg = RC::Facebook.new(:access_token => 'a', :secret => 'z')
rg.parse_fbs!(rg.fbs) .should.kind_of?(Hash)
rg.data.empty?.should.eq false
rg.parse_fbs!(rg.fbs.sub(/sig\=\w+/, 'sig=abc')).should.eq nil
rg.data.empty?.should.eq true
end
- should 'generate correct fbs with additional parameters' do
+ would 'generate correct fbs with additional parameters' do
rg = RC::Facebook.new(:access_token => 'a', :secret => 'z')
rg.data['expires'] = '1234'
rg.parse_fbs!(rg.fbs).should.kind_of?(Hash)
rg.access_token .should.eq 'a'
rg.data['expires'] .should.eq '1234'