@@ -372,21 +372,41 @@ def test_date_time_types(tmpdir):
372372 t5 = pa .time64 ('us' )
373373 a5 = pa .Array .from_pandas (data4 .astype ('int64' ), type = t5 )
374374
375- table = pa .Table .from_arrays ([a1 , a2 , a3 , a4 , a5 ],
375+ t6 = pa .time32 ('s' )
376+ a6 = pa .Array .from_pandas (data4 , type = t6 )
377+
378+ ex_t6 = pa .time32 ('ms' )
379+ ex_a6 = pa .Array .from_pandas (data4 * 1000 , type = ex_t6 )
380+
381+ table = pa .Table .from_arrays ([a1 , a2 , a3 , a4 , a5 , a6 ],
376382 ['date32' , 'date64' , 'timestamp[us]' ,
377- 'time32[s]' , 'time64[us]' ])
383+ 'time32[s]' , 'time64[us]' , 'time32[s]' ])
378384
379385 # date64 as date32
380- expected = pa .Table .from_arrays ([a1 , a1 , a3 , a4 , a5 ],
386+ # time32[s] to time32[ms]
387+ expected = pa .Table .from_arrays ([a1 , a1 , a3 , a4 , a5 , ex_a6 ],
381388 ['date32' , 'date64' , 'timestamp[us]' ,
382- 'time32[s]' , 'time64[us]' ])
389+ 'time32[s]' , 'time64[us]' , 'time32[s]' ])
383390
384391 pq .write_table (table , buf , version = "2.0" )
385392 buf .seek (0 )
386393
387394 result = pq .read_table (buf )
388395 assert result .equals (expected )
389396
397+ # Unsupported stuff
398+ def _assert_unsupported (array ):
399+ table = pa .Table .from_arrays ([array ], ['unsupported' ])
400+ buf = io .BytesIO ()
401+
402+ with pytest .raises (NotImplementedError ):
403+ pq .write_table (table , buf , version = "2.0" )
404+
405+ t7 = pa .time64 ('ns' )
406+ a7 = pa .Array .from_pandas (data4 .astype ('int64' ), type = t7 )
407+
408+ _assert_unsupported (a7 )
409+
390410
391411@parquet
392412def test_multithreaded_read ():
0 commit comments