summaryrefslogtreecommitdiff
path: root/test/prediction_models.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/prediction_models.rb')
-rw-r--r--test/prediction_models.rb23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/prediction_models.rb b/test/prediction_models.rb
new file mode 100644
index 0000000..b4ad415
--- /dev/null
+++ b/test/prediction_models.rb
@@ -0,0 +1,23 @@
+require_relative "setup.rb"
+
+class PredictionModelTest < MiniTest::Test
+
+ def test_prediction_model
+ dataset = Dataset.from_csv_file "#{DATA_DIR}/hamster_carcinogenicity.csv"
+ model = Model::LazarFminerClassification.create dataset
+ cv = ClassificationCrossValidation.create model
+ metadata = JSON.parse(File.read("#{DATA_DIR}/hamster_carcinogenicity.json"))
+
+ metadata[:model_id] = model.id
+ metadata[:crossvalidation_id] = cv.id
+ pm = Model::Prediction.new(metadata)
+ pm.save
+ [:endpoint,:species,:source].each do |p|
+ refute_empty pm[p]
+ end
+ assert pm.crossvalidation.accuracy > 0.8
+ prediction = pm.predict Compound.from_smiles("CCCC(NN)C")
+ assert_equal "true", prediction[:value]
+ pm.delete
+ end
+end