code: def testGroupByPivot_InvalidPivot(self):
      a, b = self._prepare_tfx_artifacts(2)
      self._put_lineage(a, b)
      inputs = {"a": [a], "b": [b]}
  
      with self.assertRaises(exceptions.FailedPreconditionError):
          self._group_by_pivot(inputs, pivot_key="invalid_pivot")
  
imports: import random
  from absl.testing import parameterized
  import tensorflow
  from tfx.dsl.input_resolution.ops import group_by_lineage_op
  from tfx.dsl.input_resolution.ops import test_utils
  from tfx.orchestration.portable.input_resolution import exceptions
  from tfx.types import artifact_utils
  from tfx.utils import test_case_utils
label_desc: Use image node_id 4 for calling the GroupByPivotTest obj's underlying member method code with example usage: obj.testGroupByPivot_InvalidPivot() without return types