code: def test_freeze_and_unfreeze_part_transform_parameters(self):
      augment = RepeatPart(
          min_part_duration=0.1,
          max_part_duration=0.2,
          part_transform=Gain(p=1.0),
          crossfade_duration=0.0,
          p=1.0,
      )
      dummy_samples = np.zeros(40, dtype=np.float32)
      augment(dummy_samples, 40)
      params1 = deepcopy(augment.part_transform.parameters)
      augment.freeze_parameters()
      augment(dummy_samples, 40)
      params2 = deepcopy(augment.part_transform.parameters)
      assert params1 == params2
  
      augment.unfreeze_parameters()
      augment(dummy_samples, 40)
      params3 = deepcopy(augment.part_transform.parameters)
      assert params3 != params2
  
imports: from copy import deepcopy
  import numpy
  import pytest
  from numpy.testing import assert_array_almost_equal, assert_array_equal
  from audiomentations import Gain, AdjustDuration, RepeatPart, Shift
  from audiomentations.core.utils import get_crossfade_mask_pair
  from tests.test_filter_transforms import get_chirp_test
label_desc: Use image node_id 3 for calling the TestRepeatPart obj's underlying member method code with example usage: obj.test_freeze_and_unfreeze_part_transform_parameters() without return types