code: def test_basic(self, transform):
      transform = log if transform else None
      with Model(coords={"test_dim": range(3)}) as m:
          x = Normal("x", transform=transform)
          x_value_var = m.rvs_to_values[x]
          y = Normal("y", x, observed=[0, 1, 2], dims=("test_dim",))
  
          idata = InferenceData(
              posterior=dict_to_dataset(
                  {"x": np.arange(100).reshape(4, 25)}
              )
          )
          res = compute_log_likelihood(idata)
  
      # Check we didn't erase the original mappings
      assert m.rvs_to_values[x] is x_value_var
      assert m.rvs_to_transforms[x] is transform
  
      assert res is idata
      assert res.log_likelihood.dims == {
          "chain": 4,
          "draw": 25,
          "test_dim": 3,
      }
  
      np.testing.assert_allclose(
          res.log_likelihood["y"].values,
          st.norm.logpdf([0, 1, 2], np.arange(100)[:, None]).reshape(
              4, 25, 3
          ),
      )
  
file_path: pymc/tests/stats/test_log_likelihood.py
imports: import numpy
  import pytest
  import scipy.stats
  from arviz import InferenceData, dict_to_dataset, from_dict
  from pymc.distributions import Dirichlet, Normal
  from pymc.distributions.transforms import log
  from pymc.model import Model
  from pymc.stats.log_likelihood import compute_log_likelihood
  from tests.distributions.test_multivariate import dirichlet_logpdf
label_desc: Use image node_id 1 for calling the TestComputeLogLikelihood obj's underlying member method code with example usage: obj.test_basic(transform) without return types