Skip to content

Commit 2f3d79e

Browse files
committed
Add test exercising dtype preservation in astype
1 parent f08a50a commit 2f3d79e

2 files changed

Lines changed: 4 additions & 2 deletions

File tree

‎quantities/quantity.py‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -247,9 +247,9 @@ def astype(self, dtype=None, **kwargs):
247247
# might be related to numpy ticket # 826
248248
if not isinstance(ret, type(self)):
249249
if self.__array_priority__ >= Quantity.__array_priority__:
250-
ret = type(self)(ret, self._dimensionality)
250+
ret = type(self)(ret, self._dimensionality, dtype=self.dtype)
251251
else:
252-
ret = Quantity(ret, self._dimensionality)
252+
ret = Quantity(ret, self._dimensionality, dtype=self.dtype)
253253

254254
return ret
255255

‎quantities/tests/test_uncertainty.py‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ def test_rescale(self):
3838
self.assertTrue(seventyish_km.dtype == np.float32)
3939
in_meters = seventyish_km.rescale(pq.m)
4040
self.assertTrue(in_meters.dtype == seventyish_km.dtype)
41+
seventyish_km_rescaled_idempotent = seventyish_km.rescale(pq.km)
42+
self.assertTrue(seventyish_km_rescaled_idempotent.dtype == np.float32)
4143

4244
def test_set_uncertainty(self):
4345
a = UncertainQuantity([1, 2], 'm', [.1, .2])

0 commit comments

Comments
 (0)