Skip to content

Commit d9ad597

Browse files
OWAdaBoost: Fix tests for learners that do not support sample weights
1 parent 41ddd60 commit d9ad597

File tree

2 files changed

+22
-5
lines changed

2 files changed

+22
-5
lines changed

Orange/widgets/classify/tests/test_owadaboostclassification.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# Test methods with long descriptive names can omit docstrings
22
# pylint: disable=missing-docstring
3-
from Orange.classification import SklTreeLearner, KNNLearner
3+
from Orange.classification import KNNLearner
4+
from Orange.classification import RandomForestLearner
5+
from Orange.classification import SklTreeLearner
46
from Orange.widgets.classify.owadaboost import OWAdaBoostClassification
57
from Orange.widgets.tests.base import (WidgetTest, WidgetLearnerTestMixin,
68
ParameterMapping)
@@ -30,10 +32,16 @@ def test_input_learner(self):
3032
output_base_est = self.get_output("Learner").params.get("base_estimator")
3133
self.assertEqual(output_base_est.max_depth, max_depth)
3234

35+
def test_input_learner_that_does_not_support_sample_weights(self):
36+
self.send_signal("Learner", KNNLearner())
37+
self.assertNotIsInstance(self.widget.base_estimator, KNNLearner)
38+
self.assertEqual(
39+
self.widget.base_estimator, self.widget.DEFAULT_BASE_ESTIMATOR)
40+
3341
def test_input_learner_disconnect(self):
3442
"""Check base learner after disconnecting learner on the input"""
35-
self.send_signal("Learner", KNNLearner())
36-
self.assertIsInstance(self.widget.base_estimator, KNNLearner)
43+
self.send_signal("Learner", RandomForestLearner())
44+
self.assertIsInstance(self.widget.base_estimator, RandomForestLearner)
3745
self.send_signal("Learner", None)
3846
self.assertEqual(self.widget.base_estimator,
3947
self.widget.DEFAULT_BASE_ESTIMATOR)

Orange/widgets/regression/tests/test_owadaboostregression.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# Test methods with long descriptive names can omit docstrings
22
# pylint: disable=missing-docstring
3+
from Orange.regression import RandomForestRegressionLearner
34
from Orange.regression import SklTreeRegressionLearner, KNNRegressionLearner
45
from Orange.widgets.regression.owadaboostregression import OWAdaBoostRegression
56
from Orange.widgets.tests.base import (WidgetTest, WidgetLearnerTestMixin,
@@ -31,10 +32,18 @@ def test_input_learner(self):
3132
output_base_est = self.get_output("Learner").params.get("base_estimator")
3233
self.assertEqual(output_base_est.max_depth, max_depth)
3334

35+
def test_input_learner_that_does_not_support_sample_weights(self):
36+
self.send_signal("Learner", KNNRegressionLearner())
37+
self.assertNotIsInstance(
38+
self.widget.base_estimator, KNNRegressionLearner)
39+
self.assertEqual(
40+
self.widget.base_estimator, self.widget.DEFAULT_BASE_ESTIMATOR)
41+
3442
def test_input_learner_disconnect(self):
3543
"""Check base learner after disconnecting learner on the input"""
36-
self.send_signal("Learner", KNNRegressionLearner())
37-
self.assertIsInstance(self.widget.base_estimator, KNNRegressionLearner)
44+
self.send_signal("Learner", RandomForestRegressionLearner())
45+
self.assertIsInstance(
46+
self.widget.base_estimator, RandomForestRegressionLearner)
3847
self.send_signal("Learner", None)
3948
self.assertEqual(self.widget.base_estimator,
4049
self.widget.DEFAULT_BASE_ESTIMATOR)

0 commit comments

Comments
 (0)