Beispiel #1
0
def test_interval_tuples():
    assert list(
        interval_ends(date(2014, 3, 5), date(2014, 5, 5), Interval.MONTH)) == [
            date(2014, 3, 5),
            date(2014, 4, 1),
            date(2014, 5, 1),
            date(2014, 5, 5),
        ]
    assert list(
        interval_ends(date(2014, 1, 1), date(2014, 5, 1), Interval.MONTH)) == [
            date(2014, 1, 1),
            date(2014, 2, 1),
            date(2014, 3, 1),
            date(2014, 4, 1),
            date(2014, 5, 1),
        ]
    assert list(
        interval_ends(date(2014, 3, 5), date(2014, 5, 5), Interval.YEAR)) == [
            date(2014, 3, 5),
            date(2014, 5, 5),
        ]
    assert list(
        interval_ends(date(2014, 1, 1), date(2015, 1, 1), Interval.YEAR)) == [
            date(2014, 1, 1),
            date(2015, 1, 1),
        ]
Beispiel #2
0
def test_interval_tuples():
    assert list(
        interval_ends(date(2014, 3, 5), date(2014, 5, 5), Interval.MONTH)) == [
            date(2014, 3, 5),
            date(2014, 4, 1),
            date(2014, 5, 1),
            date(2014, 5, 5),
        ]
    assert list(
        interval_ends(date(2014, 1, 1), date(2014, 5, 1), Interval.MONTH)) == [
            date(2014, 1, 1),
            date(2014, 2, 1),
            date(2014, 3, 1),
            date(2014, 4, 1),
            date(2014, 5, 1),
        ]
    assert list(
        interval_ends(date(2014, 3, 5), date(2014, 5, 5), Interval.YEAR)) == [
            date(2014, 3, 5),
            date(2014, 5, 5),
        ]
    assert list(
        interval_ends(date(2014, 1, 1), date(2015, 1, 1), Interval.YEAR)) == [
            date(2014, 1, 1),
            date(2015, 1, 1),
        ]
Beispiel #3
0
 def interval_ends(
     self, interval: date.Interval
 ) -> Iterable[datetime.date]:
     """Generator yielding dates corresponding to interval boundaries."""
     if not self._date_first:
         return []
     return date.interval_ends(self._date_first, self._date_last, interval)
Beispiel #4
0
 def interval_ends(self,
                   interval: date.Interval) -> Iterable[datetime.date]:
     """Generator yielding dates corresponding to interval boundaries."""
     first, last = get_min_max_dates(self.entries, (Transaction, Price))
     if last:
         last = last + datetime.timedelta(1)
     if not first or not last:
         return []
     return date.interval_ends(first, last, interval)
Beispiel #5
0
def test_interval_tuples():
    assert list(interval_ends(date(2014, 3, 5), date(2014, 5, 5),
                              'month')) == [
                                  date(2014, 3, 5),
                                  date(2014, 4, 1),
                                  date(2014, 5, 1),
                                  date(2014, 5, 5),
                              ]
    assert list(interval_ends(date(2014, 1, 1), date(2014, 5, 1),
                              'month')) == [
                                  date(2014, 1, 1),
                                  date(2014, 2, 1),
                                  date(2014, 3, 1),
                                  date(2014, 4, 1),
                                  date(2014, 5, 1),
                              ]
    assert list(interval_ends(date(2014, 3, 5), date(2014, 5, 5), 'year')) == [
        date(2014, 3, 5),
        date(2014, 5, 5),
    ]
    assert list(interval_ends(date(2014, 1, 1), date(2015, 1, 1), 'year')) == [
        date(2014, 1, 1),
        date(2015, 1, 1),
    ]
Beispiel #6
0
 def interval_ends(self, interval):
     """Generator yielding dates corresponding to interval boundaries."""
     if not self._date_first:
         return []
     return date.interval_ends(self._date_first, self._date_last, interval)
Beispiel #7
0
 def interval_ends(self, interval):
     """Generator yielding dates corresponding to interval boundaries."""
     if not self._date_first:
         return []
     return date.interval_ends(self._date_first, self._date_last, interval)