Skip to content

Commit 60379e5

Browse files
committed
Add tests for datetime dtype
Signed-off-by: Vasily Litvinov <fam1ly.n4me@yandex.ru>
1 parent 5d98ebf commit 60379e5

File tree

1 file changed

+18
-17
lines changed

1 file changed

+18
-17
lines changed

pandas/tests/exchange/test_impl.py

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
from datetime import datetime
12
import random
23

34
import numpy as np
@@ -18,24 +19,24 @@
1819

1920
NCOLS, NROWS = 100, 200
2021

21-
int_data = {
22-
f"col{int((i - NCOLS / 2) % NCOLS + 1)}": [
23-
random.randint(0, 100) for _ in range(NROWS)
24-
]
25-
for i in range(NCOLS)
26-
}
2722

28-
bool_data = {
29-
f"col{int((i - NCOLS / 2) % NCOLS + 1)}": [
30-
random.choice([True, False]) for _ in range(NROWS)
31-
]
32-
for i in range(NCOLS)
33-
}
23+
def _make_data(make_one):
24+
return {
25+
f"col{int((i - NCOLS / 2) % NCOLS + 1)}": [make_one() for _ in range(NROWS)]
26+
for i in range(NCOLS)
27+
}
3428

35-
float_data = {
36-
f"col{int((i - NCOLS / 2) % NCOLS + 1)}": [random.random() for _ in range(NROWS)]
37-
for i in range(NCOLS)
38-
}
29+
30+
int_data = _make_data(lambda: random.randint(0, 100))
31+
bool_data = _make_data(lambda: random.choice([True, False]))
32+
float_data = _make_data(lambda: random.random())
33+
datetime_data = _make_data(
34+
lambda: datetime(
35+
year=random.randint(1900, 2100),
36+
month=random.randint(1, 12),
37+
day=random.randint(1, 20),
38+
)
39+
)
3940

4041
string_data = {
4142
"separator data": [
@@ -66,7 +67,7 @@ def test_categorical_dtype(data):
6667
tm.assert_frame_equal(df, from_dataframe(df.__dataframe__()))
6768

6869

69-
@pytest.mark.parametrize("data", [int_data, float_data, bool_data])
70+
@pytest.mark.parametrize("data", [int_data, float_data, bool_data, datetime_data])
7071
def test_dataframe(data):
7172
df = pd.DataFrame(data)
7273

0 commit comments

Comments
 (0)