Skip to content

Commit 6afcb69

Browse files
authored
TST: Added dataframe constructor tests confirming order is preserved with standard Python dicts (#38033) (#38206)
1 parent 155408c commit 6afcb69

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

pandas/tests/frame/test_constructors.py

+8-6
Original file line numberDiff line numberDiff line change
@@ -1238,32 +1238,34 @@ def test_constructor_single_row(self):
12381238
)
12391239
tm.assert_frame_equal(result, expected)
12401240

1241-
def test_constructor_ordered_dict_preserve_order(self):
1241+
@pytest.mark.parametrize("dict_type", [dict, OrderedDict])
1242+
def test_constructor_ordered_dict_preserve_order(self, dict_type):
12421243
# see gh-13304
12431244
expected = DataFrame([[2, 1]], columns=["b", "a"])
12441245

1245-
data = OrderedDict()
1246+
data = dict_type()
12461247
data["b"] = [2]
12471248
data["a"] = [1]
12481249

12491250
result = DataFrame(data)
12501251
tm.assert_frame_equal(result, expected)
12511252

1252-
data = OrderedDict()
1253+
data = dict_type()
12531254
data["b"] = 2
12541255
data["a"] = 1
12551256

12561257
result = DataFrame([data])
12571258
tm.assert_frame_equal(result, expected)
12581259

1259-
def test_constructor_ordered_dict_conflicting_orders(self):
1260+
@pytest.mark.parametrize("dict_type", [dict, OrderedDict])
1261+
def test_constructor_ordered_dict_conflicting_orders(self, dict_type):
12601262
# the first dict element sets the ordering for the DataFrame,
12611263
# even if there are conflicting orders from subsequent ones
1262-
row_one = OrderedDict()
1264+
row_one = dict_type()
12631265
row_one["b"] = 2
12641266
row_one["a"] = 1
12651267

1266-
row_two = OrderedDict()
1268+
row_two = dict_type()
12671269
row_two["a"] = 1
12681270
row_two["b"] = 2
12691271

0 commit comments

Comments
 (0)