def METHOD_NAME(self):
    # testing a 2-variate linear ts, first one from 0 to 1, second one from 0 to 0.5, length 100
    series_multivariate = tg.linear_timeseries(length=100).stack(
        tg.linear_timeseries(length=100, start_value=0, end_value=0.5)
    )
    for model_cls in [NBEATSModel, NHiTSModel]:
        model = model_cls(
            input_chunk_length=3,
            output_chunk_length=1,
            n_epochs=20,
            random_state=42,
            **tfm_kwargs
        )
        model.fit(series_multivariate)
        res = model.predict(n=2).values()
        # the theoretical result should be [[1.01, 1.02], [0.505, 0.51]].
        # We just test if the given result is not too far on average.
        assert abs(
            np.average(res - np.array([[1.01, 1.02], [0.505, 0.51]])) < 0.03
        )
        # Test Covariates
        series_covariates = tg.linear_timeseries(length=100).stack(
            tg.linear_timeseries(length=100, start_value=0, end_value=0.1)
        )
        model = model_cls(
            input_chunk_length=3,
            output_chunk_length=4,
            n_epochs=5,
            random_state=42,
            **tfm_kwargs
        )
        model.fit(series_multivariate, past_covariates=series_covariates)
        res = model.predict(
            n=3, series=series_multivariate, past_covariates=series_covariates
        ).values()
        assert len(res) == 3
        assert abs(np.average(res)) < 5