code: def test_init_error(self):
      train_X = torch.rand(2, 2, device=self.device)
      train_Y = torch.rand(2, 1)
      for lin_truncated in (True, False):
          with self.assertRaises(UnsupportedError):
              SingleTaskMultiFidelityGP(
                  train_X, train_Y, linear_truncated=lin_truncated
              )
      with self.assertRaises(ValueError):
          SingleTaskMultiFidelityGP(
              train_X, train_Y, data_fidelities=[1], data_fidelity=2
          )
      with self.assertWarnsRegex(DeprecationWarning, "data_fidelity"):
          SingleTaskMultiFidelityGP(
              train_X, train_Y, data_fidelity=1, linear_truncated=False
          )
  
imports: import itertools
  import warnings
  from typing import Tuple
  import torch
  from botorch.exceptions.errors import UnsupportedError
  from botorch.exceptions.warnings import OptimizationWarning
  from botorch.fit import fit_gpytorch_mll
  from botorch.models.gp_regression_fidelity import FixedNoiseMultiFidelityGP, SingleTaskMultiFidelityGP
  from botorch.models.transforms import Normalize, Standardize
  from botorch.posteriors import GPyTorchPosterior
  from botorch.sampling import SobolQMCNormalSampler
  from botorch.utils.datasets import SupervisedDataset
  from botorch.utils.testing import _get_random_data, BotorchTestCase
  from gpytorch.kernels.scale_kernel import ScaleKernel
  from gpytorch.likelihoods import FixedNoiseGaussianLikelihood
  from gpytorch.means import ConstantMean
  from gpytorch.mlls.exact_marginal_log_likelihood import ExactMarginalLogLikelihood
  from torch import Tensor
label_desc: Use image node_id 2 for calling the TestSingleTaskMultiFidelityGP obj's underlying member method code with example usage: obj.test_init_error() without return types