class_docstr: A parameter that is optional in `combine()` and in the test signature.
  
  `OptionalParameter` is usually used with `TestCombination` in the
  `parameter_modifiers()`. It allows `TestCombination` to skip certain
  parameters when passing them to `combine()`, since the `TestCombination` might
  consume the param and create some context based on the value it gets.
  
  See the sample usage below:
  
  ```
  class EagerGraphCombination(TestCombination):
  
    def context_managers(self, kwargs):
      mode = kwargs.pop("mode", None)
      if mode is None:
        return []
      elif mode == "eager":
        return [context.eager_mode()]
      elif mode == "graph":
        return [ops.Graph().as_default(), context.graph_mode()]
      else:
        raise ValueError(
            "'mode' has to be either 'eager' or 'graph', got {}".format(mode))
  
    def parameter_modifiers(self):
      return [test_combinations.OptionalParameter("mode")]
  ```
  
  When the test case is generated, the param "mode" will not be passed to the
  test method, since it is consumed by the `EagerGraphCombination`.
code: def modified_arguments(self, kwargs, requested_parameters):
      if self._parameter_name in requested_parameters:
          return {}
      else:
          return {
              self._parameter_name: ParameterModifier.DO_NOT_PASS_TO_THE_TEST
          }
  
imports: from collections import OrderedDict
  import contextlib
  import re
  import types
  import unittest
  from absl.testing import parameterized
  from tensorflow.python.util import tf_inspect
  from tensorflow.python.util.tf_export import tf_export
label_desc: Use image node_id 1 for calling the OptionalParameter obj's underlying member method code with example usage: obj.modified_arguments(kwargs, requested_parameters) and returns: dict, dict