コード例 #1
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_add_waiting_node_sync_nothing_wait(self):
        node = FileNode("part", "saver", "parent", "rel_path")
        fake_dir_node = FakeDirectoryNode()
        node.add_waiting_node(fake_dir_node)

        assert node.waiting_sync_node is fake_dir_node
        assert fake_dir_node.waiting_for_node is node
コード例 #2
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_remove_waiting_node_self_waiting(self):
        node = FileNode("part", "saver", "parent", "rel_path")
        node.add_waiting_node(node)
        node.remove_waiting_node(node)

        assert node.waiting_sync_node is None
        assert not node.self_waiting
        assert node.waiting_for_node is None
コード例 #3
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_remove_waiting_node_node_waits_for_a_sync(self):
        node = FileNode("part", "saver", "parent", "rel_path")
        fake_dir_node = FakeDirectoryNode()
        node.waiting_for_node = fake_dir_node
        node.remove_waiting_node(42)

        assert len(fake_dir_node.removed_nodes) == 1
        assert 42 in fake_dir_node.removed_nodes
コード例 #4
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_set_prior_waiting_to_another_node(self):
        node = FileNode("part", "saver", "parent", "rel_path")
        fake_dir_node = FakeDirectoryNode()
        node.waiting_for_node = fake_dir_node
        node.set_prior()

        assert len(fake_dir_node.prior_nodes) == 1
        assert node in fake_dir_node.prior_nodes
コード例 #5
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_unlock_not_locked(self):
        fake_saver = FakeIndexSaver()
        node = FileNode("part", fake_saver, "parent", "rel_path")
        node.set_hash("local", "remote")
        node.unlock()

        assert node.lock_owner is None
        assert node.local_md5 == "local"
コード例 #6
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_remove_waiting_node_sync_waiting(self):
        node = FileNode("part", "saver", "parent", "rel_path")
        fake_dir_node = FakeDirectoryNode()
        node.add_waiting_node(fake_dir_node)
        node.remove_waiting_node(fake_dir_node)

        assert node.waiting_sync_node is None
        assert not node.self_waiting
        assert fake_dir_node.waiting_for_node is None
コード例 #7
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_trigger_self_and_sync_to_trigger(self):
        node = FileNode("part", "saver", "parent", "rel_path")
        node.self_waiting = False
        fake_node = FakeDirectoryNode()
        node.waiting_sync_node = fake_node

        node.trigger_waiting_nodes()

        assert node.waiting_sync_node is None
        assert fake_node.triggered
コード例 #8
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_add_waiting_node_self_sync_wait_and_prior(self):
        node = FileNode("part", "saver", "parent", "rel_path")
        fake_dir_node = FakeDirectoryNode()
        node.waiting_sync_node = fake_dir_node

        node.add_waiting_node(node, prior_node=True)

        assert len(fake_dir_node.waiting_nodes) == 0
        assert node.self_waiting
        assert node.waiting_for_node is node
コード例 #9
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_add_waiting_node_self_sync_wait(self):
        node = FileNode("part", "saver", "parent", "rel_path")
        fake_dir_node = FakeDirectoryNode()
        node.waiting_sync_node = fake_dir_node

        node.add_waiting_node(node)

        assert len(fake_dir_node.waiting_nodes) == 1
        assert fake_dir_node.waiting_nodes[0] == (node, False)
        assert node.waiting_for_node is None
コード例 #10
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_set_hash(self):
        fake_saver = FakeIndexSaver()
        node = FileNode("part", fake_saver, "parent", "rel_path")
        assert fake_saver.triggered == 0
        assert node.local_md5 is None
        assert node.remote_md5 is None

        node.set_hash("local", "remote")

        assert fake_saver.triggered == 1
        assert node.local_md5 == "local"
        assert node.remote_md5 == "remote"
コード例 #11
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_invalidate_remote_not_locked(self):
        fake_saver = FakeIndexSaver()
        node = FileNode("part", fake_saver, "parent", "rel_path")
        node.set_hash("local", "remote")

        node.invalidate_remote()
        assert node.remote_md5 is None
        assert not node.do_invalidate_remote
        assert not node.is_invalidate_local()
        assert node.is_invalidate_remote()
コード例 #12
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_trigger_self_to_trigger(self):
        node = FileNode("part", "saver", "parent", "rel_path")
        node.self_waiting = True
        fake_task = FakeTask()
        node.waiting_task = fake_task
        node.waiting_task_callback = fake_task.callback
        node.waiting_for_node = self
        node.trigger_waiting_nodes()

        assert node.waiting_task is None
        assert node.waiting_task_callback is None
        assert node.waiting_for_node is None
        assert not node.self_waiting
        assert fake_task.callback_called
コード例 #13
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_set_prior_on_sync_sync_prior(self):
        node = FileNode("part", "saver", "parent", "rel_path")
        fake_dir_node = FakeDirectoryNode()

        node.add_waiting_node(node)
        node.add_waiting_node(fake_dir_node, prior_node=True)

        node.set_prior(fake_dir_node)

        assert len(fake_dir_node.waiting_nodes) == 1
        assert fake_dir_node.waiting_nodes[0] == (node, False)
        assert len(fake_dir_node.removed_nodes) == 0

        assert not node.self_waiting
        assert node.waiting_sync_node is fake_dir_node
コード例 #14
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_traverse_node_included(self):
        node = FileNode("part", "saver", "parent", "rel_path")
        result = list(node.traverse())

        assert len(result) == 1
        assert node in result
コード例 #15
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
 def test_set_prior_no_waiting(self):
     node = FileNode("part", "saver", "parent", "rel_path")
     node.set_prior()
コード例 #16
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
    def test_traverse_node_excluded(self):
        node = FileNode("part", "saver", "parent", "rel_path")

        result = list(node.traverse(collect=lambda x: False))
        assert len(result) == 0
コード例 #17
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
 def test_is_removable1(self):
     node = FileNode("part", "saver", "parent", "rel_path")
     assert node.is_removable()
コード例 #18
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
 def test_is_removable2(self):
     fake_saver = FakeIndexSaver()
     node = FileNode("part", fake_saver, "parent", "rel_path")
     node.set_hash("local", "remote")
     assert not node.is_removable()
コード例 #19
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
 def test_add_waiting_node_self_nothing_wait(self):
     node = FileNode("part", "saver", "parent", "rel_path")
     node.add_waiting_node(node)
     assert node.self_waiting
     assert node.waiting_for_node is node
コード例 #20
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
 def test_invalidate_at_create(self):
     fake_saver = FakeIndexSaver()
     node = FileNode("part", fake_saver, "parent", "rel_path")
     assert node.is_invalidate_local()
     assert node.is_invalidate_remote()
コード例 #21
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
 def test_trigger_nothing_to_trigger(self):
     node = FileNode("part", "saver", "parent", "rel_path")
     node.trigger_waiting_nodes()
コード例 #22
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
 def test_is_removable4(self):
     node = FileNode("part", "saver", "parent", "rel_path")
     node.waiting_sync_node = 42
     assert not node.is_removable()
コード例 #23
0
ファイル: index_node_test.py プロジェクト: Bajoo/client-pc
 def test_is_removable3(self):
     node = FileNode("part", "saver", "parent", "rel_path")
     node.self_waiting = True
     assert not node.is_removable()