Exemplo n.º 1
0
 def test_lazy_parent_is_not_none_but_returns_none_parent_lazy_is_set(self):
     # given
     def parent_source():
         return None
     # when
     task = Task('task', lazy={'parent': parent_source})
     # then
     self.assertIsNone(task._parent)
     self.assertIs(parent_source, task._parent_lazy)
     self.assertIsNone(task._parent_lazy())
Exemplo n.º 2
0
    def test_lazy_parent_returns_object_parent_lazy_is_set(self):
        # given
        parent = Task('parent')

        def parent_source():
            return parent
        # when
        task = Task('task', lazy={'parent': parent_source})
        # then
        self.assertIsNone(task._parent)
        self.assertIs(parent_source, task._parent_lazy)
        self.assertIs(parent, task._parent_lazy())
Exemplo n.º 3
0
    def test_accessing_parent_populates_it_and_removes_parent_lazy(self):
        # given
        parent = Task('parent')

        def parent_source():
            return parent
        task = Task('task', lazy={'parent': parent_source})
        # precondition
        self.assertIsNone(task._parent)
        self.assertIs(parent_source, task._parent_lazy)
        self.assertIs(parent, task._parent_lazy())
        # when
        result = task.parent
        # then
        self.assertIs(parent, result)
        self.assertIs(parent, task._parent)
        self.assertIsNone(task._parent_lazy)