Skip to content

Commit ef5db8a

Browse files
Merge pull request #1 from oceanapplications/master
Added Tests
2 parents 4efb377 + d73703f commit ef5db8a

File tree

2 files changed

+28
-7
lines changed

2 files changed

+28
-7
lines changed

pandas_datareader/iex/daily.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -101,14 +101,14 @@ def _range_string_from_date(self):
101101
elif 1 <= years < 2:
102102
return "2y"
103103
elif 0 <= years < 1:
104-
estimated_days = ((365 * delta.years) + (30 * delta.months) + (delta.days)) * -1
105-
if 0 <= estimated_days < 6:
104+
delta_days = (datetime.datetime.now() - self.start).days
105+
if 0 <= delta_days < 6:
106106
return "5d"
107-
elif 6 <= estimated_days < 28:
107+
elif 6 <= delta_days < 28:
108108
return "1m"
109-
elif 28 <= estimated_days < 84:
109+
elif 28 <= delta_days < 84:
110110
return "3m"
111-
elif 84 <= estimated_days < 168:
111+
elif 84 <= delta_days < 168:
112112
return "6m"
113113

114114
return "1y"

pandas_datareader/tests/test_iex_daily.py

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
1-
from datetime import datetime
1+
from datetime import date, datetime, timedelta
2+
23
import os
34

45
from pandas import DataFrame, MultiIndex
56

67
import pytest
78

89
import pandas_datareader.data as web
9-
10+
from pandas_datareader.iex.daily import IEXDailyReader
1011

1112
@pytest.mark.skipif(os.getenv("IEX_SANDBOX") != 'enable',
1213
reason='All tests must be run in sandbox mode')
@@ -66,3 +67,23 @@ def test_multiple_symbols_2(self):
6667

6768
assert len(a) == 73
6869
assert len(t) == 73
70+
71+
def test_range_string_from_date(self):
72+
syms = ["AAPL"]
73+
74+
assert IEXDailyReader(symbols=syms, start=date.today() - timedelta(days=5),
75+
end=date.today())._range_string_from_date() == '5d'
76+
assert IEXDailyReader(symbols=syms, start=date.today() - timedelta(days=27),
77+
end=date.today())._range_string_from_date() == '1m'
78+
assert IEXDailyReader(symbols=syms, start=date.today() - timedelta(days=83),
79+
end=date.today())._range_string_from_date() == '3m'
80+
assert IEXDailyReader(symbols=syms, start=date.today() - timedelta(days=167),
81+
end=date.today())._range_string_from_date() == '6m'
82+
assert IEXDailyReader(symbols=syms, start=date.today() - timedelta(days=170),
83+
end=date.today())._range_string_from_date() == '1y'
84+
assert IEXDailyReader(symbols=syms, start=date.today() - timedelta(days=365),
85+
end=date.today())._range_string_from_date() == '2y'
86+
assert IEXDailyReader(symbols=syms, start=date.today() - timedelta(days=730),
87+
end=date.today())._range_string_from_date() == '5y'
88+
assert IEXDailyReader(symbols=syms, start=date.today() - timedelta(days=1826),
89+
end=date.today())._range_string_from_date() == 'max'

0 commit comments

Comments
 (0)