def test__can_cast_to_float32__float32_is_false(self, mock_log_warning): array_to_convert = Series(data=[1, 2, 3], dtype=np.dtype(np.float32)) can_cast = can_cast_to_float32(array_to_convert.dtype, array_to_convert) self.assertTrue(can_cast) assert not mock_log_warning.called
def test__can_cast_to_float32__categorical_int64_with_nans_is_true(self): array_to_convert = Series(data=[1, 2, np.NaN], dtype="category") can_cast = can_cast_to_float32(array_to_convert.dtype, array_to_convert) self.assertTrue(can_cast)
def test__can_cast_to_float32__categorical_float64_is_false(self): array_to_convert = Series(data=[1.1, 2.2, 3.3], dtype="category") can_cast = can_cast_to_float32(array_to_convert.dtype, array_to_convert) self.assertFalse(can_cast)
def test__can_cast_to_float32__string_is_false(self): array_to_convert = Series(data=["1", "2", "3"], dtype=str) can_cast = can_cast_to_float32(array_to_convert.dtype, array_to_convert) self.assertFalse(can_cast)
def test__can_cast_to_float32__float64_is_true_warning_outputted(self): array_to_convert = Series(data=[1, 2, 3], dtype=np.dtype(np.float64)) with self.assertLogs(level="WARN") as logger: can_cast = can_cast_to_float32(array_to_convert.dtype, array_to_convert) self.assertIn("may lose precision", logger.output[0]) self.assertTrue(can_cast)
def test__can_cast_to_float_32__float_32_with_nans_is_true(self): array_to_convert = Series(data=[1, 2, np.NaN], dtype=np.dtype(np.float32)) can_cast = can_cast_to_float32(array_to_convert.dtype, array_to_convert) self.assertTrue(can_cast)