class_docstr: Test the correctness of optional parameters of `self._save`
docstr: Noncontiguous tensors are saved correctly
docstr_tok: ["Noncontiguous","tensors","are","saved","correctly"]
code: def test_save_noncontiguous(self, dtype):
      """Noncontiguous tensors are saved correctly"""
      path = self.get_temp_path("data.wav")
      enc, bps = get_enc_params(dtype)
      expected = get_wav_data(dtype, 4, normalize=False)[::2, ::2]
      assert not expected.is_contiguous()
      self._save(
          path, expected, 8000, encoding=enc, bits_per_sample=bps
      )
      found = load_wav(path, normalize=False)[0]
      self.assertEqual(found, expected)
  
imports: import io
  import os
  import pathlib
  import subprocess
  import sys
  from functools import partial
  from typing import Optional
  import torch
  from parameterized import parameterized
  from torchaudio._backend.ffmpeg import _parse_save_args
  from torchaudio._backend.utils import get_save_func
  from torchaudio.io import CodecConfig
  from torchaudio_unittest.backend.dispatcher.sox.common import get_enc_params, name_func
  from torchaudio_unittest.common_utils import disabledInCI, get_wav_data, load_wav, nested_params, PytorchTestCase, save_wav, skipIfNoExec, skipIfNoFFmpeg, TempDirMixin, TorchaudioTestCase
label_desc: Use image node_id 2 for calling the TestSaveParams obj's underlying member method code with example usage: obj.test_save_noncontiguous(dtype) without return types