code: def test_epsilon_bound_clopper_pearson(self):
      # Try to create tp, fp, tn, fn = 500, 0, 500, 0
      pos_scores = np.ones(500)
      neg_scores = np.zeros(500)
      thresholds = np.array([0.5])
      alpha = 0.01
      expected_eps = 4.54
      method = elb.BoundMethod.CLOPPER_PEARSON
  
      # one-sided
      lb = elb.EpsilonLowerBound(
          pos_scores,
          neg_scores,
          alpha,
          thresholds=thresholds,
          two_sided_threshold=False,
      )
      np.testing.assert_almost_equal(
          lb.compute_epsilon_lower_bound(method),
          [expected_eps, expected_eps],
          decimal=2,
      )
      # two-sided. fpr / tpr = fnr / tnr = 0
      lb = elb.EpsilonLowerBound(
          pos_scores,
          neg_scores,
          alpha,
          thresholds=thresholds,
          two_sided_threshold=True,
      )
      np.testing.assert_almost_equal(
          lb.compute_epsilon_lower_bound(method),
          [expected_eps, expected_eps],
          decimal=2,
      )
  
imports: from absl.testing import absltest
  from absl.testing import parameterized
  import numpy
  from tensorflow_privacy.privacy.privacy_tests import epsilon_lower_bound
label_desc: Use image node_id 3 for calling the EpsilonLowerBoundTest obj's underlying member method code with example usage: obj.test_epsilon_bound_clopper_pearson() without return types