示例#1
0
 def as_hamster(self):
     """Provide an convenient way to return it as a ``hamster_lib.Fact`` instance."""
     return Fact(
         pk=self.pk,
         activity=self.activity.as_hamster(),
         start=self.start,
         end=self.end,
         description=self.description,
     )
示例#2
0
 def generate():
     activity = activity_factory()
     tags = set([tag_factory() for i in range(1)])
     start, end = start_end_datetimes
     fact = Fact(activity,
                 start,
                 end,
                 pk=None,
                 description=description,
                 tags=tags)
     return fact
示例#3
0
    def test_fact_init_valid(self, activity, start_end_datetimes,
                             pk_valid_parametrized,
                             description_valid_parametrized,
                             tag_list_valid_parametrized):
        """Make sure valid values instaniate a Fact."""

        fact = Fact(activity, start_end_datetimes[0], start_end_datetimes[1],
                    pk_valid_parametrized, description_valid_parametrized,
                    tag_list_valid_parametrized)
        assert fact.activity == activity
        assert fact.pk == pk_valid_parametrized
        assert fact.description == description_valid_parametrized
        assert fact.start == start_end_datetimes[0]
        assert fact.end == start_end_datetimes[1]
        assert fact.tags == tag_list_valid_parametrized
示例#4
0
    ((-1, 'foo'), Tag('foo', None)),
    ((-2, ''), None),
    (helpers.DBusTag(1, 'foo'), Tag('foo', 1)),
    (helpers.DBusTag(-1, 'foo'), Tag('foo', None)),
    (helpers.DBusTag(-2, ''), None),
))
def test_dbus_to_hamster_tag(tag_tuple, expectation):
    """Make sure that de-serialization works as intended."""
    result = helpers.dbus_to_hamster_tag(tag_tuple)
    assert result == expectation
    if expectation:
        assert isinstance(result, Tag)


@pytest.mark.parametrize(('fact', 'expectation'), (
    (Fact(Activity('foo', pk=1), dt.datetime(2017, 2, 1, 18), pk=1),
     DBusFact(1, '2017-02-01 18:00:00', '', '',
        DBusActivity(1, 'foo', DBusCategory(-2, ''), False),
        dbus.Array([], '(is)'))),
    (Fact(Activity('foo', pk=1), dt.datetime(2017, 2, 1, 18), pk=None),
     DBusFact(-1, '2017-02-01 18:00:00', '', '',
        DBusActivity(1, 'foo', DBusCategory(-2, ''), False),
        dbus.Array([], '(is)'))),
    (Fact(Activity('foo', pk=1), start=None, pk=None),
     DBusFact(-1, '', '', '',
        DBusActivity(1, 'foo', DBusCategory(-2, ''), False),
        dbus.Array([], '(is)'))),
))
def test_hamster_to_dbus_fact(fact, expectation):
    """Make sure that serialization works as intended."""
    result = helpers.hamster_to_dbus_fact(fact)
示例#5
0
 def test_update_tmp_fact(self, basestore, tmp_fact, new_fact_values):
     """Make sure the updated fact has the new values."""
     updated_fact = Fact(**new_fact_values(tmp_fact))
     result = basestore.facts.update_tmp_fact(updated_fact)
     assert result == updated_fact
示例#6
0
 def generate():
     activity = activity_factory()
     start, end = start_end_datetimes
     return Fact(activity, start, end, pk=None, description=description)