|
1 | 1 | # Test methods with long descriptive names can omit docstrings |
2 | 2 | # pylint: disable=missing-docstring |
| 3 | +import unittest |
3 | 4 | from unittest.mock import patch |
4 | 5 |
|
5 | 6 | import numpy as np |
@@ -164,3 +165,39 @@ def test_too_many_labels(self): |
164 | 165 |
|
165 | 166 | self.widget.graph.too_many_labels.emit(False) |
166 | 167 | self.assertFalse(w.is_shown()) |
| 168 | + |
| 169 | + def test_invalid_subset(self): |
| 170 | + widget = self.widget |
| 171 | + |
| 172 | + data = Table("iris") |
| 173 | + self.send_signal(widget.Inputs.data_subset, data[40:60]) |
| 174 | + self.assertFalse(widget.Warning.subset_independent.is_shown()) |
| 175 | + self.assertFalse(widget.Warning.subset_not_subset.is_shown()) |
| 176 | + |
| 177 | + self.send_signal(widget.Inputs.data, data[30:70]) |
| 178 | + self.assertFalse(widget.Warning.subset_independent.is_shown()) |
| 179 | + self.assertFalse(widget.Warning.subset_not_subset.is_shown()) |
| 180 | + |
| 181 | + self.send_signal(widget.Inputs.data, data[30:50]) |
| 182 | + self.assertFalse(widget.Warning.subset_independent.is_shown()) |
| 183 | + self.assertTrue(widget.Warning.subset_not_subset.is_shown()) |
| 184 | + |
| 185 | + self.send_signal(widget.Inputs.data, data[20:30]) |
| 186 | + self.assertTrue(widget.Warning.subset_independent.is_shown()) |
| 187 | + self.assertFalse(widget.Warning.subset_not_subset.is_shown()) |
| 188 | + |
| 189 | + self.send_signal(widget.Inputs.data, data[30:70]) |
| 190 | + self.assertFalse(widget.Warning.subset_independent.is_shown()) |
| 191 | + self.assertFalse(widget.Warning.subset_not_subset.is_shown()) |
| 192 | + |
| 193 | + self.send_signal(widget.Inputs.data, data[30:50]) |
| 194 | + self.assertFalse(widget.Warning.subset_independent.is_shown()) |
| 195 | + self.assertTrue(widget.Warning.subset_not_subset.is_shown()) |
| 196 | + |
| 197 | + self.send_signals([(widget.Inputs.data, Table("titanic")), |
| 198 | + (widget.Inputs.data_subset, None)]) |
| 199 | + self.assertFalse(widget.Warning.subset_independent.is_shown()) |
| 200 | + self.assertFalse(widget.Warning.subset_not_subset.is_shown()) |
| 201 | + |
| 202 | +if __name__ == "__main__": |
| 203 | + unittest.main() |
0 commit comments