summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrautenberg <rautenberg@in-silico.ch>2013-07-29 09:48:48 +0200
committerrautenberg <rautenberg@in-silico.ch>2013-07-29 09:48:48 +0200
commitfa2d59c8cbaf9eaad5123878a5c2a27be5b92603 (patch)
treea82b4ab3d6c4fd8ff9d5a02fd9c297f4dff04233
parent5da7653c8a4209f0623454567b527465b662483d (diff)
adapt toxbank-investigation-policy test to new A&A
-rw-r--r--test/toxbank-investigation-policy.rb93
1 files changed, 47 insertions, 46 deletions
diff --git a/test/toxbank-investigation-policy.rb b/test/toxbank-investigation-policy.rb
index b267566..49fd712 100644
--- a/test/toxbank-investigation-policy.rb
+++ b/test/toxbank-investigation-policy.rb
@@ -3,9 +3,11 @@ require File.join(File.expand_path(File.dirname(__FILE__)),"..","..","toxbank-in
class TBAccountBasicTest < MiniTest::Test
i_suck_and_my_tests_are_order_dependent!
-
- @@accounts = {"mrautenberg" => "#{RDF::TBU.U124}", "guest" => "#{RDF::TBU.U2}", "member" => "#{RDF::TBO.G176}"}
- @@fake_uri = "http://only_a_test/test/" + rand(1000000).to_s
+ def setup
+ @@accounts = {"mrautenberg" => "#{RDF::TBU.U124}", "guest" => "#{RDF::TBU.U2}", "member" => "#{RDF::TBO.G176}"}
+ @@fake_uri = "http://only_a_test/test/" + rand(1000000).to_s
+ OpenTox::RestClientWrapper.subjectid = $pi[:subjectid] # set pi as the logged in user
+ end
# check if PI test user is in test configuration
def test_00a_pi_exists
@@ -22,13 +24,12 @@ class TBAccountBasicTest < MiniTest::Test
# login PI user. get a valid subjectid
# @note expect valid token from OpenSSO
def test_01_pi_login
- $pi[:subjectid] = OpenTox::Authorization.authenticate($pi[:name], $pi[:password])
assert_equal true, OpenTox::Authorization.is_token_valid($pi[:subjectid]), "PI is not logged in"
end
# check userservice data of PI user
def test_02_get_tb_service_rdf
- piaccount = OpenTox::TBAccount.new($pi[:uri], $pi[:subjectid])
+ piaccount = OpenTox::TBAccount.new($pi[:uri])
assert piaccount.instance_of? OpenTox::TBAccount
assert_equal $pi[:uri], piaccount.uri
assert_equal $pi[:name], piaccount.account
@@ -37,7 +38,7 @@ class TBAccountBasicTest < MiniTest::Test
# read several accounts from userservice and compare account.account with testdata names
def test_03_get_account_via_uri
@@accounts.each do |name, uri|
- account = OpenTox::TBAccount.new(uri, $pi[:subjectid])
+ account = OpenTox::TBAccount.new(uri)
assert_equal name, account.account
end
end
@@ -46,8 +47,8 @@ class TBAccountBasicTest < MiniTest::Test
def test_04b_get_account_via_username
@@accounts.each do |name, uri|
if uri.match(RDF::TBU.to_s)
- accounturi = OpenTox::TBAccount.search_user name, $pi[:subjectid]
- account = OpenTox::TBAccount.new(accounturi, $pi[:subjectid])
+ accounturi = OpenTox::TBAccount.search_user name
+ account = OpenTox::TBAccount.new(accounturi)
assert_equal name, account.account
assert_equal accounturi, account.uri
assert_equal "TBU:#{accounturi.split('/')[-1]}", account.ns_uri
@@ -58,7 +59,7 @@ class TBAccountBasicTest < MiniTest::Test
# check LDAP DN types of accounts
def test_05_ldap_dn_type
@@accounts.each do |name, uri|
- account = OpenTox::TBAccount.new(uri, $pi[:subjectid])
+ account = OpenTox::TBAccount.new(uri)
if account.ldap_type == "LDAPUsers"
assert_equal "uid=#{name},ou=people,dc=opentox,dc=org", account.ldap_dn
else
@@ -70,53 +71,53 @@ class TBAccountBasicTest < MiniTest::Test
# create a policy for guest user and check authorizations
# GET=true, POST=false, PUT=false, DELETE=false
def test_10_create_guest_policy
- guest = OpenTox::TBAccount.new("#{RDF::TBU.U2}", $pi[:subjectid]) #PI creates policies
+ guest = OpenTox::TBAccount.new("#{RDF::TBU.U2}") #PI creates policies
guest.send_policy(@@fake_uri)
- assert_equal true, OpenTox::Authorization.uri_has_policy(@@fake_uri, OpenTox::RestClientWrapper.subjectid)
- assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "POST", OpenTox::RestClientWrapper.subjectid)
- assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "PUT", OpenTox::RestClientWrapper.subjectid)
- assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "DELETE", OpenTox::RestClientWrapper.subjectid)
- assert_equal true, OpenTox::Authorization.authorize(@@fake_uri,"GET", OpenTox::RestClientWrapper.subjectid)
+ assert_equal true, OpenTox::Authorization.uri_has_policy(@@fake_uri)
+ assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "POST")
+ assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "PUT")
+ assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "DELETE")
+ assert_equal true, OpenTox::Authorization.authorize(@@fake_uri,"GET")
test_98_delete_policies
end
# create a policy for member group and check authorizations
# GET=true, POST=false, PUT=false, DELETE=false
def test_11_create_membergroup_policy
- guest = OpenTox::TBAccount.new("#{RDF::TBO.G176}", $pi[:subjectid]) #PI creates policies
+ guest = OpenTox::TBAccount.new("#{RDF::TBO.G176}") #PI creates policies
guest.send_policy(@@fake_uri)
- assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "POST", OpenTox::RestClientWrapper.subjectid)
- assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "PUT", OpenTox::RestClientWrapper.subjectid)
- assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "DELETE", OpenTox::RestClientWrapper.subjectid)
- assert_equal true, OpenTox::Authorization.authorize(@@fake_uri,"GET", OpenTox::RestClientWrapper.subjectid)
+ assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "POST")
+ assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "PUT")
+ assert_equal false, OpenTox::Authorization.authorize(@@fake_uri, "DELETE")
+ assert_equal true, OpenTox::Authorization.authorize(@@fake_uri,"GET")
test_98_delete_policies
end
# create a policy for PI user and check authorizations
# GET=true, POST=true, PUT=true, DELETE=true
- def test_12a_create_pi_policy # create pi policy via account uri
- piaccount = OpenTox::TBAccount.new($pi[:uri], $pi[:subjectid])
+ def test_12a_create_pi_policy # create pi policy via account uri
+ piaccount = OpenTox::TBAccount.new($pi[:uri])
piaccount.send_policy(@@fake_uri, "all")
- assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "POST", $pi[:subjectid])
- assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "PUT", $pi[:subjectid])
- assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "DELETE", $pi[:subjectid])
- assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "GET", $pi[:subjectid])
+ assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "POST")
+ assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "PUT")
+ assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "DELETE")
+ assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "GET"])
test_98_delete_policies
end
def test_12b_create_pi_policy # create pi policy via subjectid only
- ret = OpenTox::Authorization.create_pi_policy(@@fake_uri, $pi[:subjectid])
- assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "POST", $pi[:subjectid])
- assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "PUT", $pi[:subjectid])
- assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "DELETE", $pi[:subjectid])
- assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "GET", $pi[:subjectid])
+ ret = OpenTox::Authorization.create_pi_policy(@@fake_uri)
+ assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "POST")
+ assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "PUT")
+ assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "DELETE")
+ assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "GET")
# delete the policies in 12c!
end
def test_12c_pi_policy_subject_name
- policies = OpenTox::Authorization.list_uri_policies(@@fake_uri, $pi[:subjectid])
+ policies = OpenTox::Authorization.list_uri_policies(@@fake_uri)
assert_equal policies.size, 1
- xml = OpenTox::Authorization.list_policy(policies[0], $pi[:subjectid])
+ xml = OpenTox::Authorization.list_policy(policies[0])
policy = OpenTox::Policies.new
policy.load_xml(xml)
assert_equal $pi[:name], policy.policies[policy.names[0]].subject.name, "subject name is not user name"
@@ -124,7 +125,7 @@ class TBAccountBasicTest < MiniTest::Test
end
def test_13a_create_guest_rw_policy
- guest = OpenTox::TBAccount.new("#{RDF::TBU.U2}", $pi[:subjectid]) #PI creates policies
+ guest = OpenTox::TBAccount.new("#{RDF::TBU.U2}") #PI creates policies
guest.send_policy(@@fake_uri, "readwrite")
assert_equal true, OpenTox::Authorization.uri_has_policy(@@fake_uri, OpenTox::RestClientWrapper.subjectid)
assert_equal true, OpenTox::Authorization.authorize(@@fake_uri, "POST", OpenTox::RestClientWrapper.subjectid)
@@ -135,9 +136,9 @@ class TBAccountBasicTest < MiniTest::Test
end
def test_13b_guest_policy_subject_name
- policies = OpenTox::Authorization.list_uri_policies(@@fake_uri, $pi[:subjectid])
+ policies = OpenTox::Authorization.list_uri_policies(@@fake_uri)
assert_equal policies.size, 1
- xml = OpenTox::Authorization.list_policy(policies[0], $pi[:subjectid])
+ xml = OpenTox::Authorization.list_policy(policies[0])
policy = OpenTox::Policies.new
policy.load_xml(xml)
assert_equal "guest", policy.policies[policy.names[0]].subject.name, "subject name is not user name"
@@ -146,18 +147,18 @@ class TBAccountBasicTest < MiniTest::Test
# create 3 policies and delete all policies except pi-policy with policies_reset method
def test_14_check_reset_policies
- guest = OpenTox::TBAccount.new("#{RDF::TBU.U2}", $pi[:subjectid]) #PI creates policies
+ guest = OpenTox::TBAccount.new("#{RDF::TBU.U2}") #PI creates policies
guest.send_policy(@@fake_uri)
- member = OpenTox::TBAccount.new("#{RDF::TBO.G176}", $pi[:subjectid]) #PI creates policies
+ member = OpenTox::TBAccount.new("#{RDF::TBO.G176}") #PI creates policies
member.send_policy(@@fake_uri)
- piaccount = OpenTox::TBAccount.new($pi[:uri], $pi[:subjectid])
+ piaccount = OpenTox::TBAccount.new($pi[:uri])
piaccount.send_policy(@@fake_uri, "all")
- assert_equal 3, OpenTox::Authorization.list_uri_policies(@@fake_uri, $pi[:subjectid]).size
- result = OpenTox::Authorization.reset_policies(@@fake_uri,"users", $pi[:subjectid])
- policies = OpenTox::Authorization.list_uri_policies(@@fake_uri, $pi[:subjectid])
+ assert_equal 3, OpenTox::Authorization.list_uri_policies(@@fake_uri).size
+ result = OpenTox::Authorization.reset_policies(@@fake_uri,"users")
+ policies = OpenTox::Authorization.list_uri_policies(@@fake_uri)
assert_equal 2, policies.size
- result = OpenTox::Authorization.reset_policies(@@fake_uri,"groups", $pi[:subjectid])
- policies = OpenTox::Authorization.list_uri_policies(@@fake_uri, $pi[:subjectid])
+ result = OpenTox::Authorization.reset_policies(@@fake_uri,"groups")
+ policies = OpenTox::Authorization.list_uri_policies(@@fake_uri)
assert_equal 1, policies.size
assert policies[0] =~ /^tbi-#{piaccount.account}-users-*/
test_98_delete_policies
@@ -165,9 +166,9 @@ class TBAccountBasicTest < MiniTest::Test
# delete all policies aftre the test
def test_98_delete_policies
- policies = OpenTox::Authorization.list_uri_policies(@@fake_uri, $pi[:subjectid])
+ policies = OpenTox::Authorization.list_uri_policies(@@fake_uri)
policies.each do |policy|
- res = OpenTox::Authorization.delete_policy(policy, $pi[:subjectid])
+ res = OpenTox::Authorization.delete_policy(policy)
assert res
end
end