code: def _assert_quantile_boundaries(
      self,
      test_inputs,
      expected_boundaries,
      input_dtype,
      num_buckets=None,
      num_expected_buckets=None,
  ):
      if not num_buckets:
          num_buckets = len(expected_boundaries) + 1
      if not num_expected_buckets:
          num_expected_buckets = num_buckets
  
      def analyzer_fn(inputs):
          x = tf.cast(inputs["x"], input_dtype)
          return {"q_b": tft.quantiles(x, num_buckets, epsilon=0.0001)}
  
      input_data = [{"x": [x]} for x in test_inputs]
  
      input_metadata = tft.DatasetMetadata.from_feature_spec(
          {
              "x": tf.io.FixedLenFeature(
                  [1], tft_unit.canonical_numeric_dtype(input_dtype)
              )
          }
      )
  
      expected_data = {"q_b": expected_boundaries}
  
      self.assertAnalyzerOutputs(
          input_data,
          input_metadata,
          analyzer_fn,
          expected_data,
          desired_batch_size=1000,
      )
  
imports: import contextlib
  import random
  import numpy
  import tensorflow
  import tensorflow_transform
  from tensorflow_transform import analyzers
  from tensorflow_transform.beam import impl
  from tensorflow_transform.beam import tft_unit
  from tensorflow_metadata.proto.v0 import schema_pb2
label_desc: Use image node_id 12 for calling the BucketizeIntegrationTest obj's underlying member method code with example usage: obj._assert_quantile_boundaries(test_inputs, expected_boundaries, input_dtype, num_buckets, num_expected_buckets) and returns: dict