Exemplo n.º 1
0
def test_get_stop_message_template(monkeypatch):
    output = []
    monkeypatch.setattr('click.edit',
                        lambda s, **kwargs: output.extend(s.splitlines()))
    ev = Event('task', '2011-05-04T09:30:00Z')
    get_stop_message(ev)
    assert '# Task “task” started 2011-05-04T09:30:00Z' in output
Exemplo n.º 2
0
def test_event_creation(task, start, delta, message):
    e = Event(task, start, delta, message)
    expect(e.task) == task
    if isinstance(start, datetime):
        expect(e.start) == start
    elif start:
        expect(e.start) == parse_datetime(start)
    else:
        # Special case to ignore comparison against utcnow()
        pass
    if isinstance(delta, timedelta):
        expect(e.delta) == delta
    else:
        expect(e.delta) == parse_delta(delta)
    expect(e.message) == message
Exemplo n.º 3
0
def test_event_creation(task: str, start: Optional[Union[str, datetime]],
                        delta: Optional[Union[str, timedelta]], message: str):
    e = Event(task, start, delta, message)
    assert e.task == task
    if isinstance(start, datetime):
        assert e.start == start
    elif start:
        assert e.start == parse_datetime(start).replace(tzinfo=None)
    else:
        # Special case to ignore comparison against utcnow()
        pass
    if isinstance(delta, timedelta):
        assert e.delta == delta
    else:
        assert e.delta == parse_delta(delta)
    assert e.message == message
Exemplo n.º 4
0
def test_get_stop_message(edit_func: Callable, message: str, monkeypatch):
    monkeypatch.setattr('click.edit', edit_func)
    ev = Event('task', '2011-05-04T09:30:00Z', '', message)
    assert get_stop_message(ev) == message
Exemplo n.º 5
0
def test_events_repr():
    ev1 = Event('task', '2011-05-05T11:23:48Z', 'PT01H00M00S')
    ev2 = Event('task', '2011-05-05T12:23:48Z', 'PT00H30M00S')
    events = Events([ev1, ev2])
    assert repr(events) == eval_repr(events)
Exemplo n.º 6
0
from pytest import mark

from rdial.events import Event, Events


def eval_repr(obj: object):
    """Regenerate an object from its ``__repr__`` output.

    Args:
        obj: Object to evaluate

    """
    return repr(eval(repr(obj)))


@mark.parametrize('ev', [
    Event('task', '2011-05-05T11:23:48Z', 'PT01H00M00S'),
    Event('task', '2011-05-05T11:23:48Z', ''),
    Event('task', '2011-05-05T11:23:48Z', 'PT01H00M00S', 'message'),
])
def test_event_repr(ev: Event):
    assert repr(ev) == eval_repr(ev)


def test_events_repr():
    ev1 = Event('task', '2011-05-05T11:23:48Z', 'PT01H00M00S')
    ev2 = Event('task', '2011-05-05T12:23:48Z', 'PT00H30M00S')
    events = Events([ev1, ev2])
    assert repr(events) == eval_repr(events)
Exemplo n.º 7
0
 def test_events(self):
     ev1 = Event("task", "2011-05-05T11:23:48Z", "PT01H00M00S")
     ev2 = Event("task", "2011-05-05T12:23:48Z", "PT00H30M00S")
     events = Events([ev1, ev2])
     expect(repr(events)) == eval_repr(events)
Exemplo n.º 8
0
 def test_event_with_message(self):
     ev = Event("task", "2011-05-05T11:23:48Z", "PT01H00M00S", "message")
     expect(repr(ev)) == eval_repr(ev)
Exemplo n.º 9
0
 def test_event_no_delta(self):
     ev = Event("task", "2011-05-05T11:23:48Z", "")
     expect(repr(ev)) == eval_repr(ev)
Exemplo n.º 10
0
def test_event_equality():
    ev1 = Event('test', datetime(2013, 2, 26, 19, 45, 14), None, None)
    ev2 = Event('test', datetime(2013, 2, 26, 19, 45, 14), None, None)
    assert ev1 == ev2
Exemplo n.º 11
0
def test_event_creation_non_naive():
    with raises(ValueError, match='Must be a naive datetime'):
        Event('test', datetime(2013, 2, 26, 19, 45, 14, tzinfo=timezone.utc),
              None, None)
Exemplo n.º 12
0
def test_event_creation_non_naive():
    with raises(ValueError, match='Must be a naive datetime'):
        Event('test', datetime(2013, 2, 26, 19, 45, 14, tzinfo=timezone.utc),
              None, None)


def test_event_equality():
    ev1 = Event('test', datetime(2013, 2, 26, 19, 45, 14), None, None)
    ev2 = Event('test', datetime(2013, 2, 26, 19, 45, 14), None, None)
    assert ev1 == ev2


@mark.parametrize('ev1, ev2', [
    (Event(
        'test',
        datetime(2013, 2, 26, 19, 45, 14),
    ), Event(
        'not_test',
        datetime(2013, 2, 26, 19, 45, 14),
    )),
    (Event(
        'date',
        datetime(2013, 2, 26, 19, 45, 14),
    ), Event(
        'date',
        datetime(2001, 1, 1, 0, 0, 0),
    )),
    (Event('message', datetime(2013, 2, 26, 19, 45, 14), None, 'test'),
     Event('message', datetime(2013, 2, 26, 19, 45, 14), None, 'breakage')),
])
def test_event_inequality(ev1: Event, ev2: Event):