code: def test_duplicate_init(self):
      @signature_has_traits
      class Foo(HasTraits):
          number1 = Int()
          number2 = Int()
  
          def __init__(self, number1, **kwargs):
              self.test = number1
  
              super().__init__(number1=number1, **kwargs)
  
      parameters = signature(Foo).parameters
      parameter_names = list(parameters)
  
      self.assertListEqual(
          parameter_names, ["number1", "number2", "kwargs"]
      )
  
      f = Foo(number1=32, number2=36)
      self.assertEqual(f.test, 32)
      self.assertEqual(f.number1, 32)
      self.assertEqual(f.number2, 36)
  
file_path: catboost/contrib/python/traitlets/py3/tests/utils/test_decorators.py
imports: from inspect import Parameter, signature
  from unittest import TestCase
  from traitlets import HasTraits, Int, Unicode
  from traitlets.utils.decorators import signature_has_traits
label_desc: Use image node_id 3 for calling the TestExpandSignature obj's underlying member method code with example usage: obj.test_duplicate_init() without return types