1616from pandas .tests .copy_view .util import get_array
1717
1818
19- @pytest .mark .xfail (using_string_dtype () and HAS_PYARROW , reason = "TODO(infer_string)" )
2019def test_concat_frames ():
21- df = DataFrame ({"b" : ["a" ] * 3 })
22- df2 = DataFrame ({"a" : ["a" ] * 3 })
20+ df = DataFrame ({"b" : ["a" ] * 3 }, dtype = object )
21+ df2 = DataFrame ({"a" : ["a" ] * 3 }, dtype = object )
2322 df_orig = df .copy ()
2423 result = concat ([df , df2 ], axis = 1 )
2524
@@ -35,10 +34,9 @@ def test_concat_frames():
3534 tm .assert_frame_equal (df , df_orig )
3635
3736
38- @pytest .mark .xfail (using_string_dtype () and HAS_PYARROW , reason = "TODO(infer_string)" )
3937def test_concat_frames_updating_input ():
40- df = DataFrame ({"b" : ["a" ] * 3 })
41- df2 = DataFrame ({"a" : ["a" ] * 3 })
38+ df = DataFrame ({"b" : ["a" ] * 3 }, dtype = object )
39+ df2 = DataFrame ({"a" : ["a" ] * 3 }, dtype = object )
4240 result = concat ([df , df2 ], axis = 1 )
4341
4442 assert np .shares_memory (get_array (result , "b" ), get_array (df , "b" ))
@@ -155,7 +153,7 @@ def test_concat_copy_keyword():
155153 assert np .shares_memory (get_array (df2 , "b" ), get_array (result , "b" ))
156154
157155
158- @pytest .mark .xfail (using_string_dtype () and HAS_PYARROW , reason = "TODO(infer_string)" )
156+ # @pytest.mark.xfail(using_string_dtype() and HAS_PYARROW, reason="TODO(infer_string)")
159157@pytest .mark .parametrize (
160158 "func" ,
161159 [
@@ -164,8 +162,8 @@ def test_concat_copy_keyword():
164162 ],
165163)
166164def test_merge_on_key (func ):
167- df1 = DataFrame ({"key" : ["a" , "b" , "c" ], "a" : [1 , 2 , 3 ]})
168- df2 = DataFrame ({"key" : ["a" , "b" , "c" ], "b" : [4 , 5 , 6 ]})
165+ df1 = DataFrame ({"key" : Series ( ["a" , "b" , "c" ], dtype = object ) , "a" : [1 , 2 , 3 ]})
166+ df2 = DataFrame ({"key" : Series ( ["a" , "b" , "c" ], dtype = object ) , "b" : [4 , 5 , 6 ]})
169167 df1_orig = df1 .copy ()
170168 df2_orig = df2 .copy ()
171169
@@ -207,7 +205,6 @@ def test_merge_on_index():
207205 tm .assert_frame_equal (df2 , df2_orig )
208206
209207
210- @pytest .mark .xfail (using_string_dtype (), reason = "TODO(infer_string)" , strict = False )
211208@pytest .mark .parametrize (
212209 "func, how" ,
213210 [
@@ -216,8 +213,8 @@ def test_merge_on_index():
216213 ],
217214)
218215def test_merge_on_key_enlarging_one (func , how ):
219- df1 = DataFrame ({"key" : ["a" , "b" , "c" ], "a" : [1 , 2 , 3 ]})
220- df2 = DataFrame ({"key" : ["a" , "b" ], "b" : [4 , 5 ]})
216+ df1 = DataFrame ({"key" : Series ( ["a" , "b" , "c" ], dtype = object ) , "a" : [1 , 2 , 3 ]})
217+ df2 = DataFrame ({"key" : Series ( ["a" , "b" ], dtype = object ) , "b" : [4 , 5 ]})
221218 df1_orig = df1 .copy ()
222219 df2_orig = df2 .copy ()
223220
@@ -251,9 +248,13 @@ def test_merge_copy_keyword():
251248 assert np .shares_memory (get_array (df2 , "b" ), get_array (result , "b" ))
252249
253250
254- @pytest .mark .xfail (using_string_dtype () and HAS_PYARROW , reason = "TODO(infer_string)" )
251+ @pytest .mark .xfail (
252+ using_string_dtype () and HAS_PYARROW ,
253+ reason = "TODO(infer_string); result.index infers str dtype while both "
254+ "df1 and df2 index are object." ,
255+ )
255256def test_join_on_key ():
256- df_index = Index (["a" , "b" , "c" ], name = "key" )
257+ df_index = Index (["a" , "b" , "c" ], name = "key" , dtype = object )
257258
258259 df1 = DataFrame ({"a" : [1 , 2 , 3 ]}, index = df_index .copy (deep = True ))
259260 df2 = DataFrame ({"b" : [4 , 5 , 6 ]}, index = df_index .copy (deep = True ))
@@ -279,9 +280,8 @@ def test_join_on_key():
279280 tm .assert_frame_equal (df2 , df2_orig )
280281
281282
282- @pytest .mark .xfail (using_string_dtype () and HAS_PYARROW , reason = "TODO(infer_string)" )
283283def test_join_multiple_dataframes_on_key ():
284- df_index = Index (["a" , "b" , "c" ], name = "key" )
284+ df_index = Index (["a" , "b" , "c" ], name = "key" , dtype = object )
285285
286286 df1 = DataFrame ({"a" : [1 , 2 , 3 ]}, index = df_index .copy (deep = True ))
287287 dfs_list = [
0 commit comments