public static Processor createProcessor(
            CamelContext camelContext, DynamicRouterConfiguration cfg,
            BiFunction<CamelContext, Expression, RecipientList> recipientListSupplier) {
        RecipientList recipientList = recipientListSupplier.apply(camelContext, RECIPIENT_LIST_EXPRESSION);
        setPropertiesForRecipientList(recipientList, camelContext, cfg);
        ExecutorService threadPool
                = getConfiguredExecutorService(camelContext, "RecipientList", cfg, cfg.isParallelProcessing());
        recipientList.setExecutorService(threadPool);
        recipientList.setShutdownExecutorService(
                willCreateNewThreadPool(camelContext, cfg, cfg.isParallelProcessing()));
        recipientList.start();
        return recipientList;
    }
@Test
    void testCreateProcessor() {
        when(camelContext.getExecutorServiceManager()).thenReturn(manager);
        when(mockRecipientListSupplier.apply(eq(camelContext), any(Expression.class))).thenReturn(recipientList);
        Processor processor
                = DynamicRouterRecipientListHelper.createProcessor(camelContext, mockConfig, mockRecipientListSupplier);
        Assertions.assertNotNull(processor);
    }