(self)
| 182 | bool_numpy_instance_data = instance_data[bool_numpy] |
| 183 | |
| 184 | def test_cat(self): |
| 185 | instance_data_1 = self.setup_data() |
| 186 | instance_data_2 = self.setup_data() |
| 187 | cat_instance_data = InstanceData.cat( |
| 188 | [instance_data_1, instance_data_2]) |
| 189 | assert len(cat_instance_data) == 10 |
| 190 | |
| 191 | # All inputs must be InstanceData |
| 192 | instance_data_2 = BaseDataElement( |
| 193 | bboxes=torch.rand((5, 4)), labels=torch.rand((5, ))) |
| 194 | with self.assertRaises(AssertionError): |
| 195 | InstanceData.cat([instance_data_1, instance_data_2]) |
| 196 | |
| 197 | # Input List length must be greater than 0 |
| 198 | with self.assertRaises(AssertionError): |
| 199 | InstanceData.cat([]) |
| 200 | instance_data_2 = instance_data_1.clone() |
| 201 | instance_data_2 = instance_data_2[torch.zeros(5) > 0.5] |
| 202 | cat_instance_data = InstanceData.cat( |
| 203 | [instance_data_1, instance_data_2]) |
| 204 | cat_instance_data = InstanceData.cat([instance_data_1]) |
| 205 | assert len(cat_instance_data) == 5 |
| 206 | |
| 207 | # test custom data cat |
| 208 | instance_data_1.polygons = TmpObjectWithoutCat( |
| 209 | np.arange(25).reshape((5, -1)).tolist()) |
| 210 | instance_data_2 = instance_data_1.clone() |
| 211 | with pytest.raises( |
| 212 | ValueError, |
| 213 | match=('The type of `polygons` is ' |
| 214 | f'`{type(instance_data_1.polygons)}` ' |
| 215 | 'which has no attribute of `cat`')): |
| 216 | cat_instance_data = InstanceData.cat( |
| 217 | [instance_data_1, instance_data_2]) |
| 218 | |
| 219 | def test_len(self): |
| 220 | instance_data = self.setup_data() |
nothing calls this directly
no test coverage detected