Ejemplo n.º 1
0
def test_get_variable_registry(fix_pg):
    test_pg = fix_pg.generate()
    r1 = canvas.get_variable_registry(test_pg)
    assert isinstance(r1, nifi.VariableRegistryEntity)
    with pytest.raises(ValueError, match='Unable to locate group with id'):
        canvas.delete_process_group(test_pg)
        _ = canvas.get_variable_registry(test_pg)
Ejemplo n.º 2
0
 def __delete_test_group(self):
     nav = CanvasNavigator()
     nav.cd_to_id(self.base.component.id)
     pgs = nav.groups(self.name)
     for pg in pgs:
         canvas.delete_process_group(pg, True)
     self.test_group = None
Ejemplo n.º 3
0
def test_delete_process_group(fixture_pg, regress, fixture_processor):
    # Delete stopped PG
    pg_1 = fixture_pg.generate()
    r1 = canvas.delete_process_group(pg_1.id, pg_1.revision)
    assert r1.id == pg_1.id
    assert r1.status is None
    # Test deleting a running PG
    pg_2 = fixture_pg.generate()
    p_1 = fixture_processor.generate(parent_pg=pg_2)
    canvas.schedule_process_group(pg_2.id, 'RUNNING')
    with pytest.raises(ValueError):
        _ = canvas.delete_process_group(pg_2.id, pg_2.revision)
Ejemplo n.º 4
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)
Ejemplo n.º 5
0
def test_delete_process_group(regress_nifi, fix_pg, fix_proc):
    # Delete stopped PG
    f_pg1 = fix_pg.generate()
    r1 = canvas.delete_process_group(f_pg1)
    assert r1.id == f_pg1.id
    assert r1.status is None
    # Test deleting a running PG
    pg_2 = fix_pg.generate()
    _ = fix_proc.generate(parent_pg=pg_2)
    canvas.schedule_process_group(pg_2.id, True)
    with pytest.raises(ValueError):
        _ = canvas.delete_process_group(pg_2)
    # Once more with feeling
    r2 = canvas.delete_process_group(pg_2, force=True)
    assert r2.status is None
Ejemplo n.º 6
0
def test_delete_controller(regress_nifi, fix_pg, fix_cont):
    f_pg = fix_pg.generate()
    f_c1 = fix_cont(parent_pg=f_pg)
    r1 = canvas.delete_controller(f_c1)
    assert r1.revision is None
    f_c2 = fix_cont(parent_pg=f_pg)
    f_c2 = canvas.update_controller(
        f_c2, nifi.ControllerServiceDTO(properties={'Server Hostname': 'Bob'}))
    f_c2 = canvas.schedule_controller(f_c2, True)
    with pytest.raises(AssertionError):
        _ = canvas.delete_controller('pie')
    with pytest.raises(AssertionError):
        _ = canvas.delete_controller(f_c2, 'pie')
    with pytest.raises(ValueError):
        _ = canvas.delete_controller(f_c2)
    assert f_c2.revision is not None
    r2 = canvas.delete_controller(f_c2, True)
    assert r2.revision is None
    # Test for only delete within a PG
    f_c_root = fix_cont()
    f_c_pg = fix_cont(parent_pg=f_pg)
    r3 = canvas.delete_process_group(f_pg)
    assert r3.revision is None
    r4 = canvas.get_controller(identifier=f_c_root.id, identifier_type='id')
    assert r4.revision is not None
Ejemplo n.º 7
0
def nifi_delete_all(pg):
    canvas.schedule_process_group(pg.id, False)
    for conn in canvas.list_all_connections(pg.id):
        LOG.debug('Connection: ' + conn.id)
        canvas.delete_connection(conn, purge=True)
    for input_port in canvas.list_all_input_ports(pg.id):
        LOG.debug('Input Port: ' + input_port.id)
        canvas.delete_port(input_port)
    for output_port in canvas.list_all_output_ports(pg.id):
        LOG.debug('Output Port: ' + output_port.id)
        canvas.delete_port(output_port)
    for funnel in canvas.list_all_funnels(pg.id):
        LOG.debug('Funnel: ' + funnel.id)
        canvas.delete_funnel(funnel)
    for processor in canvas.list_all_processors(pg.id):
        LOG.debug('Processor: ' + processor.id)
        canvas.delete_processor(processor, force=True)
    for process_group in canvas.list_all_process_groups(pg.id):
        if pg.id == process_group.id:
            continue
        LOG.debug('Process Group: ' + process_group.id)
        nifi_delete_all(process_group)
        canvas.delete_process_group(process_group, force=True)
Ejemplo n.º 8
0
def test_delete_process_group(fixture_pg, regress):
    single_pg = fixture_pg.generate()
    r = canvas.delete_process_group(single_pg.id, single_pg.revision)
    assert r.id == single_pg.id
    assert r.status is None
 def tearDownClass(cls):
     print("Tests done: deleting nifi objects")
     canvas.delete_controller(
         canvas.get_controller(CanvasNavigatorTest.controller.component.id,
                               'id'), True)
     canvas.delete_process_group(CanvasNavigatorTest.pg_parent, True)
Ejemplo n.º 10
0
 def tearDownClass(cls):
     print("Tests done: deleting nifi objects")
     canvas.delete_process_group(Test1To1Test.pg_test, force=True)