class_docstr: Class to run pre-defined method execution scenarios for objects.
  
  Parameters
  ----------
  args : dict of dict, default = None
      dict of argument dicts to be used in methods
      names for keys need not equal names of methods these are used in
          but scripted method will look at key with same name as default
      must be passed to constructor, set in a child class
          or dynamically created in get_args
  default_method_sequence : list of str, default = None
      default sequence for methods to be called
      optional, if given, default method sequence to use in `run`
      if not provided, at least one of the sequence arguments must be passed in `run`
          or default_arg_sequence must be provided
  default_arg_sequence : list of str, default = None
      default sequence of keys for keyword argument dicts to be used
      names for keys need not equal names of methods
      if not provided, at least one of the sequence arguments must be passed in `run`
          or default_method_sequence must be provided
  
  Methods
  -------
  run(obj, args=None, default_method_sequence=None)
      Run a call(args) scenario on obj, and retrieve method outputs.
  is_applicable(obj)
      Check whether scenario is applicable to obj.
  get_args(key, obj)
      Dynamically create args for call defined by key and obj.
      Defaults to self.args[key] if not overridden.
docstr: Check whether scenario is applicable to obj.
  
  Abstract method, children should implement. This just returns "true".
  
  Example for child class: scenario is univariate time series forecasting.
      Then, this returns False on multivariate, True on univariate forecasters.
  
  Parameters
  ----------
  obj : class or object to check against scenario
  
  Returns
  -------
  applicable: bool
      True if self is applicable to obj, False if not
      "applicable" is defined as the implementer chooses, as output of this method
          False is typically used as a "skip" flag in unit or integration testing
docstr_tok: ["Check","whether","scenario","is","applicable","to","obj",".","Abstract","method",",","children","should","implement",".","This","just","returns","``","true","''",".","Example","for","child","class",":","scenario","is","univariate","time","series","forecasting",".","Then",",","this","returns","False","on","multivariate",",","True","on","univariate","forecasters",".","Parameters","--","--","--","--","--","obj",":","class","or","object","to","check","against","scenario","Returns","--","--","--","-","applicable",":","bool","True","if","self","is","applicable","to","obj",",","False","if","not","``","applicable","''","is","defined","as","the","implementer","chooses",",","as","output","of","this","method","False","is","typically","used","as","a","``","skip","''","flag","in","unit","or","integration","testing"]
code: def is_applicable(self, obj):
      """Check whether scenario is applicable to obj.
  
      Abstract method, children should implement. This just returns "true".
  
      Example for child class: scenario is univariate time series forecasting.
          Then, this returns False on multivariate, True on univariate forecasters.
  
      Parameters
      ----------
      obj : class or object to check against scenario
  
      Returns
      -------
      applicable: bool
          True if self is applicable to obj, False if not
          "applicable" is defined as the implementer chooses, as output of this method
              False is typically used as a "skip" flag in unit or integration testing
      """
      return True
  
file_path: sktime/sktime/utils/_testing/scenarios.py
imports: from copy import deepcopy
  from inspect import isclass
label_desc: Use image node_id 4 for calling the TestScenario obj's underlying member method code with example usage: obj.is_applicable(obj) and returns: True