def test_feature_times_unspecified_series(self):
        """
        Tests that `_get_feature_times` correctly returns
        `None` in place of a sequence of times if a particular
        series is not specified.
        """
        # Generate simple examples:
        target = linear_timeseries(start=1, length=20, freq=1)
        past = linear_timeseries(start=2, length=25, freq=2)
        future = linear_timeseries(start=3, length=30, freq=3)
        lags = [-1]
        lags_past = [-2]
        lags_future = [-3]
        # Need to extend series then exclude first few starting times:
        expected_target = target.append_values([0]).time_index[1:]
        expected_past = past.append_values(2 * [0]).time_index[2:]
        expected_future = future.append_values(3 * [0]).time_index[3:]

        # Specify only target, without past and future:
        feature_times = _get_feature_times(
            target_series=target, lags=lags, is_training=False
        )
        assert expected_target.equals(feature_times[0])
        assert feature_times[1] is None
        assert feature_times[2] is None

        # Specify only past, without target and future:
        feature_times = _get_feature_times(
            past_covariates=past,
            lags_past_covariates=lags_past,
            is_training=False,
        )
        assert feature_times[0] is None
        assert expected_past.equals(feature_times[1])
        assert feature_times[2] is None

        # Specify only future, without target and past:
        feature_times = _get_feature_times(
            future_covariates=future,
            lags_future_covariates=lags_future,
            is_training=False,
        )
        assert feature_times[0] is None
        assert feature_times[1] is None
        assert expected_future.equals(feature_times[2])

        # Specify target and past, without future:
        feature_times = _get_feature_times(
            target_series=target,
            past_covariates=past,
            lags=lags,
            lags_past_covariates=lags_past,
            is_training=False,
        )
        assert expected_target.equals(feature_times[0])
        assert expected_past.equals(feature_times[1])
        assert feature_times[2] is None

        # Specify target and future, without past:
        feature_times = _get_feature_times(
            target_series=target,
            future_covariates=future,
            lags=lags,
            lags_future_covariates=lags_future,
            is_training=False,
        )
        assert expected_target.equals(feature_times[0])
        assert feature_times[1] is None
        assert expected_future.equals(feature_times[2])

        # Specify past and future, without target:
        feature_times = _get_feature_times(
            past_covariates=past,
            future_covariates=future,
            lags_past_covariates=lags_past,
            lags_future_covariates=lags_future,
            is_training=False,
        )
        assert feature_times[0] is None
        assert expected_past.equals(feature_times[1])
        assert expected_future.equals(feature_times[2])

        Tests that `_get_feature_times` correctly returns
        `None` in place of a sequence of times if a particular
        series is not specified.
        
darts/tests/utils/tabularization/test_get_feature_times.py