@@ -173,6 +173,19 @@ def test_unsupported_type(self):
173173 with pytest .raises (NotImplementedError ):
174174 to_datetime64 (Dummy ())
175175
176+ def test_immutable_inputs (self ):
177+ """Ensure immutable array inputs work."""
178+ # See #575.
179+ rand = np .random .RandomState (42 )
180+ array_no_nan = rand .random (100 )
181+ array_nan = rand .random (100 )
182+ array_nan [10 ] = np .nan
183+
184+ for array in [array_no_nan , array_nan ]:
185+ array .setflags (write = False )
186+ time = to_datetime64 (array_no_nan )
187+ assert np .issubdtype (time .dtype , "M8" )
188+
176189
177190class TestToTimeDelta64 :
178191 """Tests for creating timedeltas."""
@@ -301,6 +314,19 @@ def test_array_of_datetimes(self, random_patch):
301314 out = to_timedelta64 (dt_array )
302315 assert np .all (out .astype (np .int64 ) == dt_array .astype (np .int64 ))
303316
317+ def test_immutable_inputs (self ):
318+ """Ensure immutable array inputs work."""
319+ # See #575.
320+ rand = np .random .RandomState (42 )
321+ array_no_nan = rand .random (100 )
322+ array_nan = rand .random (100 )
323+ array_nan [10 ] = np .nan
324+
325+ for array in [array_no_nan , array_nan ]:
326+ array .setflags (write = False )
327+ time = to_timedelta64 (array_no_nan )
328+ assert np .issubdtype (time .dtype , "m8" )
329+
304330
305331class TestToInt :
306332 """Tests for converting time-like types to ints, or passing through reals."""
0 commit comments