code: def test_data_model_types_forecasting_pipeline_fit():
      train_data, test_data = get_ts_data(
          n_steps=200, forecast_length=10
      )
  
      pipeline = get_multiscale_pipeline()
      pipeline.fit(train_data)
      pipeline.save("data_model_forecasting", create_subdir=False)
  
      expected_len_nodes = pipeline.length
      actual_len_nodes = len(
          PipelineTemplate(pipeline).operation_templates
      )
  
      assert actual_len_nodes == expected_len_nodes
  
imports: import json
  import os
  import shutil
  import numpy
  import pytest
  from sklearn.metrics import mean_absolute_error
  from fedot import Fedot
  from fedot.core.pipelines.node import PipelineNode
  from fedot.core.pipelines.pipeline import Pipeline
  from fedot.core.pipelines.template import PipelineTemplate, extract_subtree_root
  from fedot.core.repository.tasks import Task, TaskTypesEnum
  from fedot.core.utils import fedot_project_root
  from test.integration.api.test_main_api import get_dataset
  from test.unit.data_operations.test_data_operations_implementations import get_mixed_data
  from test.unit.multimodal.data_generators import get_single_task_multimodal_tabular_data
  from test.unit.pipelines.test_decompose_pipelines import get_classification_data
  from test.unit.preprocessing.test_preprocessing_through_api import data_with_spaces_and_nans_in_features
  from test.unit.tasks.test_forecasting import get_multiscale_pipeline, get_simple_ts_pipeline, get_ts_data
label_desc: Use image node_id 22 for calling a global function with example usage: test_data_model_types_forecasting_pipeline_fit() without return types