class_docstr: A test upsert table sink.
code: def __init__(self, field_names, field_types, keys, is_append_only):
      TestTableSink._ensure_initialized()
  
      gateway = get_gateway()
      j_keys = gateway.new_array(gateway.jvm.String, len(keys))
      for i in range(0, len(keys)):
          j_keys[i] = keys[i]
  
      super(TestUpsertSink, self).__init__(
          gateway.jvm.TestUpsertSink(j_keys, is_append_only),
          field_names,
          field_types,
      )
  
imports: import glob
  import os
  import unittest
  from py4j.java_gateway import java_import
  from pyflink.find_flink_home import _find_flink_source_root
  from pyflink.java_gateway import get_gateway
  from pyflink.table.sinks import TableSink
  from pyflink.table.types import _to_java_data_type
  from pyflink.util import java_utils
label_desc: Use image node_id 1 to create a new TestUpsertSink object from inherited base classes: TestTableSink with example: obj = TestUpsertSink(field_names, field_types, keys, is_append_only)