code: def do_precision_upper_bound(self, float_small, float_large):
      eps = np.finfo(float_large).eps
  
      arr = np.array([1.0], float_small)
      range = np.array([0.0, 1.0 - eps], float_large)
  
      # test is looking for behavior when the bounds change between dtypes
      if range.astype(float_small)[-1] != 1:
          return
  
      # previously crashed
      count, x_loc = np.histogram(arr, bins=1, range=range)
      assert_equal(count, [1])
  
      # gh-10322 means that the type comes from arr - this may change
      assert_equal(x_loc.dtype, float_small)
  
imports: import functools
  from unittest import expectedFailure, skipIf
  from pytest import raises
  from torch.testing._internal.common_utils import instantiate_parametrized_tests, parametrize, run_tests, slowTest, TEST_WITH_TORCHDYNAMO, TestCase, xpassIfTorchDynamo
label_desc: Use image node_id 26 for calling the TestHistogram obj's underlying member method code with example usage: obj.do_precision_upper_bound(float_small, float_large) without return types