code: def test_negative_value_frac_power_transform_logp(self, power):
      # check that negative values and fractional powers evaluate to -inf logp
      x_rv = pt.random.normal() ** power
      x_rv.name = "x"
  
      x_vv = x_rv.clone()
      x_logp_fn = pytensor.function([x_vv], logp(x_rv, x_vv))
  
      assert np.isfinite(x_logp_fn(2.5))
      assert np.isneginf(x_logp_fn(-2.5))
  
imports: import numpy
  import pytensor
  import pytensor.tensor
  import pytest
  import scipy
  import scipy.special
  from pytensor.graph.basic import equal_computations
  from pymc.distributions.continuous import Cauchy, ChiSquared
  from pymc.logprob.basic import conditional_logp, icdf, logcdf, logp
  from pymc.logprob.transforms import ArccoshTransform, ArcsinhTransform, ArctanhTransform, ChainedTransform, CoshTransform, ErfcTransform, ErfcxTransform, ErfTransform, ExpTransform, LocTransform, LogTransform, ScaleTransform, SinhTransform, TanhTransform, Transform
  from pymc.logprob.utils import ParameterValueError
  from pymc.testing import Rplusbig, Vector, assert_no_rvs
  from tests.distributions.test_transform import check_jacobian_det
label_desc: Use image node_id 7 for calling the TestPowerRVTransform obj's underlying member method code with example usage: obj.test_negative_value_frac_power_transform_logp(power) without return types