class_docstr: Tests for the generate_multi_shift_rule function
class_docstr_tok: ["Tests","for","the","generate_multi_shift_rule","function"]
docstr: Test that three independent single-frequency parameters
  are correctly combined.
code: def test_three_single_frequency(self):
      """Test that three independent single-frequency parameters
      are correctly combined."""
      res = generate_multi_shift_rule([(1,), (1,), (1,)])
      expected = [
          [0.125, np.pi / 2, np.pi / 2, np.pi / 2],
          [-0.125, np.pi / 2, np.pi / 2, -np.pi / 2],
          [-0.125, np.pi / 2, -np.pi / 2, np.pi / 2],
          [0.125, np.pi / 2, -np.pi / 2, -np.pi / 2],
          [-0.125, -np.pi / 2, np.pi / 2, np.pi / 2],
          [0.125, -np.pi / 2, np.pi / 2, -np.pi / 2],
          [0.125, -np.pi / 2, -np.pi / 2, np.pi / 2],
          [-0.125, -np.pi / 2, -np.pi / 2, -np.pi / 2],
      ]
      assert np.allclose(res, expected)
  
imports: import pytest
  import numpy
  import pennylane
  from pennylane.gradients.general_shift_rules import eigvals_to_frequencies, frequencies_to_period, generate_shift_rule, _get_shift_rule, generate_multi_shift_rule, generate_shifted_tapes, generate_multishifted_tapes, _iterate_shift_rule_with_multipliers
label_desc: Use image node_id 3 for calling the TestMultiShiftRule obj's underlying member method code with example usage: obj.test_three_single_frequency() without return types