code: def testPenguinPipelineLocalWithExampleDiff(self):
      module_file = self._module_file_name("keras")
      examplegen_input_config = proto.Input(
          splits=[
              proto.Input.Split(name="test", pattern="day{SPAN}/*"),
          ]
      )
  
      def run_pipeline(examplegen_range_config_date):
          LocalDagRunner().run(
              penguin_pipeline_local.create_pipeline(
                  pipeline_name=self._pipeline_name,
                  data_root=self._data_root_span,
                  module_file=module_file,
                  accuracy_threshold=0.1,
                  serving_model_dir=self._serving_model_dir,
                  pipeline_root=self._pipeline_root,
                  metadata_path=self._metadata_path,
                  user_provided_schema_path=None,
                  enable_tuning=False,
                  enable_bulk_inferrer=False,
                  examplegen_input_config=examplegen_input_config,
                  examplegen_range_config_date=examplegen_range_config_date,
                  resolver_range_config=None,
                  beam_pipeline_args=self._make_beam_pipeline_args(),
                  enable_transform_input_cache=True,
                  enable_example_diff=True,
              )
          )
  
      # Trigger the pipeline for the first span.
      run_pipeline(examplegen_range_config_date="20220102")
      self.assertTrue(fileio.exists(self._serving_model_dir))
      self.assertTrue(fileio.exists(self._metadata_path))
      self.assertPipelineExecution()
      self.assertExecutedOnce("ExampleDiff")
      expected_execution_count = 12  # 10 components + 2 resolvers
      metadata_config = metadata.sqlite_metadata_connection_config(
          self._metadata_path
      )
      store = mlmd.MetadataStore(metadata_config)
      execution_count = len(store.get_executions())
      self.assertEqual(expected_execution_count, execution_count)
  
imports: import importlib
  import os
  from typing import List
  from absl import logging
  from absl.testing import parameterized
  import tensorflow
  from tfx.examples.penguin import penguin_pipeline_local
  from tfx.v1 import proto
  from tfx.v1.dsl.io import fileio
  from tfx.v1.orchestration import LocalDagRunner
  from tfx.v1.orchestration import metadata
  import ml_metadata
  from ml_metadata.proto import metadata_store_pb2
label_desc: Use image node_id 12 for calling the PenguinPipelineLocalEndToEndTest obj's underlying member method code with example usage: obj.testPenguinPipelineLocalWithExampleDiff() without return types