code: def testGetProtoNums(self):
      # Tests converting int examples into the feature stats proto
      examples = []
      for i in range(50):
          example = tf.train.Example()
          example.features.feature["num"].int64_list.value.append(i)
          examples.append(example)
      example = tf.train.Example()
      example.features.feature["other"].int64_list.value.append(0)
      examples.append(example)
  
      entries = {}
      for i, example in enumerate(examples):
          self.fs._ParseExample(
              example.features.feature, [], entries, i
          )
  
      datasets = [
          {"entries": entries, "size": len(examples), "name": "test"}
      ]
      p = self.fs.GetDatasetsProto(datasets)
  
      self.assertEqual(1, len(p.datasets))
      test_data = p.datasets[0]
      self.assertEqual("test", test_data.name)
      self.assertEqual(51, test_data.num_examples)
  
      numfeat = (
          test_data.features[0]
          if (test_data.features[0].name == "num")
          else test_data.features[1]
      )
      self.assertEqual("num", numfeat.name)
      self.assertEqual(self.fs.fs_proto.INT, numfeat.type)
      self.assertEqual(0, numfeat.num_stats.min)
      self.assertEqual(49, numfeat.num_stats.max)
      self.assertEqual(24.5, numfeat.num_stats.mean)
      self.assertEqual(24.5, numfeat.num_stats.median)
      self.assertEqual(1, numfeat.num_stats.num_zeros)
      self.assertAlmostEqual(14.430869689, numfeat.num_stats.std_dev, 4)
      self.assertEqual(1, numfeat.num_stats.common_stats.num_missing)
      self.assertEqual(
          50, numfeat.num_stats.common_stats.num_non_missing
      )
      self.assertEqual(1, numfeat.num_stats.common_stats.min_num_values)
      self.assertEqual(1, numfeat.num_stats.common_stats.max_num_values)
      self.assertAlmostEqual(
          1, numfeat.num_stats.common_stats.avg_num_values, 4
      )
      hist = numfeat.num_stats.common_stats.num_values_histogram
      buckets = hist.buckets
      self.assertEqual(self.fs.histogram_proto.QUANTILES, hist.type)
      self.assertEqual(10, len(buckets))
      self.assertEqual(1, buckets[0].low_value)
      self.assertEqual(1, buckets[0].high_value)
      self.assertEqual(5, buckets[0].sample_count)
      self.assertEqual(1, buckets[9].low_value)
      self.assertEqual(1, buckets[9].high_value)
      self.assertEqual(5, buckets[9].sample_count)
  
      self.assertEqual(2, len(numfeat.num_stats.histograms))
      buckets = numfeat.num_stats.histograms[0].buckets
      self.assertEqual(
          self.fs.histogram_proto.STANDARD,
          numfeat.num_stats.histograms[0].type,
      )
      self.assertEqual(10, len(buckets))
      self.assertEqual(0, buckets[0].low_value)
      self.assertEqual(4.9, buckets[0].high_value)
      self.assertEqual(5, buckets[0].sample_count)
      self.assertAlmostEqual(44.1, buckets[9].low_value)
      self.assertEqual(49, buckets[9].high_value)
      self.assertEqual(5, buckets[9].sample_count)
  
      buckets = numfeat.num_stats.histograms[1].buckets
      self.assertEqual(
          self.fs.histogram_proto.QUANTILES,
          numfeat.num_stats.histograms[1].type,
      )
      self.assertEqual(10, len(buckets))
      self.assertEqual(0, buckets[0].low_value)
      self.assertEqual(4.9, buckets[0].high_value)
      self.assertEqual(5, buckets[0].sample_count)
      self.assertAlmostEqual(44.1, buckets[9].low_value)
      self.assertEqual(49, buckets[9].high_value)
      self.assertEqual(5, buckets[9].sample_count)
  
imports: from facets_overview.feature_statistics_generator import FeatureStatisticsGenerator
  import numpy
  import tensorflow
  from tensorflow.python.platform import googletest
label_desc: Use image node_id 13 for calling the FeatureStatisticsGeneratorTest obj's underlying member method code with example usage: obj.testGetProtoNums() without return types