summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormguetlein <martin.guetlein@gmail.com>2011-01-28 13:24:58 +0100
committermguetlein <martin.guetlein@gmail.com>2011-01-28 13:24:58 +0100
commitd3336b01ad57209a4b9cb3677c798d97e6c80ec7 (patch)
tree70065d7c02d1b285f8e68a266907475eb8eb03f9
parent4466015d27af0a5424953eb7f1502994d73027cf (diff)
repaired test_examples with subjectid
-rwxr-xr-xtest/test_application.rb9
-rwxr-xr-xtest/test_examples_util.rb45
-rwxr-xr-xvalidation/validation_test.rb7
3 files changed, 34 insertions, 27 deletions
diff --git a/test/test_application.rb b/test/test_application.rb
index c6c7963..e59bf3a 100755
--- a/test/test_application.rb
+++ b/test/test_application.rb
@@ -5,13 +5,18 @@ post '/test_validation/?' do
task = OpenTox::Task.create("Test validation",url_for("/test_validation",:full)) do #,params
v = validationExamples[0][0]
ex = v.new
+ ex.subjectid = @subjectid
ex.upload_files
ex.check_requirements
ex.validate
raise ex.validation_error if ex.validation_error
- ex.report if params[:report]
+ ex.report unless params[:report]=="false"
raise ex.report_error if ex.report_error
- ex.validation_uri + (params[:report] ? ","+ex.report_uri : "")
+ if ex.report_uri
+ ex.report_uri
+ else
+ ex.validation_uri
+ end
end
task.uri
end
diff --git a/test/test_examples_util.rb b/test/test_examples_util.rb
index c465d94..492b497 100755
--- a/test/test_examples_util.rb
+++ b/test/test_examples_util.rb
@@ -6,7 +6,7 @@ module ValidationExamples
@@dataset_uris = {}
@@prediction_features = {}
- def self.upload_dataset(file, dataset_service=CONFIG[:services]["opentox-dataset"]) #, file_type="application/x-yaml")
+ def self.upload_dataset(file, subjectid=nil, dataset_service=CONFIG[:services]["opentox-dataset"]) #, file_type="application/x-yaml")
raise "File not found: "+file.path.to_s unless File.exist?(file.path)
if @@dataset_uris[file.path.to_s]==nil
LOGGER.debug "uploading file: "+file.path.to_s
@@ -15,12 +15,12 @@ module ValidationExamples
#data_uri = OpenTox::RestClientWrapper.post(dataset_service,{:content_type => file_type},data).to_s.chomp
#@@dataset_uris[file.path.to_s] = data_uri
#LOGGER.debug "uploaded dataset: "+data_uri
- d = OpenTox::Dataset.create(CONFIG[:services]["opentox-dataset"], SUBJECTID)
+ d = OpenTox::Dataset.create(CONFIG[:services]["opentox-dataset"], subjectid)
d.load_yaml(data)
- d.save( SUBJECTID )
+ d.save( subjectid )
@@dataset_uris[file.path.to_s] = d.uri
elsif (file.path =~ /csv$/)
- d = OpenTox::Dataset.create_from_csv_file(file.path, SUBJECTID)
+ d = OpenTox::Dataset.create_from_csv_file(file.path, subjectid)
raise "num features not 1 (="+d.features.keys.size.to_s+"), what to predict??" if d.features.keys.size != 1
@@prediction_features[file.path.to_s] = d.features.keys[0]
@@dataset_uris[file.path.to_s] = d.uri
@@ -38,7 +38,7 @@ module ValidationExamples
@@prediction_features[file.path.to_s]
end
- def self.build_compare_report(validation_examples)
+ def self.build_compare_report(validation_examples, subjectid)
@comp = validation_examples[0].algorithm_uri==nil ? :model_uri : :algorithm_uri
return nil if @comp == :model_uri
@@ -48,15 +48,15 @@ module ValidationExamples
end
return nil if to_compare.size < 2
begin
- return validation_post "report/algorithm_comparison",{ :validation_uris => to_compare.join("\n") }
+ return validation_post "report/algorithm_comparison",{ :validation_uris => to_compare.join("\n") }, subjectid
rescue => ex
return "error creating comparison report "+ex.message
end
end
- def self.validation_post(uri, params)
+ def self.validation_post(uri, params, subjectid )
- params[:subjectid] = SUBJECTID if SUBJECTID and params[:subjectid]==nil
+ params[:subjectid] = subjectid if subjectid
if $test_case
$test_case.post uri,params
return wait($test_case.last_response.body)
@@ -65,9 +65,9 @@ module ValidationExamples
end
end
- def self.validation_get(uri, accept_header='application/rdf+xml')
+ def self.validation_get(uri, subjectid, accept_header='application/rdf+xml')
params = {}
- params[:subjectid] = SUBJECTID if SUBJECTID
+ params[:subjectid] = subjectid if subjectid
if $test_case
#puts "getting "+uri+","+accept_header
$test_case.get uri,params,'HTTP_ACCEPT' => accept_header
@@ -232,13 +232,14 @@ module ValidationExamples
:split_ratio,
:random_seed,
:num_folds,
- :stratified
+ :stratified,
+ :subjectid
#results
attr_accessor :validation_uri,
:report_uri,
:validation_error,
:report_error
-
+
def upload_files
[[:test_dataset_uri, :test_dataset_file],
[:test_target_dataset_uri, :test_target_dataset_file],
@@ -247,7 +248,7 @@ module ValidationExamples
uri = a[0]
file = a[1]
if send(uri)==nil and send(file)!=nil
- dataset_uri = Util.upload_dataset(send(file))
+ dataset_uri = Util.upload_dataset(send(file), @subjectid)
send("#{uri.to_s}=".to_sym, dataset_uri)
@uploaded_datasets = [] unless @uploaded_datasets
@uploaded_datasets << dataset_uri
@@ -293,8 +294,8 @@ module ValidationExamples
def report
begin
- @report_uri = Util.validation_post '/report/'+report_type,{:validation_uris => @validation_uri}
- Util.validation_get "/report/"+report_uri.split("/")[-2]+"/"+report_uri.split("/")[-1]
+ @report_uri = Util.validation_post '/report/'+report_type,{:validation_uris => @validation_uri}, @subjectid
+ Util.validation_get "/report/"+report_uri.split("/")[-2]+"/"+report_uri.split("/")[-1], @subjectid
rescue => ex
puts "could not create report: "+ex.message
raise ex
@@ -304,7 +305,7 @@ module ValidationExamples
def validate
begin
- @validation_uri = Util.validation_post '/'+validation_type, get_params
+ @validation_uri = Util.validation_post '/'+validation_type, get_params, @subjectid
rescue => ex
puts "could not validate: "+ex.message
@validation_error = ex.message
@@ -314,15 +315,15 @@ module ValidationExamples
def compare_yaml_vs_rdf
if @validation_uri
- yaml = YAML.load(Util.validation_get(@validation_uri.split("/")[-1],'application/x-yaml'))
- owl = OpenTox::Owl.from_data(Util.validation_get(@validation_uri.split("/")[-1]),@validation_uri,"Validation")
+ yaml = YAML.load(Util.validation_get(@validation_uri.split("/")[-1],@subjectid,'application/x-yaml'))
+ owl = OpenTox::Owl.from_data(Util.validation_get(@validation_uri.split("/")[-1],@subjectid),@validation_uri,"Validation")
Util.compare_yaml_and_owl(yaml,owl)
end
if @report_uri
- yaml = YAML.load(Util.validation_get(@report_uri.split("/")[-3..-1].join("/"),'application/x-yaml'))
- owl = OpenTox::Owl.from_data(Util.validation_get(@report_uri.split("/")[-3..-1].join("/")),@report_uri,"ValidationReport")
+ yaml = YAML.load(Util.validation_get(@report_uri.split("/")[-3..-1].join("/"),@subjectid,'application/x-yaml'))
+ owl = OpenTox::Owl.from_data(Util.validation_get(@report_uri.split("/")[-3..-1].join("/"),@subjectid),@report_uri,"ValidationReport")
Util.compare_yaml_and_owl(yaml,owl)
- Util.validation_get(@report_uri.split("/")[-3..-1].join("/"),'text/html')
+ Util.validation_get(@report_uri.split("/")[-3..-1].join("/"),@subjectid,'text/html')
else
puts "no report"
end
@@ -336,7 +337,7 @@ module ValidationExamples
Util.validation_get("crossvalidation/"+@validation_uri.split("/")[-1]+"/statistics",'application/x-yaml')
Util.verify_validation(Util.validation_get("crossvalidation/"+@validation_uri.split("/")[-1]+"/statistics",'application/x-yaml'))
else
- Util.verify_validation(Util.validation_get(@validation_uri.split("/")[-1],'application/x-yaml'))
+ Util.verify_validation(Util.validation_get(@validation_uri.split("/")[-1],@subjectid,'application/x-yaml'))
end
end
diff --git a/validation/validation_test.rb b/validation/validation_test.rb
index c368747..b77f32f 100755
--- a/validation/validation_test.rb
+++ b/validation/validation_test.rb
@@ -140,7 +140,7 @@ class ValidationTest < Test::Unit::TestCase
#puts OpenTox::Authorization.list_policy_uris(SUBJECTID).inspect
- run_test("15a",nil,nil,false) #,{:dataset_uri=>"http://local-ot/dataset/45", :prediction_feature => "http://local-ot/dataset/45/feature/Hamster%20Carcinogenicity"})
+ run_test("1b",nil,nil,false) #,{:dataset_uri=>"http://local-ot/dataset/45", :prediction_feature => "http://local-ot/dataset/45/feature/Hamster%20Carcinogenicity"})
#get "/12123123123123123"
#get "/chain"
@@ -176,7 +176,7 @@ class ValidationTest < Test::Unit::TestCase
#do_test_examples_ortona
ensure
- #OpenTox::Authorization.logout(SUBJECTID) if AA_SERVER
+ OpenTox::Authorization.logout(SUBJECTID) if AA_SERVER
end
end
@@ -195,6 +195,7 @@ class ValidationTest < Test::Unit::TestCase
validationExamples.each do |vv|
vv.each do |v|
ex = v.new
+ ex.subjectid = SUBJECTID
ex.validation_uri = validation_uri
overwrite.each do |k,v|
@@ -206,7 +207,7 @@ class ValidationTest < Test::Unit::TestCase
ex.check_requirements
ex.validate
LOGGER.debug "validation done '"+ex.validation_uri.to_s+"'"
- puts ex.validation_uri+"?subjectid="+CGI.escape(SUBJECTID) if SUBJECTID and !delete
+ puts ex.validation_uri+"?subjectid="+CGI.escape(SUBJECTID) if SUBJECTID and !delete
end
ex.report_uri = report_uri
unless ex.report_uri