code: def test_pipeline_with_datamodel_fit_correct(data_setup):
      data = data_setup
      train_data, test_data = train_test_data_setup(data)
  
      pipeline = Pipeline()
  
      node_data = PipelineNode("logit")
      node_first = PipelineNode("bernb")
      node_second = PipelineNode("rf")
  
      node_second.nodes_from = [node_first, node_data]
  
      pipeline.add_node(node_data)
      pipeline.add_node(node_first)
      pipeline.add_node(node_second)
  
      pipeline.fit(train_data)
      results = np.asarray(
          probs_to_labels(pipeline.predict(test_data).predict)
      )
  
      # Target for current case must be column
      test_data.target = test_data.target.reshape((-1, 1))
      assert results.shape == test_data.target.shape
  
imports: import datetime
  import os
  import platform
  import time
  from copy import deepcopy
  from multiprocessing import set_start_method
  import numpy
  import pytest
  from sklearn.datasets import load_iris
  from fedot.core.data.data import InputData
  from fedot.core.data.data_split import train_test_data_setup
  from fedot.core.pipelines.node import PipelineNode
  from fedot.core.pipelines.pipeline import Pipeline
  from fedot.core.repository.dataset_types import DataTypesEnum
  from fedot.core.repository.tasks import Task, TaskTypesEnum, TsForecastingParams
  from fedot.core.utils import probs_to_labels
  from fedot.preprocessing.preprocessing import DataPreprocessor
  from test.integration.composer.test_composer import to_categorical_codes
  from test.integration.models.test_model import classification_dataset_with_redundant_features
  from test.unit.dag.test_graph_operator import get_pipeline
  from test.unit.pipelines.test_pipeline_comparison import pipeline_first
  from test.unit.tasks.test_forecasting import get_ts_data
label_desc: Use image node_id 7 for calling a global function with example usage: test_pipeline_with_datamodel_fit_correct(data_setup) without return types