code: def test_with_ratio_split(self):
      Experiment(
          eval_method=RatioSplit(
              self.data + [(self.data[0][0], self.data[1][1], 5.0)],
              exclude_unknowns=True,
              seed=123,
              verbose=True,
          ),
          models=[PMF(1, 0)],
          metrics=[MAE(), RMSE()],
          verbose=True,
      ).run()
  
      try:
          Experiment(None, None, None)
      except ValueError:
          assert True
  
      try:
          Experiment(None, [PMF(1, 0)], None)
      except ValueError:
          assert True
  
file_path: cornac/tests/cornac/experiment/test_experiment.py
imports: import unittest
  from cornac.data import Reader
  from cornac.eval_methods import RatioSplit, CrossValidation
  from cornac.models import PMF
  from cornac.metrics import MAE, RMSE, Recall, FMeasure
  from cornac.experiment.experiment import Experiment
label_desc: Use image node_id 2 for calling the TestExperiment obj's underlying member method code with example usage: obj.test_with_ratio_split() without return types