code: def test_compound_step(self):
      with pm.Model() as m:
          c1 = pm.HalfNormal("c1")
          c2 = pm.HalfNormal("c2")
  
          with pytensor.config.change_flags(
              mode=fast_unstable_sampling_mode
          ):
              step1 = NUTS([c1])
              step2 = NUTS([c2])
              step = CompoundStep([step1, step2])
          assert {m.rvs_to_values[c1], m.rvs_to_values[c2]} == set(
              step.vars
          )
  
imports: import pytensor
  import pytest
  import pymc
  from pymc.step_methods import NUTS, CompoundStep, DEMetropolis, HamiltonianMC, Metropolis, Slice
  from pymc.step_methods.compound import BlockedStep, StatsBijection, flatten_steps, get_stats_dtypes_shapes_from_steps, infer_warn_stats_info
  from pymc.testing import fast_unstable_sampling_mode
  from tests.helpers import StepMethodTester
  from tests.models import simple_2model_continuous
label_desc: Use image node_id 1 for calling the TestRVsAssignmentCompound obj's underlying member method code with example usage: obj.test_compound_step() without return types