mirror of
https://github.com/TracksApp/tracks.git
synced 2025-12-23 18:50:12 +01:00
Upgraded to open_id_authentication plugin at 00d8bc7f97 and unpacked ruby-openid gem version 2.1.2.
This commit is contained in:
parent
6149900e0c
commit
e92dae2ffc
227 changed files with 30857 additions and 669 deletions
113
vendor/gems/ruby-openid-2.1.2/test/test_trustroot.rb
vendored
Normal file
113
vendor/gems/ruby-openid-2.1.2/test/test_trustroot.rb
vendored
Normal file
|
|
@ -0,0 +1,113 @@
|
|||
require 'test/unit'
|
||||
require 'openid/trustroot'
|
||||
|
||||
require "testutil"
|
||||
|
||||
class TrustRootTest < Test::Unit::TestCase
|
||||
include OpenID::TestDataMixin
|
||||
|
||||
def _test_sanity(case_, sanity, desc)
|
||||
tr = OpenID::TrustRoot::TrustRoot.parse(case_)
|
||||
if sanity == 'sane'
|
||||
assert(! tr.nil?)
|
||||
assert(tr.sane?, [case_, desc])
|
||||
assert(OpenID::TrustRoot::TrustRoot.check_sanity(case_), [case_, desc])
|
||||
elsif sanity == 'insane'
|
||||
assert(!tr.sane?, [case_, desc])
|
||||
assert(!OpenID::TrustRoot::TrustRoot.check_sanity(case_), [case_, desc])
|
||||
else
|
||||
assert(tr.nil?, case_)
|
||||
end
|
||||
end
|
||||
|
||||
def _test_match(trust_root, url, expected_match)
|
||||
tr = OpenID::TrustRoot::TrustRoot.parse(trust_root)
|
||||
actual_match = tr.validate_url(url)
|
||||
if expected_match
|
||||
assert(actual_match, [trust_root, url])
|
||||
assert(OpenID::TrustRoot::TrustRoot.check_url(trust_root, url))
|
||||
else
|
||||
assert(!actual_match, [expected_match, actual_match, trust_root, url])
|
||||
assert(!OpenID::TrustRoot::TrustRoot.check_url(trust_root, url))
|
||||
end
|
||||
end
|
||||
|
||||
def test_trustroots
|
||||
data = read_data_file('trustroot.txt', false)
|
||||
|
||||
parts = data.split('=' * 40 + "\n").collect { |i| i.strip() }
|
||||
assert(parts[0] == '')
|
||||
_, ph, pdat, mh, mdat = parts
|
||||
|
||||
getTests(['bad', 'insane', 'sane'], ph, pdat).each { |tc|
|
||||
sanity, desc, case_ = tc
|
||||
_test_sanity(case_, sanity, desc)
|
||||
}
|
||||
|
||||
getTests([true, false], mh, mdat).each { |tc|
|
||||
match, desc, case_ = tc
|
||||
trust_root, url = case_.split()
|
||||
_test_match(trust_root, url, match)
|
||||
}
|
||||
end
|
||||
|
||||
def getTests(grps, head, dat)
|
||||
tests = []
|
||||
top = head.strip()
|
||||
gdat = dat.split('-' * 40 + "\n").collect { |i| i.strip() }
|
||||
assert(gdat[0] == '')
|
||||
assert(gdat.length == (grps.length * 2 + 1), [gdat, grps])
|
||||
i = 1
|
||||
grps.each { |x|
|
||||
n, desc = gdat[i].split(': ')
|
||||
cases = gdat[i + 1].split("\n")
|
||||
assert(cases.length == n.to_i, "Number of cases differs from header count")
|
||||
cases.each { |case_|
|
||||
tests += [[x, top + ' - ' + desc, case_]]
|
||||
}
|
||||
i += 2
|
||||
}
|
||||
|
||||
return tests
|
||||
end
|
||||
|
||||
def test_return_to_matches
|
||||
data = [
|
||||
[[], nil, false],
|
||||
[[], "", false],
|
||||
[[], "http://bogus/return_to", false],
|
||||
[["http://bogus/"], nil, false],
|
||||
[["://broken/"], nil, false],
|
||||
[["://broken/"], "http://broken/", false],
|
||||
[["http://*.broken/"], "http://foo.broken/", false],
|
||||
[["http://x.broken/"], "http://foo.broken/", false],
|
||||
[["http://first/", "http://second/path/"], "http://second/?query=x", false],
|
||||
|
||||
[["http://broken/"], "http://broken/", true],
|
||||
[["http://first/", "http://second/"], "http://second/?query=x", true],
|
||||
]
|
||||
|
||||
data.each { |case_|
|
||||
allowed_return_urls, return_to, expected_result = case_
|
||||
actual_result = OpenID::TrustRoot::return_to_matches(allowed_return_urls,
|
||||
return_to)
|
||||
assert(expected_result == actual_result)
|
||||
}
|
||||
end
|
||||
|
||||
def test_build_discovery_url
|
||||
data = [
|
||||
["http://foo.com/path", "http://foo.com/path"],
|
||||
["http://foo.com/path?foo=bar", "http://foo.com/path?foo=bar"],
|
||||
["http://*.bogus.com/path", "http://www.bogus.com/path"],
|
||||
["http://*.bogus.com:122/path", "http://www.bogus.com:122/path"],
|
||||
]
|
||||
|
||||
data.each { |case_|
|
||||
trust_root, expected_disco_url = case_
|
||||
tr = OpenID::TrustRoot::TrustRoot.parse(trust_root)
|
||||
actual_disco_url = tr.build_discovery_url()
|
||||
assert(actual_disco_url == expected_disco_url, case_ + [actual_disco_url])
|
||||
}
|
||||
end
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue