code: def test_shift(self):
      input1 = [
          1,
          1,
          1,
          1,
          1.2,
          1.4,
          1.2,
          1,
          1,
          1,
          1,
          1,
          1,
          1.2,
          1.4,
          1.6,
          1.8,
          1.6,
          1.4,
          1.2,
          1,
          1,
      ]
      input2 = [1] + input1[:-1]
  
      expected_path = (
          [(0, 0)]
          + list((i - 1, i) for i in range(1, len(input1)))
          + [(len(input1) - 1, len(input2) - 1)]
      )
  
      series1 = _series_from_values(input1)
      series2 = _series_from_values(input2)
  
      exact_alignment = dtw.dtw(series1, series2, multi_grid_radius=-1)
  
      assert (
          exact_alignment.distance() == 0
      ), "Minimum cost between two shifted series should be 0"
      np.testing.assert_array_equal(
          exact_alignment.path(), expected_path
      ), "Incorrect path"
  
imports: import matplotlib.pyplot
  import numpy
  import pandas
  import pytest
  from darts.dataprocessing import dtw
  from darts.metrics import dtw_metric, mae, mape
  from darts.timeseries import TimeSeries
  from darts.utils import timeseries_generation
label_desc: Use image node_id 1 for calling the TestDynamicTimeWarping obj's underlying member method code with example usage: obj.test_shift() without return types