code: def testCall_ArgConversion(self):
      holder = []
  
      @resolver_function.resolver_function(output_type={"x": X})
      def resolve(*args, **kwargs):
          holder.append((args, kwargs))
          return DummyNode(resolver_op.DataType.ARTIFACT_MULTIMAP)
  
      resolve(
          {"x": DummyChannel(X)},  # args[0],
          "hello",  # args[1]
          DummyChannel(X),  # args[2]
          x="x",  # kwargs['x']
          y=DummyChannel(Y),  # kwargs['y']
      )
  
      args, kwargs = holder[0]
  
      with self.subTest("args[0]", value=args[0]):
          self.assertIsInstance(args[0], resolver_op.DictNode)
          self.assertEqual(
              args[0].nodes,
              {"x": resolver_op.InputNode(DummyChannel(X))},
          )
          self.assertEqual(
              args[0].output_data_type,
              resolver_op.DataType.ARTIFACT_MULTIMAP,
          )
  
      with self.subTest("args[1]", value=args[1]):
          self.assertIsInstance(args[1], str)
          self.assertEqual(args[1], "hello")
  
      with self.subTest("args[2]", value=args[2]):
          self.assertIsInstance(args[2], resolver_op.InputNode)
          self.assertEqual(args[2].wrapped, DummyChannel(X))
          self.assertEqual(
              args[2].output_data_type,
              resolver_op.DataType.ARTIFACT_LIST,
          )
  
      with self.subTest("kwargs[x]", value=kwargs["x"]):
          self.assertEqual(kwargs["x"], "x")
  
      with self.subTest("kwargs[y]", value=kwargs["y"]):
          self.assertIsInstance(kwargs["y"], resolver_op.InputNode)
          self.assertEqual(kwargs["y"].wrapped, DummyChannel(Y))
  
imports: from typing import Mapping, Set
  import tensorflow
  from tfx.dsl.control_flow import for_each
  from tfx.dsl.control_flow import for_each_internal
  from tfx.dsl.input_resolution import resolver_function
  from tfx.dsl.input_resolution import resolver_op
  import tfx.types
  from tfx.types import resolved_channel
  from tfx.utils import typing_utils
label_desc: Use image node_id 8 for calling the ResolverFunctionTest obj's underlying member method code with example usage: obj.testCall_ArgConversion() and returns: DummyNode