class_docstr: Basic tests on the eval_model.py example.
class_docstr_tok: ["Basic","tests","on","the","eval_model.py","example","."]
docstr: Test that we can save report from eval model.
docstr_tok: ["Test","that","we","can","save","report","from","eval","model","."]
code: def test_save_report(self):
      """
      Test that we can save report from eval model.
      """
      with testing_utils.tempdir() as tmpdir:
          log_report = os.path.join(tmpdir, "world_logs.jsonl")
          save_report = os.path.join(tmpdir, "report")
          opt = dict(
              task="integration_tests",
              model="repeat_label",
              datatype="valid",
              batchsize=97,
              display_examples=False,
              world_logs=log_report,
              report_filename=save_report,
          )
          valid, test = testing_utils.eval_model(opt)
  
          with PathManager.open(log_report) as f:
              json_lines = f.readlines()
          assert len(json_lines) == 100
  
file_path: ParlAI/tests/test_eval_model.py
imports: import os
  from parlai.utils.io import PathManager
  import pytest
  import unittest
  import parlai.utils.testing
  from parlai.scripts.eval_model import get_task_world_logs
label_desc: Use image node_id 9 for calling the TestEvalModel obj's underlying member method code with example usage: obj.test_save_report() without return types