Пример #1
0
    def setUpClass(cls):
        super(Test1ToNTest, cls).setUpClass()
        print("Start of tests: preparing nifi objects")
        config.nifi_config.host = 'http://192.168.56.5:8080/nifi-api'

        flow_name = "Test1ToNTest"

        nav = CanvasNavigator()
        # Delete all leftovers from previous (failed?) tests
        pgs_to_be_deleted = nav.groups(flow_name)
        for pg in pgs_to_be_deleted:
            canvas.delete_process_group(pg, force=True)
        # Create new process group in root
        Test1ToNTest.pg_test = canvas.create_process_group(nav.current, flow_name, (0, 0))

        # Create simple flow to test
        Test1ToNTest.proc_start = canvas.create_processor(
            Test1ToNTest.pg_test,
            canvas.get_processor_type("GenerateFlowFile"),
            CANVAS_CENTER,
            "Start")
        Test1ToNTest.proc_2 = canvas.create_processor(
            Test1ToNTest.pg_test,
            canvas.get_processor_type("DebugFlow"),
            CANVAS_CENTER,
            "Processor 2")
        Test1ToNTest.proc_3 = canvas.create_processor(
            Test1ToNTest.pg_test,
            canvas.get_processor_type("DebugFlow"),
            CANVAS_CENTER,
            "Processor 3")
        Test1ToNTest.proc_end_1 = canvas.create_processor(
            Test1ToNTest.pg_test,
            canvas.get_processor_type("DebugFlow"),
            CANVAS_CENTER,
            "End 1")
        Test1ToNTest.proc_end_2 = canvas.create_processor(
            Test1ToNTest.pg_test,
            canvas.get_processor_type("DebugFlow"),
            CANVAS_CENTER,
            "End 2")
        canvas.update_processor(Test1ToNTest.proc_end_1,
                                nifi.ProcessorConfigDTO(auto_terminated_relationships=["success", "failure"]))
        canvas.update_processor(Test1ToNTest.proc_end_2,
                                nifi.ProcessorConfigDTO(auto_terminated_relationships=["success", "failure"]))
        Test1ToNTest.conn_1 = canvas.create_connection(Test1ToNTest.proc_start, Test1ToNTest.proc_2, ["success"])
        Test1ToNTest.conn_2 = canvas.create_connection(Test1ToNTest.proc_2, Test1ToNTest.proc_3, ["success", "failure"])
        Test1ToNTest.conn_3 = canvas.create_connection(Test1ToNTest.proc_3, Test1ToNTest.proc_end_1, ["success", "failure"])
        Test1ToNTest.conn_4 = canvas.create_connection(Test1ToNTest.proc_3, Test1ToNTest.proc_end_2, ["success", "failure"])

        canvas.schedule_process_group(Test1ToNTest.pg_test.component.id, scheduled=True)
    def setUpClass(cls):
        super(CanvasNavigatorTest, cls).setUpClass()
        print("Start of tests: preparing nifi objects")
        config.nifi_config.host = 'http://192.168.56.5:8080/nifi-api'

        root = canvas.get_process_group(canvas.get_root_pg_id(), 'id')
        # Create new process group in root
        CanvasNavigatorTest.pg_parent = canvas.create_process_group(
            root, "parent", CANVAS_CENTER)
        # Create new child process groups in unittest
        CanvasNavigatorTest.pg_child1 = canvas.create_process_group(
            CanvasNavigatorTest.pg_parent, "child1", CANVAS_CENTER)
        CanvasNavigatorTest.pg_child2 = canvas.create_process_group(
            CanvasNavigatorTest.pg_parent, "child2", CANVAS_CENTER)
        CanvasNavigatorTest.pg_child2_2 = canvas.create_process_group(
            CanvasNavigatorTest.pg_parent, "child2", CANVAS_CENTER)
        CanvasNavigatorTest.pg_grandchild1 = canvas.create_process_group(
            CanvasNavigatorTest.pg_child1, "grandchild1", CANVAS_CENTER)

        # Create other objects as well
        CanvasNavigatorTest.proc = canvas.create_processor(
            CanvasNavigatorTest.pg_parent,
            canvas.get_processor_type("GenerateFlowFile"), CANVAS_CENTER,
            "proc")
        CanvasNavigatorTest.input_port = canvas.create_port(
            CanvasNavigatorTest.pg_parent.component.id, "INPUT_PORT",
            "input_port", "STOPPED", CANVAS_CENTER)
        CanvasNavigatorTest.output_port = canvas.create_port(
            CanvasNavigatorTest.pg_parent.component.id, "OUTPUT_PORT",
            "output_port", "STOPPED", CANVAS_CENTER)
        CanvasNavigatorTest.controller = canvas.create_controller(
            CanvasNavigatorTest.pg_parent,
            canvas.list_all_controller_types()[0], "controller")
Пример #3
0
def test_create_processor(regress_nifi, fix_pg):
    f_pg = fix_pg.generate()
    r1 = canvas.create_processor(
        parent_pg=f_pg,
        processor=canvas.get_processor_type('GenerateFlowFile'),
        location=(400.0, 400.0),
        name=conftest.test_processor_name)
    assert isinstance(r1, nifi.ProcessorEntity)
    assert r1.status.name == conftest.test_processor_name
Пример #4
0
def test_create_processor(fixture_pg, regress):
    test_pg = fixture_pg.generate()
    r1 = canvas.create_processor(
        parent_pg=test_pg,
        processor=canvas.get_processor_type('ListenSyslog'),
        location=(400.0, 400.0),
        name=config.test_processor_name)
    assert isinstance(r1, nifi.ProcessorEntity)
    assert r1.status.name == config.test_processor_name
Пример #5
0
    def create(self, processor_type):
        processor = canvas.create_processor(parent_pg=self.group,
                                            processor=processor_type,
                                            location=self.location,
                                            name=self.name,
                                            config=self.config)
        self.id = processor.id

        return processor
Пример #6
0
def create_processor(pg, name, processor_types, position, cfg):
    if isinstance(processor_types, str):
        processor_types = [processor_types]
    all_proc_types = canvas.list_all_processor_types().processor_types
    for processor_type in processor_types:
        choosen_type = [p for p in all_proc_types if p.type == processor_type]
        if choosen_type:
            return canvas.create_processor(pg, choosen_type[0], position, name,
                                           cfg)
    raise RuntimeError("Processor types {} not found in available list: {}",
                       processor_types, [p.type for p in all_proc_types])
Пример #7
0
def test_get_component_connections(regress_nifi, fix_proc):
    f_p1 = fix_proc.generate()
    f_p2 = fix_proc.generate()
    f_p3 = canvas.create_processor(
        parent_pg=canvas.get_process_group(canvas.get_root_pg_id(), 'id'),
        processor=canvas.get_processor_type('AttributesToJSON'),
        location=(400.0, 425.0),
        name=conftest.test_processor_name + '_inbound')
    canvas.create_connection(f_p1, f_p3, name=conftest.test_basename)
    canvas.create_connection(f_p2, f_p3, name=conftest.test_basename)
    r1 = canvas.get_component_connections(f_p1)
    assert len(r1) == 1
    assert r1[0].source_id == f_p1.id
    r2 = canvas.get_component_connections(f_p3)
    assert len(r2) == 2
    assert r2[0].destination_id == f_p3.id
    assert r2[1].source_id in [f_p1.id, f_p2.id]
Пример #8
0
def create_processor(pg, name, processor_type, position, config):
    proc_type = canvas.get_processor_type(processor_type,
                                          identifier_type='name')
    return canvas.create_processor(pg, proc_type, position, name, config)