Exemple #1
0
    def test_tasks_with_tags_return_those_tags_values(self):
        # given
        t1 = Task('t1')
        tag1 = Tag('tag1')
        t1.tags.append(tag1)
        t2 = Task('t2')
        tag2 = Tag('tag2')
        t2.tags.append(tag1)
        t2.tags.append(tag2)

        self.pl.create_all()
        self.pl.add(t1)
        self.pl.add(t2)
        self.pl.add(tag1)
        self.pl.add(tag2)
        self.pl.commit()

        # when
        result = set(t1.get_tag_values())

        # then
        self.assertEqual({tag1.value}, result)

        # when
        result = set(t2.get_tag_values())

        # then
        self.assertEqual({tag1.value, tag2.value}, result)
Exemple #2
0
 def test_lazy_overrides_non_lazy_tags(self):
     # given
     tag = Tag('tag')
     tag2 = Tag('tag2')
     # when
     result = Task.from_dict({'tags': [tag]}, lazy={'tags': [tag2]})
     # then
     self.assertIsInstance(result, Task)
     self.assertEqual([tag2], list(result.tags))
Exemple #3
0
 def test_generates_str_string(self):
     # given
     tag = Tag(value='value')
     tag.id = 123
     #when
     r = str(tag)
     # then
     fmt = 'Tag(\'value\', tag id=123, id=[{}])'
     expected = fmt.format(id(tag))
     self.assertEqual(expected, r)
Exemple #4
0
 def test_to_dict_returns_correct_values(self):
     # when
     tag = Tag('name', '12345')
     # then
     self.assertEqual(
         {
             'value': 'name',
             'description': '12345',
             'id': None,
             'tasks': []
         }, tag.to_dict())
Exemple #5
0
 def test_any_lazy_overrides_all_non_lazy_properties(self):
     # given
     task = Task('task')
     # when
     result = Tag.from_dict({'tasks': [task]}, lazy={'x': 123})
     # then
     self.assertEqual(result.object_type, ObjectTypes.Tag)
     self.assertEqual([], list(result.tasks))
Exemple #6
0
 def test_tasks_non_empty_yields_same(self):
     # given
     task = Task('task')
     # when
     result = Tag.from_dict({'tasks': [task]})
     # then
     self.assertEqual(result.object_type, ObjectTypes.Tag)
     self.assertEqual([task], list(result.tasks))
Exemple #7
0
 def test_tags_non_empty_yields_same(self):
     # given
     tag = Tag('tag')
     # when
     result = Task.from_dict({'tags': [tag]})
     # then
     self.assertIsInstance(result, Task)
     self.assertEqual([tag], list(result.tags))
Exemple #8
0
 def test_lazy_overrides_non_lazy_tasks(self):
     # given
     task = Task('task')
     task2 = Task('task2')
     # when
     result = Tag.from_dict({'tasks': [task]}, lazy={'tasks': [task2]})
     # then
     self.assertEqual(result.object_type, ObjectTypes.Tag)
     self.assertEqual([task2], list(result.tasks))
Exemple #9
0
 def test_empty_yields_empty_dbtag(self):
     # when
     result = Tag.from_dict({})
     # then
     self.assertEqual(result.object_type, ObjectTypes.Tag)
     self.assertIsNone(result.id)
     self.assertIsNone(result.value)
     self.assertIsNone(result.description)
     self.assertEqual([], list(result.tasks))
Exemple #10
0
 def test_valid_id_gets_set(self):
     # when
     result = Tag.from_dict({'id': 123})
     # then
     self.assertEqual(result.object_type, ObjectTypes.Tag)
     self.assertEqual(123, result.id)
Exemple #11
0
 def test_constructor_default_id_is_none(self):
     # when
     tag = Tag('name', 'description')
     # then
     self.assertIsNone(tag.id)
Exemple #12
0
 def test_valid_value_gets_set(self):
     # when
     result = Tag.from_dict({'value': 'abc'})
     # then
     self.assertEqual(result.object_type, ObjectTypes.Tag)
     self.assertEqual('abc', result.value)
Exemple #13
0
 def test_constructor_sets_description(self):
     # when
     tag = Tag('name', 'description')
     # then
     self.assertEqual('description', tag.description)
Exemple #14
0
 def create_tag(self, value, description=None, lazy=None):
     return Tag(value=value, description=description, lazy=lazy)
Exemple #15
0
 def setUp(self):
     self.task = Task('task')
     self.tag = Tag('tag')
Exemple #16
0
 def test_description_none_becomes_none(self):
     # when
     result = Tag.from_dict({'description': None})
     # then
     self.assertEqual(result.object_type, ObjectTypes.Tag)
     self.assertIsNone(result.description)
Exemple #17
0
 def test_valid_description_gets_set(self):
     # when
     result = Tag.from_dict({'description': 'abc'})
     # then
     self.assertEqual(result.object_type, ObjectTypes.Tag)
     self.assertEqual('abc', result.description)
Exemple #18
0
 def test_value_none_is_ignored(self):
     # when
     result = Tag.from_dict({'value': None})
     # then
     self.assertEqual(result.object_type, ObjectTypes.Tag)
     self.assertIsNone(result.value)
Exemple #19
0
 def test_tasks_empty_yields_empty(self):
     # when
     result = Tag.from_dict({'tasks': []})
     # then
     self.assertEqual(result.object_type, ObjectTypes.Tag)
     self.assertEqual([], list(result.tasks))