Пример #1
0
def test_to_weekday_from_string():
    assert recurrence.to_weekday("3") == recurrence.Weekday(3)

    with pytest.raises(ValueError):
        recurrence.to_weekday("7")

    assert recurrence.to_weekday("MO") == recurrence.Weekday(0)
    assert recurrence.to_weekday("mo") == recurrence.Weekday(0)
    assert recurrence.to_weekday("TU") == recurrence.Weekday(1)
    assert recurrence.to_weekday("Tu") == recurrence.Weekday(1)

    with pytest.raises(ValueError):
        recurrence.to_weekday("FOO")

    assert recurrence.to_weekday("-2TU") == recurrence.Weekday(1, -2)

    # We don't do any validation of the index
    assert recurrence.to_weekday("-7SU") == recurrence.Weekday(6, -7)
Пример #2
0
    def to_rule_object(self, rule_model):
        rule_args = (rule_model.freq, )
        rule_kwargs = {
            'interval': rule_model.interval,
            'wkst': rule_model.wkst,
            'count': rule_model.count,
            'until': pytz.utc.localize(rule_model.until),
        }

        for param in recurrence.Rule.byparams:
            if param == 'byday':
                # see recurrence.base docstrings about byday handling
                rule_kwargs[param] = (map(
                    lambda v: recurrence.Weekday(*v),
                    rule_model.params.filter(param=param).values_list(
                        'value', 'index')) or None)
            else:
                rule_kwargs[param] = (map(
                    lambda v: v[0],
                    rule_model.params.filter(param=param).values_list('value'))
                                      or None)

        return recurrence.Rule(*rule_args, **rule_kwargs)
Пример #3
0
def test_to_weekday_from_weekday():
    day = recurrence.Weekday(4)

    assert recurrence.to_weekday(day) == day
Пример #4
0
def test_to_weekday_from_int():
    assert recurrence.to_weekday(1) == recurrence.Weekday(1)

    with pytest.raises(ValueError):
        recurrence.to_weekday(7)
Пример #5
0
def test_to_weekday_from_dateutil_weekday():
    day = weekday(1)

    assert recurrence.to_weekday(day) == recurrence.Weekday(1)