diff options
author | rautenberg <rautenberg@in-silico.ch> | 2013-07-29 09:48:48 +0200 |
---|---|---|
committer | rautenberg <rautenberg@in-silico.ch> | 2013-07-29 09:48:48 +0200 |
commit | fa2d59c8cbaf9eaad5123878a5c2a27be5b92603 (patch) | |
tree | a82b4ab3d6c4fd8ff9d5a02fd9c297f4dff04233 | |
parent | 5da7653c8a4209f0623454567b527465b662483d (diff) |
adapt toxbank-investigation-policy test to new A&A
-rw-r--r-- | test/toxbank-investigation-policy.rb | 93 |
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 |