docstr: Cover the case with single-channel input signal.
  Channel selector should not do anything in this case.
docstr_tok: ["Cover","the","case","with","single-channel","input","signal",".","Channel","selector","should","not","do","anything","in","this","case","."]
code: def test_single_channel_input(
      self, channel_selector: Type[Union[str, int, List[int]]]
  ):
      """Cover the case with single-channel input signal.
      Channel selector should not do anything in this case.
      """
      golden_out = signal_in = np.random.rand(self.num_samples)
  
      if channel_selector not in [None, 0, "average"]:
          # Expect a failure if looking for a different channel when input is 1D
          with pytest.raises(ValueError):
              # UUT
              signal_out = select_channels(signal_in, channel_selector)
      else:
          # UUT
          signal_out = select_channels(signal_in, channel_selector)
  
          # Check difference
          max_diff = np.max(np.abs(signal_out - golden_out))
          assert max_diff < self.max_diff_tol
  
imports: import os
  from collections import namedtuple
  from typing import List, Type, Union
  import librosa
  import matplotlib.pyplot
  import numpy
  import pytest
  import scipy
  import soundfile
  import torch
  from nemo.collections.asr.parts.preprocessing.segment import AudioSegment
  from nemo.collections.asr.parts.utils.audio_utils import SOUND_VELOCITY
  from nemo.collections.asr.parts.utils.audio_utils import calculate_sdr_numpy, convmtx_mc_numpy, db2mag, estimated_coherence, generate_approximate_noise_field, get_segment_start, mag2db, pow2db, rms, select_channels, theoretical_coherence, toeplitz
label_desc: Use image node_id 1 for calling the TestSelectChannels obj's underlying member method code with example usage: obj.test_single_channel_input(channel_selector) without return types