code: def setUp(self):
      self.schema = DEFAULT_SCHEMA()
      self.schema["properties"].update(
          {
              "param1": {"type": "string", "default": "default"},
              "param2": {"type": "integer", "default": 3},
              "param3": {"type": "number", "default": 5.9},
              "param4": {
                  "type": "integer",
                  "default": 33,
                  "minimum": 0,
                  "maximum": 100,
              },
              "param5": {"type": "boolean", "default": True},
          }
      )
  
      self.param_default = {
          "param1": "default",
          "param2": 3,
          "param3": 5.9,
          "param4": 33,
          "param5": True,
      }
  
      class ParamClass(HasParam):
          _schema = self.schema
  
          @store_parameters
          def __init__(
              self,
              param1=self.param_default["param1"],
              param2=self.param_default["param2"],
              param3=self.param_default["param3"],
              param4=self.param_default["param4"],
              param5=self.param_default["param5"],
          ):
              super(ParamClass, self).__init__()
  
      self.param_dict = {
          "param1": "",
          "param2": 0,
          "param3": 0.0,
          "param4": 3,
          "param5": False,
      }
      self.has_param_cls = ParamClass
  
file_path: TimeSide/tests/test_tools_parameters.py
imports: import unittest
  from unit_timeside import TestRunner
  from timeside.core.tools.parameters import HasParam, HasTraits
  from timeside.core.tools.parameters import Unicode, Int, Float, Range
  from timeside.core.tools.parameters import store_parameters
  from timeside.core.tools.parameters import DEFAULT_SCHEMA
  import simplejson
  from jsonschema import ValidationError
label_desc: Use image node_id 1 for calling the TestHasParam obj's underlying member method code with example usage: obj.setUp() without return types