code: def test_l_infty_clips_single_record(self, record, norm_clip):
      record_specs = tf.nest.map_structure(
          lambda t: tf.TensorSpec(tf.shape(t)), SINGLE_VALUE_RECORDS[0]
      )
      query = tree_aggregation_query.TreeCumulativeSumQuery(
          clip_fn=_get_l_infty_clip_fn(),
          clip_value=norm_clip,
          noise_generator=_get_no_noise_fn(record_specs),
          record_specs=record_specs,
      )
      global_state = query.initial_global_state()
      expected_clipped_record = tf.nest.map_structure(
          lambda t: tf.clip_by_value(t, -norm_clip, norm_clip), record
      )
      clipped_record = query.preprocess_record(
          global_state.clip_value, record
      )
      self.assertAllClose(expected_clipped_record, clipped_record)
  
imports: from absl.testing import parameterized
  import numpy
  import tensorflow
  from tensorflow_privacy.privacy.dp_query import test_utils
  from tensorflow_privacy.privacy.dp_query import tree_aggregation
  from tensorflow_privacy.privacy.dp_query import tree_aggregation_query
label_desc: Use image node_id 5 for calling the TreeCumulativeSumQueryTest obj's underlying member method code with example usage: obj.test_l_infty_clips_single_record(record, norm_clip) without return types