@@ -399,11 +399,16 @@ def test_escapechar(all_parsers):
399
399
tm .assert_index_equal (result .columns , Index (["SEARCH_TERM" , "ACTUAL_URL" ]))
400
400
401
401
402
- @xfail_pyarrow # ValueError: the 'pyarrow' engine does not support regex separators
403
402
def test_ignore_leading_whitespace (all_parsers ):
404
403
# see gh-3374, gh-6607
405
404
parser = all_parsers
406
405
data = " a b c\n 1 2 3\n 4 5 6\n 7 8 9"
406
+
407
+ if parser .engine == "pyarrow" :
408
+ msg = "the 'pyarrow' engine does not support regex separators"
409
+ with pytest .raises (ValueError , match = msg ):
410
+ parser .read_csv (StringIO (data ), sep = r"\s+" )
411
+ return
407
412
result = parser .read_csv (StringIO (data ), sep = r"\s+" )
408
413
409
414
expected = DataFrame ({"a" : [1 , 4 , 7 ], "b" : [2 , 5 , 8 ], "c" : [3 , 6 , 9 ]})
@@ -582,12 +587,14 @@ def test_empty_lines(all_parsers, sep, skip_blank_lines, exp_data, request):
582
587
583
588
if sep == r"\s+" :
584
589
data = data .replace ("," , " " )
590
+
585
591
if parser .engine == "pyarrow" :
586
- mark = pytest .mark .xfail (
587
- raises = ValueError ,
588
- reason = "the 'pyarrow' engine does not support regex separators" ,
589
- )
590
- request .applymarker (mark )
592
+ msg = "the 'pyarrow' engine does not support regex separators"
593
+ with pytest .raises (ValueError , match = msg ):
594
+ parser .read_csv (
595
+ StringIO (data ), sep = sep , skip_blank_lines = skip_blank_lines
596
+ )
597
+ return
591
598
592
599
result = parser .read_csv (StringIO (data ), sep = sep , skip_blank_lines = skip_blank_lines )
593
600
expected = DataFrame (exp_data , columns = ["A" , "B" , "C" ])
@@ -610,7 +617,6 @@ def test_whitespace_lines(all_parsers):
610
617
tm .assert_frame_equal (result , expected )
611
618
612
619
613
- @xfail_pyarrow # ValueError: the 'pyarrow' engine does not support regex separators
614
620
@pytest .mark .parametrize (
615
621
"data,expected" ,
616
622
[
@@ -635,6 +641,12 @@ def test_whitespace_lines(all_parsers):
635
641
def test_whitespace_regex_separator (all_parsers , data , expected ):
636
642
# see gh-6607
637
643
parser = all_parsers
644
+ if parser .engine == "pyarrow" :
645
+ msg = "the 'pyarrow' engine does not support regex separators"
646
+ with pytest .raises (ValueError , match = msg ):
647
+ parser .read_csv (StringIO (data ), sep = r"\s+" )
648
+ return
649
+
638
650
result = parser .read_csv (StringIO (data ), sep = r"\s+" )
639
651
tm .assert_frame_equal (result , expected )
640
652
0 commit comments