Skip to content

Commit 53b90d3

Browse files
jbrockmendelWillAyd
authored andcommitted
TST: tests for needs-test issues (#30222)
1 parent 3b080cb commit 53b90d3

File tree

8 files changed

+68
-1
lines changed

8 files changed

+68
-1
lines changed

pandas/tests/frame/test_axis_select_reindex.py

+8
Original file line numberDiff line numberDiff line change
@@ -929,6 +929,14 @@ def test_filter_corner(self):
929929
result = empty.filter(like="foo")
930930
tm.assert_frame_equal(result, empty)
931931

932+
def test_filter_regex_non_string(self):
933+
# GH#5798 trying to filter on non-string columns should drop,
934+
# not raise
935+
df = pd.DataFrame(np.random.random((3, 2)), columns=["STRING", 123])
936+
result = df.filter(regex="STRING")
937+
expected = df[["STRING"]]
938+
tm.assert_frame_equal(result, expected)
939+
932940
def test_take(self, float_frame):
933941
# homogeneous
934942
order = [3, 1, 2, 0]

pandas/tests/frame/test_constructors.py

+7-1
Original file line numberDiff line numberDiff line change
@@ -1726,10 +1726,16 @@ def test_constructor_with_datetimes(self):
17261726
tm.assert_frame_equal(df, expected)
17271727

17281728
def test_constructor_datetimes_with_nulls(self):
1729-
# gh-15869
1729+
# gh-15869, GH#11220
17301730
for arr in [
17311731
np.array([None, None, None, None, datetime.now(), None]),
17321732
np.array([None, None, datetime.now(), None]),
1733+
[[np.datetime64("NaT")], [None]],
1734+
[[np.datetime64("NaT")], [pd.NaT]],
1735+
[[None], [np.datetime64("NaT")]],
1736+
[[None], [pd.NaT]],
1737+
[[pd.NaT], [np.datetime64("NaT")]],
1738+
[[pd.NaT], [None]],
17331739
]:
17341740
result = DataFrame(arr).dtypes
17351741
expected = Series([np.dtype("datetime64[ns]")])

pandas/tests/frame/test_quantile.py

+10
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,16 @@
77

88

99
class TestDataFrameQuantile:
10+
def test_quantile_sparse(self):
11+
# GH#17198
12+
s = pd.Series(pd.SparseArray([1, 2]))
13+
s1 = pd.Series(pd.SparseArray([3, 4]))
14+
df = pd.DataFrame({0: s, 1: s1})
15+
result = df.quantile()
16+
17+
expected = pd.Series([1.5, 3.5], name=0.5)
18+
tm.assert_series_equal(result, expected)
19+
1020
def test_quantile(self, datetime_frame):
1121
from numpy import percentile
1222

pandas/tests/frame/test_timeseries.py

+8
Original file line numberDiff line numberDiff line change
@@ -609,6 +609,14 @@ def test_first_last_valid(
609609
assert expected_first == df.first_valid_index()
610610
assert expected_last == df.last_valid_index()
611611

612+
@pytest.mark.parametrize("klass", [Series, DataFrame])
613+
def test_first_valid_index_all_nan(self, klass):
614+
# GH#9752 Series/DataFrame should both return None, not raise
615+
obj = klass([np.nan])
616+
617+
assert obj.first_valid_index() is None
618+
assert obj.iloc[:0].first_valid_index() is None
619+
612620
def test_first_subset(self):
613621
ts = tm.makeTimeDataFrame(freq="12h")
614622
result = ts.first("10d")

pandas/tests/indexes/multi/test_constructor.py

+11
Original file line numberDiff line numberDiff line change
@@ -577,6 +577,17 @@ def test_from_product_respects_none_names():
577577
tm.assert_index_equal(result, expected)
578578

579579

580+
def test_from_product_readonly():
581+
# GH#15286 passing read-only array to from_product
582+
a = np.array(range(3))
583+
b = ["a", "b"]
584+
expected = MultiIndex.from_product([a, b])
585+
586+
a.setflags(write=False)
587+
result = MultiIndex.from_product([a, b])
588+
tm.assert_index_equal(result, expected)
589+
590+
580591
def test_create_index_existing_name(idx):
581592

582593
# GH11193, when an existing index is passed, and a new name is not

pandas/tests/io/formats/test_format.py

+9
Original file line numberDiff line numberDiff line change
@@ -1106,6 +1106,15 @@ def test_truncate_with_different_dtypes(self):
11061106
assert "None" in result
11071107
assert "NaN" not in result
11081108

1109+
def test_truncate_with_different_dtypes_multiindex(self):
1110+
# GH#13000
1111+
df = DataFrame({"Vals": range(100)})
1112+
frame = pd.concat([df], keys=["Sweep"], names=["Sweep", "Index"])
1113+
result = repr(frame)
1114+
1115+
result2 = repr(frame.iloc[:5])
1116+
assert result.startswith(result2)
1117+
11091118
def test_datetimelike_frame(self):
11101119

11111120
# GH 12211

pandas/tests/series/test_missing.py

+7
Original file line numberDiff line numberDiff line change
@@ -473,6 +473,13 @@ def test_fillna_consistency(self):
473473
s2[1] = "foo"
474474
tm.assert_series_equal(s2, expected)
475475

476+
def test_where_sparse(self):
477+
# GH#17198 make sure we dont get an AttributeError for sp_index
478+
ser = pd.Series(pd.SparseArray([1, 2]))
479+
result = ser.where(ser >= 2, 0)
480+
expected = pd.Series(pd.SparseArray([0, 2]))
481+
tm.assert_series_equal(result, expected)
482+
476483
def test_datetime64tz_fillna_round_issue(self):
477484
# GH 14872
478485

pandas/tests/window/test_rolling.py

+8
Original file line numberDiff line numberDiff line change
@@ -418,3 +418,11 @@ def test_rolling_window_as_string():
418418

419419
expected = Series(expData, index=Index(days, name="DateCol"), name="metric")
420420
tm.assert_series_equal(result, expected)
421+
422+
423+
def test_min_periods1():
424+
# GH#6795
425+
df = pd.DataFrame([0, 1, 2, 1, 0], columns=["a"])
426+
result = df["a"].rolling(3, center=True, min_periods=1).max()
427+
expected = pd.Series([1.0, 2.0, 2.0, 2.0, 1.0], name="a")
428+
tm.assert_series_equal(result, expected)

0 commit comments

Comments
 (0)