code: def test_freeze_and_unfreeze_parameters(self):
      samples = np.zeros((20,), dtype=np.float32)
      sample_rate = 44100
      augmenter = Compose(
          [
              AddBackgroundNoise(
                  sounds_path=os.path.join(
                      DEMO_DIR, "background_noises"
                  ),
                  min_snr_db=15,
                  max_snr_db=35,
                  p=1.0,
              ),
              ClippingDistortion(p=0.5),
          ]
      )
      perturbed_samples1 = augmenter(
          samples=samples, sample_rate=sample_rate
      )
      augmenter.freeze_parameters()
      for transform in augmenter.transforms:
          assert transform.are_parameters_frozen
      perturbed_samples2 = augmenter(
          samples=samples, sample_rate=sample_rate
      )
  
      assert_array_equal(perturbed_samples1, perturbed_samples2)
  
      augmenter.unfreeze_parameters()
      for transform in augmenter.transforms:
          assert not transform.are_parameters_frozen
  
file_path: audiomentations/tests/test_compose.py
imports: import os
  import numpy
  from numpy.testing import assert_array_equal
  from audiomentations import ClippingDistortion, AddBackgroundNoise, TimeMask, Shift, Compose
  from demo.demo import DEMO_DIR
label_desc: Use image node_id 1 for calling the TestCompose obj's underlying member method code with example usage: obj.test_freeze_and_unfreeze_parameters() without return types