Example #1
0
    def test_want_method_should_accept_on_either_nodes_but_not_both(self):
        plugin = ParallelPlugin()
        plugin.strategy = "METHOD"
        plugin.salt = "test"
        plugin.total_nodes = 2

        plugin.node_index = 0
        rv0 = plugin.wantMethod(self.f)

        plugin.node_index = 1
        rv1 = plugin.wantMethod(self.f)

        self.assertEqual({None, False}, {rv0, rv1})
Example #2
0
    def test_want_file_should_accept_on_either_nodes_but_not_both(self):
        file = "file"

        plugin = ParallelPlugin()
        plugin.strategy = "FILE"
        plugin.salt = "test"
        plugin.total_nodes = 2

        plugin.node_index = 0
        rv0 = plugin.wantFile(file)

        plugin.node_index = 1
        rv1 = plugin.wantFile(file)

        self.assertEqual({None, False}, {rv0, rv1})
Example #3
0
    def test_want_directory_should_accept_on_either_nodes_but_not_both(self):
        directory = "dir"

        plugin = ParallelPlugin()
        plugin.strategy = "DIRECTORY"
        plugin.salt = "test"
        plugin.total_nodes = 2

        plugin.node_index = 0
        rv0 = plugin.wantDirectory(directory)

        plugin.node_index = 1
        rv1 = plugin.wantDirectory(directory)

        self.assertEqual({None, False}, {rv0, rv1})
Example #4
0
    def test_want_module_should_accept_on_either_nodes_but_not_both(self):
        def f():
            pass

        plugin = ParallelPlugin()
        plugin.strategy = "MODULE"
        plugin.salt = "test"
        plugin.total_nodes = 2

        plugin.node_index = 0
        rv0 = plugin.wantModule(f)

        plugin.node_index = 1
        rv1 = plugin.wantModule(f)

        self.assertEqual({None, False}, {rv0, rv1})
Example #5
0
    def test_want_class_should_accept_on_either_nodes_but_not_both(self):
        class TestClass(unittest.TestCase):
            def test_method(self):
                pass

        plugin = ParallelPlugin()
        plugin.strategy = "CLASS"
        plugin.salt = "test"
        plugin.total_nodes = 2

        plugin.node_index = 0
        rv0 = plugin.wantClass(TestClass.__class__)

        plugin.node_index = 1
        rv1 = plugin.wantClass(TestClass.__class__)

        self.assertEqual({None, False}, {rv0, rv1})
Example #6
0
    def test_want_function_should_accept_on_either_nodes_but_not_both(self):
        def f():
            pass

        plugin = ParallelPlugin()
        plugin.salt = 'test'
        plugin.total_nodes = 2

        plugin.node_index = 0
        rv0 = plugin.wantFunction(f)

        plugin.node_index = 1
        rv1 = plugin.wantFunction(f)

        self.assertEqual({None, False}, {rv0, rv1})
Example #7
0
    def test_want_method_should_accept_on_either_nodes_but_not_both(self):
        plugin = ParallelPlugin()
        plugin.salt = 'test'
        plugin.total_nodes = 2

        plugin.node_index = 0
        rv0 = plugin.wantMethod(self.f)

        plugin.node_index = 1
        rv1 = plugin.wantMethod(self.f)

        self.assertEqual({None, False}, {rv0, rv1})
Example #8
0
    def test_want_function_should_accept_on_either_nodes_but_not_both(self):

        def f():
            pass

        plugin = ParallelPlugin()
        plugin.salt = 'test'
        plugin.total_nodes = 2

        plugin.node_index = 0
        rv0 = plugin.wantFunction(f)

        plugin.node_index = 1
        rv1 = plugin.wantFunction(f)

        self.assertEqual({None, False}, {rv0, rv1})
Example #9
0
    def test_want_method_should_accept_on_either_nodes_but_not_both(self):
        plugin = ParallelPlugin()
        plugin.salt = 'test'
        plugin.total_nodes = 2

        plugin.node_index = 0
        rv0 = plugin.wantMethod(Foo.method)

        plugin.node_index = 1
        rv1 = plugin.wantMethod(Foo.method)

        self.assertEqual({None, False}, {rv0, rv1})

        plugin.node_index = 0
        f2_v0 = plugin.wantMethod(Foo2.method)
        plugin.node_index = 1
        f2_v1 = plugin.wantMethod(Foo2.method)
        self.assertEqual({None, False}, {f2_v0, f2_v1})
        # Foo2.method should hash to a different node from Foo.method
        # this depends on the hash function
        self.assertNotEqual(f2_v0, rv0)