code: def test_scheduled_pruner(
      model_type: str, prune_type: str, sub_prune_type: str
  ):
      model, config_list_dict, dummy_input = create_model(model_type)
      if model_type == "lightning":
          evaluator = create_lighting_evaluator()
      elif model_type == "pytorch":
          evaluator = create_pytorch_evaluator(model)
  
      config_list = config_list_dict["pruning"]
      config_list = auto_set_denpendency_group_ids(
          model, config_list, dummy_input
      )
      if sub_prune_type in ["slim", "taylor"]:
          sub_pruner = pruner_dict[sub_prune_type](
              model, config_list, evaluator=evaluator, training_steps=10
          )
          pruner = pruner_dict[prune_type](
              sub_pruner, interval_steps=10, total_times=10
          )
      else:
          sub_pruner = pruner_dict[sub_prune_type](model, config_list)
          pruner = pruner_dict[prune_type](
              sub_pruner,
              interval_steps=10,
              total_times=10,
              evaluator=evaluator,
          )
      pruner.compress(100, None)
      pruner.unwrap_model()
  
      masks = pruner.get_masks()
      check_masks(masks, model_type)
  
      pruned_model = ModelSpeedup(
          model, dummy_input, masks
      ).speedup_model()
      ori_model, _, _ = create_model(model_type)
      check_pruned_simple_model(
          pruned_model, ori_model, dummy_input, model_type
      )
  
file_path: nni/test/algo/compression/pruning/test_pruner.py
imports: import pytest
  from typing import Dict, Type
  import torch
  from nni.compression.pruning import LevelPruner, L1NormPruner, L2NormPruner, FPGMPruner, SlimPruner, TaylorPruner, MovementPruner, LinearPruner, AGPPruner
  from nni.compression.base.compressor import Pruner
  from nni.compression.utils import auto_set_denpendency_group_ids
  from nni.compression.speedup import ModelSpeedup
  from ..assets.common import create_model
  from ..assets.simple_mnist import create_lighting_evaluator, create_pytorch_evaluator
label_desc: Use image node_id 6 for calling a global function with example usage: test_scheduled_pruner(model_type, prune_type, sub_prune_type) without return types