From 1365f9e0fb2bec61ac8a8ed580eedac9cc5552ac Mon Sep 17 00:00:00 2001 From: Christoph Helma Date: Thu, 10 Mar 2011 15:51:46 +0100 Subject: tests passing for tag v1.0.0 --- lazar.rb | 81 ++++++++++++++++++++++++++++++---------------------------------- 1 file changed, 38 insertions(+), 43 deletions(-) diff --git a/lazar.rb b/lazar.rb index d4cdc36..1eb7645 100644 --- a/lazar.rb +++ b/lazar.rb @@ -8,67 +8,62 @@ class Float end end -class LazarTest < Test::Unit::TestCase +class LazarRegressionTest < Test::Unit::TestCase =begin =end def test_create_regression_model model_uri = OpenTox::Algorithm::Lazar.new.run({:dataset_uri => @@regression_training_dataset.uri, :subjectid => @@subjectid}).to_s - lazar = OpenTox::Model::Lazar.find model_uri, @@subjectid - assert_equal 225, lazar.features.size + @lazar = OpenTox::Model::Lazar.find model_uri, @@subjectid + assert_equal 225, @lazar.features.size compound = OpenTox::Compound.from_smiles("c1ccccc1NN") - #puts lazar.uri - #puts compound.inspect - #puts "prediction" - #puts prediction.value(compound).inspect - prediction_uri = lazar.run(:compound_uri => compound.uri, :subjectid => @@subjectid) - #puts prediction_uri - prediction = OpenTox::LazarPrediction.find(prediction_uri, @@subjectid) - assert_equal prediction.value(compound).round_to(4), 0.1618.round_to(4) - assert_equal prediction.confidence(compound).round_to(4), 0.6114.round_to(4) - assert_equal prediction.neighbors(compound).size, 81 - prediction.delete(@@subjectid) - lazar.delete(@@subjectid) + prediction_uri = @lazar.run(:compound_uri => compound.uri, :subjectid => @@subjectid).to_s + @prediction = OpenTox::LazarPrediction.find(prediction_uri, @@subjectid) + assert_equal @prediction.value(compound).round_to(4), 0.1618.round_to(4) + assert_equal @prediction.confidence(compound).round_to(4), 0.6114.round_to(4) + assert_equal @prediction.neighbors(compound).size, 81 + @prediction.delete(@@subjectid) + @lazar.delete(@@subjectid) end +end + +class LazarClassificationTest < Test::Unit::TestCase + def test_classification_model - def test_default_classification_model # create model model_uri = OpenTox::Algorithm::Lazar.new.run({:dataset_uri => @@classification_training_dataset.uri, :subjectid => @@subjectid}).to_s - lazar = OpenTox::Model::Lazar.find model_uri, @@subjectid - assert_equal lazar.features.size, 41 + @lazar = OpenTox::Model::Lazar.find model_uri, @@subjectid + assert_equal @lazar.features.size, 41 # single prediction compound = OpenTox::Compound.from_smiles("c1ccccc1NN") - prediction_uri = lazar.run(:compound_uri => compound.uri, :subjectid => @@subjectid) - #puts prediction_uri - prediction = OpenTox::LazarPrediction.find(prediction_uri, @@subjectid) - puts prediction.inspect - assert_equal prediction.value(compound), false - assert_equal prediction.confidence(compound).round_to(4), 0.3005.round_to(4) - assert_equal prediction.neighbors(compound).size, 15 - prediction.delete(@@subjectid) + prediction_uri = @lazar.run(:compound_uri => compound.uri, :subjectid => @@subjectid) + @prediction = OpenTox::LazarPrediction.find(prediction_uri, @@subjectid) + assert_equal @prediction.value(compound), false + assert_equal @prediction.confidence(compound).round_to(4), 0.3005.round_to(4) + assert_equal @prediction.neighbors(compound).size, 15 + @prediction.delete(@@subjectid) + # dataset activity compound = OpenTox::Compound.from_smiles("CNN") - prediction_uri = lazar.run(:compound_uri => compound.uri, :subjectid => @@subjectid) - prediction = OpenTox::LazarPrediction.find prediction_uri, @@subjectid - assert !prediction.measured_activities(compound).empty? - #puts prediction.measured_activities(compound).first.inspect - assert_equal prediction.measured_activities(compound).first, true - assert prediction.value(compound).nil? - prediction.delete(@@subjectid) + prediction_uri = @lazar.run(:compound_uri => compound.uri, :subjectid => @@subjectid) + @prediction = OpenTox::LazarPrediction.find prediction_uri, @@subjectid + assert !@prediction.measured_activities(compound).empty? + assert_equal @prediction.measured_activities(compound).first, true + assert @prediction.value(compound).nil? + @prediction.delete(@@subjectid) + # dataset prediction test_dataset = OpenTox::Dataset.create_from_csv_file("data/multicolumn.csv", @@subjectid) - prediction = OpenTox::LazarPrediction.find lazar.run(:dataset_uri => test_dataset.uri, :subjectid => @@subjectid), @@subjectid - assert_equal prediction.compounds.size, 4 - compound = OpenTox::Compound.new prediction.compounds.first - #puts "compound" - #puts compound.inspect - #puts prediction.value(compound).inspect - assert_equal prediction.value(compound), false - prediction.delete(@@subjectid) - lazar.delete(@@subjectid) + @prediction = OpenTox::LazarPrediction.find @lazar.run(:dataset_uri => test_dataset.uri, :subjectid => @@subjectid), @@subjectid + assert_equal @prediction.compounds.size, 4 + compound = OpenTox::Compound.new "http://ot-dev.in-silico.ch/compound/InChI=1S/C15H13NO/c1-10(17)16-13-6-7-15-12(9-13)8-11-4-2-3-5-14(11)15/h2-7,9H,8H2,1H3,(H,16,17)" + assert_equal @prediction.value(compound), nil + assert_equal @prediction.measured_activities(compound).first, true + @prediction.delete(@@subjectid) + @lazar.delete(@@subjectid) end + =begin =end - end -- cgit v1.2.3