code: def test_filter_params_correctly(input_params, case, correct_keys):
      params_repository = get_api_params_repository()
      input_params = params_repository.check_and_set_default_params(
          input_params
      )
      if case == "composer":
          output_params = (
              params_repository.get_params_for_composer_requirements(
                  input_params
              )
          )
      elif case == "gp_algo":
          output_params = (
              params_repository.get_params_for_gp_algorithm_params(
                  input_params
              )
          )
      assert output_params.keys() <= correct_keys
      # check all correct parameter in input params are in output params
      assert (
          input_params.keys() & correct_keys
      ) <= output_params.keys()
  
file_path: FEDOT/test/unit/api/test_api_params.py
imports: import dataclasses
  from typing import Optional
  import pytest
  from golem.core.optimisers.genetic.gp_optimizer import EvoGraphOptimizer
  from golem.core.optimisers.genetic.gp_params import GPAlgorithmParameters
  from golem.core.optimisers.genetic.operators.inheritance import GeneticSchemeTypesEnum
  from fedot.api.api_utils.api_params_repository import ApiParamsRepository
  from fedot.core.constants import AUTO_PRESET_NAME
  from fedot.core.pipelines.pipeline_builder import PipelineBuilder
  from fedot.core.pipelines.pipeline_composer_requirements import PipelineComposerRequirements
  from fedot.core.repository.metrics_repository import RegressionMetricsEnum
  from fedot.core.repository.tasks import TaskTypesEnum
label_desc: Use image node_id 3 for calling a global function with example usage: test_filter_params_correctly(input_params, case, correct_keys) without return types