opentox-client 0.0.1pre → 0.0.2pre
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/README.markdown +5 -0
- data/lib/authorization.rb +55 -79
- data/lib/dataset.rb +17 -306
- data/lib/error.rb +23 -12
- data/lib/opentox-client.rb +5 -2
- data/lib/opentox.rb +27 -15
- data/lib/overwrite.rb +10 -22
- data/lib/policy.rb +204 -127
- data/lib/rest-client-wrapper.rb +14 -7
- data/lib/task.rb +22 -31
- data/opentox-client.gemspec +5 -1
- data/test/authorization.rb +107 -0
- data/test/dataset.rb +60 -14
- data/test/feature.rb +2 -2
- data/test/policy.rb +120 -0
- data/test/task.rb +5 -5
- metadata +19 -15
@@ -0,0 +1,107 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
$LOAD_PATH << File.join(File.dirname(__FILE__),'..','lib')
|
3
|
+
require File.expand_path(File.join(File.dirname(__FILE__),'..','lib','opentox-client.rb'))
|
4
|
+
TEST_URI = "http://only_a_test/test/" + rand(1000000).to_s
|
5
|
+
AA ||= "https://opensso.in-silico.ch"
|
6
|
+
AA_USER = "guest"
|
7
|
+
AA_PASS = "guest"
|
8
|
+
@@subjectid = OpenTox::Authorization.authenticate(AA_USER,AA_PASS)
|
9
|
+
|
10
|
+
class TestOpenToxAuthorizationBasic < Test::Unit::TestCase
|
11
|
+
|
12
|
+
def test_01_server
|
13
|
+
assert_equal(AA, OpenTox::Authorization.server)
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_02_get_token
|
17
|
+
assert_not_nil @@subjectid
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_03_is_valid_token
|
21
|
+
tok = login
|
22
|
+
assert_not_nil tok
|
23
|
+
assert OpenTox::Authorization.is_token_valid(tok)
|
24
|
+
logout(tok)
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_04_logout
|
28
|
+
tok = login
|
29
|
+
assert logout(tok)
|
30
|
+
assert_equal false, OpenTox::Authorization.is_token_valid(tok)
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_05_list_policies
|
34
|
+
assert_kind_of Array, OpenTox::Authorization.list_policies(@@subjectid)
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
|
39
|
+
class TestOpenToxAuthorizationLDAP < Test::Unit::TestCase
|
40
|
+
|
41
|
+
def test_01_list_user_groups
|
42
|
+
assert_kind_of Array, OpenTox::Authorization.list_user_groups(AA_USER, @@subjectid)
|
43
|
+
end
|
44
|
+
|
45
|
+
def test_02_get_user
|
46
|
+
assert_equal AA_USER, OpenTox::Authorization.get_user(@@subjectid)
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
50
|
+
|
51
|
+
class TestOpenToxAuthorizationLDAP < Test::Unit::TestCase
|
52
|
+
|
53
|
+
def test_01_create_check_delete_default_policies
|
54
|
+
res = OpenTox::Authorization.send_policy(TEST_URI, @@subjectid)
|
55
|
+
assert res
|
56
|
+
assert OpenTox::Authorization.uri_has_policy(TEST_URI, @@subjectid)
|
57
|
+
policies = OpenTox::Authorization.list_uri_policies(TEST_URI, @@subjectid)
|
58
|
+
assert_kind_of Array, policies
|
59
|
+
policies.each do |policy|
|
60
|
+
assert OpenTox::Authorization.delete_policy(policy, @@subjectid)
|
61
|
+
end
|
62
|
+
assert_equal false, OpenTox::Authorization.uri_has_policy(TEST_URI, @@subjectid)
|
63
|
+
end
|
64
|
+
|
65
|
+
def test_02_check_policy_rules
|
66
|
+
tok_anonymous = OpenTox::Authorization.authenticate("anonymous","anonymous")
|
67
|
+
assert_not_nil tok_anonymous
|
68
|
+
res = OpenTox::Authorization.send_policy(TEST_URI, @@subjectid)
|
69
|
+
assert res
|
70
|
+
assert OpenTox::Authorization.uri_has_policy(TEST_URI, @@subjectid)
|
71
|
+
owner_rights = {"GET" => true, "POST" => true, "PUT" => true, "DELETE" => true}
|
72
|
+
groupmember_rights = {"GET" => true, "POST" => nil, "PUT" => nil, "DELETE" => nil}
|
73
|
+
owner_rights.each do |request, right|
|
74
|
+
assert_equal right, OpenTox::Authorization.authorize(TEST_URI, request, @@subjectid), "#{AA_USER} requests #{request} to #{TEST_URI}"
|
75
|
+
end
|
76
|
+
groupmember_rights.each do |request, r|
|
77
|
+
assert_equal r, OpenTox::Authorization.authorize(TEST_URI, request, tok_anonymous), "anonymous requests #{request} to #{TEST_URI}"
|
78
|
+
end
|
79
|
+
|
80
|
+
policies = OpenTox::Authorization.list_uri_policies(TEST_URI, @@subjectid)
|
81
|
+
assert_kind_of Array, policies
|
82
|
+
policies.each do |policy|
|
83
|
+
assert OpenTox::Authorization.delete_policy(policy, @@subjectid)
|
84
|
+
end
|
85
|
+
logout(tok_anonymous)
|
86
|
+
end
|
87
|
+
|
88
|
+
def test_03_check_different_uris
|
89
|
+
res = OpenTox::Authorization.send_policy(TEST_URI, @@subjectid)
|
90
|
+
assert OpenTox::Authorization.uri_has_policy(TEST_URI, @@subjectid)
|
91
|
+
assert OpenTox::Authorization.authorize(TEST_URI, "GET", @@subjectid), "GET request"
|
92
|
+
policies = OpenTox::Authorization.list_uri_policies(TEST_URI, @@subjectid)
|
93
|
+
policies.each do |policy|
|
94
|
+
assert OpenTox::Authorization.delete_policy(policy, @@subjectid)
|
95
|
+
end
|
96
|
+
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|
100
|
+
|
101
|
+
def logout (token)
|
102
|
+
OpenTox::Authorization.logout(token)
|
103
|
+
end
|
104
|
+
|
105
|
+
def login
|
106
|
+
OpenTox::Authorization.authenticate(AA_USER,AA_PASS)
|
107
|
+
end
|
data/test/dataset.rb
CHANGED
@@ -1,44 +1,79 @@
|
|
1
1
|
require 'test/unit'
|
2
2
|
$LOAD_PATH << File.join(File.dirname(__FILE__),'..','lib')
|
3
3
|
require File.join File.dirname(__FILE__),'..','lib','opentox-client.rb'
|
4
|
+
DATASET = "http://ot-dev.in-silico.ch/dataset"
|
5
|
+
AA ||= "https://opensso.in-silico.ch"
|
6
|
+
AA_USER = "guest"
|
7
|
+
AA_PASS = "guest"
|
8
|
+
@@subjectid = OpenTox::Authorization.authenticate(AA_USER,AA_PASS)
|
9
|
+
|
10
|
+
DATA_DIR = File.join(File.dirname(__FILE__),"data")
|
11
|
+
# TODO: add subjectids
|
12
|
+
|
4
13
|
|
5
14
|
class DatasetTest < Test::Unit::TestCase
|
6
15
|
|
7
16
|
def test_all
|
8
|
-
|
17
|
+
puts @@subjectid
|
18
|
+
datasets = OpenTox::Dataset.all(DATASET, @@subjectid)
|
9
19
|
assert_equal OpenTox::Dataset, datasets.first.class
|
10
20
|
end
|
11
21
|
|
12
22
|
def test_create_empty
|
13
|
-
|
14
|
-
d = OpenTox::Dataset.create service_uri
|
23
|
+
d = OpenTox::Dataset.create(DATASET, @@subjectid)
|
15
24
|
assert_equal OpenTox::Dataset, d.class
|
16
|
-
assert_match /#{
|
25
|
+
assert_match /#{DATASET}/, d.uri.to_s
|
17
26
|
d.delete
|
18
27
|
end
|
19
28
|
|
20
29
|
def test_create_from_file
|
21
|
-
d = OpenTox::Dataset.from_file
|
30
|
+
d = OpenTox::Dataset.from_file DATASET, File.join(DATA_DIR,"EPAFHM.mini.csv"), @@subjectid
|
22
31
|
assert_equal OpenTox::Dataset, d.class
|
32
|
+
assert_equal d.uri, d[RDF::XSD.anyURI]
|
33
|
+
assert_equal "EPAFHM.mini", d.metadata[RDF::URI("http://purl.org/dc/elements/1.1/title")].first.to_s # DC.title is http://purl.org/dc/terms/title
|
34
|
+
assert_equal "EPAFHM.mini", d[RDF::URI("http://purl.org/dc/elements/1.1/title")]
|
23
35
|
d.delete
|
24
36
|
assert_raise OpenTox::NotFoundError do
|
25
37
|
d.get
|
26
38
|
end
|
27
39
|
end
|
28
40
|
|
41
|
+
def test_from_yaml
|
42
|
+
@dataset = OpenTox::Dataset.from_file DATASET, File.join(DATA_DIR,"hamster_carcinogenicity.yaml"), @@subjectid
|
43
|
+
assert_equal OpenTox::Dataset, @dataset.class
|
44
|
+
assert_equal "hamster_carcinogenicity", @dataset[RDF::URI("http://purl.org/dc/elements/1.1/title")]
|
45
|
+
hamster_carc?
|
46
|
+
@dataset.delete
|
47
|
+
end
|
29
48
|
|
30
49
|
=begin
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
50
|
+
# TODO: fix (mime type??0 and add Egons example
|
51
|
+
def test_sdf_with_multiple_features
|
52
|
+
@dataset = OpenTox::Dataset.from_file DATASET, "#{DATA_DIR}/CPDBAS_v5c_1547_29Apr2008part.sdf"
|
53
|
+
assert_equal OpenTox::Dataset, @dataset.class
|
54
|
+
puts @dataset.features.size
|
55
|
+
puts @dataset.compounds.size
|
56
|
+
@dataset.delete
|
57
|
+
end
|
58
|
+
=end
|
59
|
+
|
60
|
+
def test_multicolumn_csv
|
61
|
+
@dataset = OpenTox::Dataset.from_file DATASET, "#{DATA_DIR}/multicolumn.csv", @@subjectid
|
62
|
+
assert_equal 5, @dataset.features.size
|
63
|
+
assert_equal 4, @dataset.compounds.size
|
64
|
+
@dataset.delete
|
39
65
|
end
|
66
|
+
|
67
|
+
def test_from_csv
|
68
|
+
@dataset = OpenTox::Dataset.from_file DATASET, "#{DATA_DIR}/hamster_carcinogenicity.csv", @@subjectid
|
69
|
+
assert_equal OpenTox::Dataset, @dataset.class
|
70
|
+
hamster_carc?
|
71
|
+
@dataset.delete
|
72
|
+
end
|
73
|
+
|
74
|
+
=begin
|
40
75
|
def test_save
|
41
|
-
d = OpenTox::Dataset.create
|
76
|
+
d = OpenTox::Dataset.create DATASET
|
42
77
|
d.metadata
|
43
78
|
d.metadata[RDF::DC.title] = "test"
|
44
79
|
d.save
|
@@ -48,6 +83,17 @@ class DatasetTest < Test::Unit::TestCase
|
|
48
83
|
d.delete
|
49
84
|
end
|
50
85
|
=end
|
86
|
+
=begin
|
87
|
+
=end
|
51
88
|
|
52
89
|
|
90
|
+
def hamster_carc?
|
91
|
+
assert_kind_of OpenTox::Dataset, @dataset
|
92
|
+
#require 'yaml'
|
93
|
+
#puts @dataset.data_entries.to_yaml
|
94
|
+
assert_equal 85, @dataset.data_entries.size
|
95
|
+
assert_equal 85, @dataset.compounds.size
|
96
|
+
assert_equal 1, @dataset.features.size
|
97
|
+
assert_equal @dataset.uri, @dataset[RDF::XSD.anyURI]
|
98
|
+
end
|
53
99
|
end
|
data/test/feature.rb
CHANGED
@@ -16,8 +16,8 @@ class FeatureTest < Test::Unit::TestCase
|
|
16
16
|
def test_feature
|
17
17
|
@features.each do |uri|
|
18
18
|
f = OpenTox::Feature.new(uri)
|
19
|
-
assert_equal
|
20
|
-
assert_equal RDF::OT1.TUM_CDK_nAtom, f.metadata[RDF::OWL.sameAs].first
|
19
|
+
assert_equal RDF::OT1.TUM_CDK_nAtom, f[RDF::OWL.sameAs]
|
20
|
+
assert_equal RDF::OT1.TUM_CDK_nAtom, f.metadata[RDF::OWL.sameAs].first.to_s
|
21
21
|
assert_equal [RDF::OT1.Feature,RDF::OT1.NumericFeature].sort, f[RDF.type].sort
|
22
22
|
end
|
23
23
|
end
|
data/test/policy.rb
ADDED
@@ -0,0 +1,120 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
$LOAD_PATH << File.join(File.dirname(__FILE__),'..','lib')
|
3
|
+
require File.expand_path(File.join(File.dirname(__FILE__),'..','lib','opentox-client.rb'))
|
4
|
+
|
5
|
+
TEST_URI = "http://only_a_test/test/" + rand(1000000).to_s
|
6
|
+
USER_TYPE = "LDAPUsers"
|
7
|
+
USER_VALUE = "uid=guest,ou=people,dc=opentox,dc=org"
|
8
|
+
USER_GROUP = "member"
|
9
|
+
GROUP_TYPE = "LDAPGroups"
|
10
|
+
GROUP_VALUE = "cn=member,ou=groups,dc=opentox,dc=org"
|
11
|
+
POLICY_NAME = "test_policy_#{rand(100000)}"
|
12
|
+
RULE_NAME = "test_rule_#{rand(100000)}"
|
13
|
+
SUBJECT_NAME = "test_subject_#{rand(100000)}"
|
14
|
+
|
15
|
+
AA ||= "https://opensso.in-silico.ch"
|
16
|
+
AA_USER = "guest"
|
17
|
+
AA_PASS = "guest"
|
18
|
+
|
19
|
+
@@subjectid = OpenTox::Authorization.authenticate(AA_USER,AA_PASS)
|
20
|
+
|
21
|
+
class PolicyTest < Test::Unit::TestCase
|
22
|
+
|
23
|
+
def test_01_class
|
24
|
+
policies = OpenTox::Policies.new()
|
25
|
+
assert_equal(policies.class, OpenTox::Policies)
|
26
|
+
assert_kind_of Array, policies.names
|
27
|
+
assert_kind_of Array, policies.uris
|
28
|
+
assert_kind_of Array, policies.names
|
29
|
+
end
|
30
|
+
|
31
|
+
def test_02_subclasses
|
32
|
+
policies = OpenTox::Policies.new()
|
33
|
+
policies.new_policy(POLICY_NAME)
|
34
|
+
assert_equal(policies.names[0], POLICY_NAME)
|
35
|
+
assert_equal(policies.policies[policies.names[0]].class, OpenTox::Policy)
|
36
|
+
policy = policies.policies[policies.names[0]]
|
37
|
+
policy.rule.name = RULE_NAME
|
38
|
+
policy.uri = TEST_URI
|
39
|
+
assert_equal(policy.rule.class, OpenTox::Policy::Rule)
|
40
|
+
assert_equal(policy.rule.name, RULE_NAME)
|
41
|
+
assert_equal(policy.rule.uri, TEST_URI)
|
42
|
+
assert_equal(policy.uri, TEST_URI)
|
43
|
+
policy.subject.name = SUBJECT_NAME
|
44
|
+
policy.type = USER_TYPE
|
45
|
+
policy.value = USER_VALUE
|
46
|
+
assert_equal(policy.subject.class, OpenTox::Policy::Subject)
|
47
|
+
assert_equal(policy.subject.name, SUBJECT_NAME)
|
48
|
+
assert_equal(policy.subject.type, USER_TYPE)
|
49
|
+
assert_equal(policy.type, USER_TYPE)
|
50
|
+
assert_equal(policy.subject.value, USER_VALUE)
|
51
|
+
assert_equal(policy.value, USER_VALUE)
|
52
|
+
end
|
53
|
+
|
54
|
+
def test_03_read_readwrite
|
55
|
+
policies = OpenTox::Policies.new()
|
56
|
+
policies.new_policy(POLICY_NAME)
|
57
|
+
policy = policies.policies[policies.names[0]]
|
58
|
+
policy.rule.name = RULE_NAME
|
59
|
+
policy.uri = TEST_URI
|
60
|
+
policy.rule.get = "allow"
|
61
|
+
assert policy.rule.read
|
62
|
+
assert !policy.rule.readwrite
|
63
|
+
policy.rule.post = "allow"
|
64
|
+
policy.rule.put = "allow"
|
65
|
+
assert !policy.rule.read
|
66
|
+
assert policy.rule.readwrite
|
67
|
+
end
|
68
|
+
|
69
|
+
def test_04_group_user
|
70
|
+
policies = OpenTox::Policies.new()
|
71
|
+
policies.load_default_policy(AA_USER, TEST_URI, "member")
|
72
|
+
assert_equal "member", policies.policies["policy_group"].group
|
73
|
+
assert_equal AA_USER, policies.policies["policy_user"].user
|
74
|
+
end
|
75
|
+
|
76
|
+
def test_05_DN
|
77
|
+
policies = OpenTox::Policies.new()
|
78
|
+
policies.new_policy(POLICY_NAME)
|
79
|
+
policy = policies.policies[policies.names[0]]
|
80
|
+
policy.set_ot_user(AA_USER)
|
81
|
+
assert_equal USER_VALUE, policy.value
|
82
|
+
assert_equal USER_TYPE, policy.type
|
83
|
+
policy.set_ot_group(USER_GROUP)
|
84
|
+
assert_equal GROUP_VALUE, policy.value
|
85
|
+
assert_equal GROUP_TYPE, policy.type
|
86
|
+
end
|
87
|
+
|
88
|
+
def test_06_load_xml_and_check_defaults
|
89
|
+
policies = OpenTox::Policies.new()
|
90
|
+
xml = File.read(File.join(File.dirname(__FILE__), "../lib/templates/default_policy.xml"))
|
91
|
+
policies.load_xml(xml)
|
92
|
+
# check user policy
|
93
|
+
policy = policies.policies["policy_user"]
|
94
|
+
assert policy.name == "policy_user"
|
95
|
+
assert policy.rule.name == "rule_user"
|
96
|
+
assert policy.rule.uri == "uri"
|
97
|
+
assert policy.rule.get == "allow"
|
98
|
+
assert policy.rule.post == "allow"
|
99
|
+
assert policy.rule.delete == "allow"
|
100
|
+
assert policy.rule.put == "allow"
|
101
|
+
assert policy.subject_group == "subjects_user"
|
102
|
+
assert policy.subject.name == "subject_user"
|
103
|
+
assert policy.subject.type == USER_TYPE
|
104
|
+
assert policy.subject.value == USER_VALUE
|
105
|
+
# check group policy
|
106
|
+
policy = policies.policies["policy_group"]
|
107
|
+
assert policy.name == "policy_group"
|
108
|
+
assert policy.rule.name == "rule_group"
|
109
|
+
assert policy.rule.uri == "uri"
|
110
|
+
assert policy.rule.get == "allow"
|
111
|
+
assert !policy.rule.post
|
112
|
+
assert !policy.rule.delete
|
113
|
+
assert !policy.rule.put
|
114
|
+
assert policy.subject_group == "subjects_group"
|
115
|
+
assert policy.subject.name == "subject_group"
|
116
|
+
assert policy.subject.type == GROUP_TYPE
|
117
|
+
assert policy.subject.value == GROUP_VALUE
|
118
|
+
end
|
119
|
+
|
120
|
+
end
|
data/test/task.rb
CHANGED
@@ -17,7 +17,7 @@ class TaskTest < Test::Unit::TestCase
|
|
17
17
|
assert_equal Array, all.class
|
18
18
|
t = all.last
|
19
19
|
assert_equal OpenTox::Task, t.class
|
20
|
-
assert_equal RDF::OT1.Task, t[RDF.type]
|
20
|
+
assert_equal RDF::OT1.Task, t[RDF.type]
|
21
21
|
end
|
22
22
|
|
23
23
|
def test_create_and_complete
|
@@ -46,7 +46,7 @@ class TaskTest < Test::Unit::TestCase
|
|
46
46
|
|
47
47
|
def test_create_and_fail
|
48
48
|
task = OpenTox::Task.create TASK_SERVICE_URI, :description => "test failure", :creator => "http://test.org/fake_creator" do
|
49
|
-
sleep
|
49
|
+
sleep 1
|
50
50
|
raise "A runtime error occured"
|
51
51
|
end
|
52
52
|
assert task.running?
|
@@ -58,7 +58,7 @@ class TaskTest < Test::Unit::TestCase
|
|
58
58
|
|
59
59
|
def test_create_and_fail_with_opentox_error
|
60
60
|
task = OpenTox::Task.create TASK_SERVICE_URI, :description => "test failure", :creator => "http://test.org/fake_creator" do
|
61
|
-
sleep
|
61
|
+
sleep 1
|
62
62
|
raise OpenTox::Error.new 500, "An OpenTox::Error occured"
|
63
63
|
end
|
64
64
|
assert task.running?
|
@@ -68,9 +68,10 @@ class TaskTest < Test::Unit::TestCase
|
|
68
68
|
assert_equal "Error", task.hasStatus
|
69
69
|
end
|
70
70
|
|
71
|
+
=begin
|
71
72
|
def test_wrong_result_uri
|
72
73
|
task = OpenTox::Task.create TASK_SERVICE_URI, :description => "test wrong result uri", :creator => "http://test.org/fake_creator" do
|
73
|
-
sleep
|
74
|
+
sleep 1
|
74
75
|
"Asasadasd"
|
75
76
|
end
|
76
77
|
assert task.running?
|
@@ -79,7 +80,6 @@ class TaskTest < Test::Unit::TestCase
|
|
79
80
|
assert task.error?
|
80
81
|
assert_equal "Error", task.hasStatus
|
81
82
|
end
|
82
|
-
=begin
|
83
83
|
=end
|
84
84
|
|
85
85
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opentox-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2pre
|
5
5
|
prerelease: 5
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-04-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
16
|
-
requirement: &
|
16
|
+
requirement: &76175050 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *76175050
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rest-client
|
27
|
-
requirement: &
|
27
|
+
requirement: &76185830 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *76185830
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rdf
|
38
|
-
requirement: &
|
38
|
+
requirement: &76706430 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *76706430
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rdf-raptor
|
49
|
-
requirement: &
|
49
|
+
requirement: &76705970 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *76705970
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: open4
|
60
|
-
requirement: &
|
60
|
+
requirement: &76705540 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *76705540
|
69
69
|
description: Ruby wrapper for the OpenTox REST API (http://www.opentox.org)
|
70
70
|
email:
|
71
71
|
- helma@in-silico.ch
|
@@ -94,6 +94,7 @@ files:
|
|
94
94
|
- lib/templates/default_guest_policy.xml
|
95
95
|
- lib/templates/default_policy.xml
|
96
96
|
- opentox-client.gemspec
|
97
|
+
- test/authorization.rb
|
97
98
|
- test/compound.rb
|
98
99
|
- test/data/CPDBAS_v5c_1547_29Apr2008part.sdf
|
99
100
|
- test/data/EPAFHM.csv
|
@@ -112,11 +113,13 @@ files:
|
|
112
113
|
- test/dataset.rb
|
113
114
|
- test/error.rb
|
114
115
|
- test/feature.rb
|
116
|
+
- test/policy.rb
|
115
117
|
- test/task.rb
|
116
118
|
homepage: http://github.com/opentox/opentox-client
|
117
119
|
licenses:
|
118
120
|
- GPL-3
|
119
|
-
post_install_message:
|
121
|
+
post_install_message: Please check the version of your libraptor library, if installation
|
122
|
+
of rdf.rb fails
|
120
123
|
rdoc_options: []
|
121
124
|
require_paths:
|
122
125
|
- lib
|
@@ -128,14 +131,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
128
131
|
version: '0'
|
129
132
|
segments:
|
130
133
|
- 0
|
131
|
-
hash: -
|
134
|
+
hash: -571051053
|
132
135
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
133
136
|
none: false
|
134
137
|
requirements:
|
135
138
|
- - ! '>'
|
136
139
|
- !ruby/object:Gem::Version
|
137
140
|
version: 1.3.1
|
138
|
-
requirements:
|
141
|
+
requirements:
|
142
|
+
- libraptor-dev
|
139
143
|
rubyforge_project: opentox-client
|
140
144
|
rubygems_version: 1.8.11
|
141
145
|
signing_key:
|