@@ -62,14 +62,23 @@ def test_pandas_to_spark_schema_nullable(self):
62
62
63
63
def test_pandas_to_spark_schema_datetime_types (self ):
64
64
"""Test conversion of pandas datetime types to Spark TimestampType."""
65
- import numpy as np
66
65
67
66
# Create test data with different datetime types
68
67
data = {
69
- "datetime_ns" : pd .to_datetime (["2023-01-01 10:00:00" , "2023-01-02 11:00:00" ]),
70
- "datetime_ns_utc" : pd .to_datetime (["2023-01-01 10:00:00" , "2023-01-02 11:00:00" ], utc = True ),
71
- "datetime_ms" : pd .to_datetime (["2023-01-01 10:00:00" , "2023-01-02 11:00:00" ]).astype ("datetime64[ms]" ),
72
- "datetime_ms_utc" : pd .to_datetime (["2023-01-01 10:00:00" , "2023-01-02 11:00:00" ], utc = True ).tz_localize (None ).astype ("datetime64[ms]" ),
68
+ "datetime_ns" : pd .to_datetime (
69
+ ["2023-01-01 10:00:00" , "2023-01-02 11:00:00" ]
70
+ ),
71
+ "datetime_ns_utc" : pd .to_datetime (
72
+ ["2023-01-01 10:00:00" , "2023-01-02 11:00:00" ], utc = True
73
+ ),
74
+ "datetime_ms" : pd .to_datetime (
75
+ ["2023-01-01 10:00:00" , "2023-01-02 11:00:00" ]
76
+ ).astype ("datetime64[ms]" ),
77
+ "datetime_ms_utc" : pd .to_datetime (
78
+ ["2023-01-01 10:00:00" , "2023-01-02 11:00:00" ], utc = True
79
+ )
80
+ .tz_localize (None )
81
+ .astype ("datetime64[ms]" ),
73
82
}
74
83
df = pd .DataFrame (data )
75
84
@@ -82,9 +91,16 @@ def test_pandas_to_spark_schema_datetime_types(self):
82
91
83
92
# Check that all datetime columns map to TimestampType
84
93
field_dict = {field .name : field for field in schema .fields }
85
- for field_name in ["datetime_ns" , "datetime_ns_utc" , "datetime_ms" , "datetime_ms_utc" ]:
86
- assert isinstance (field_dict [field_name ].dataType , TimestampType ), \
87
- f"Field { field_name } should be TimestampType, got { type (field_dict [field_name ].dataType )} "
94
+ for field_name in [
95
+ "datetime_ns" ,
96
+ "datetime_ns_utc" ,
97
+ "datetime_ms" ,
98
+ "datetime_ms_utc" ,
99
+ ]:
100
+ assert isinstance (field_dict [field_name ].dataType , TimestampType ), (
101
+ f"Field { field_name } should be TimestampType, "
102
+ f"got { type (field_dict [field_name ].dataType )} "
103
+ )
88
104
assert field_dict [field_name ].nullable
89
105
90
106
# Verify the actual pandas dtypes to ensure our test data has the expected types
0 commit comments