class_docstr: Test class for output tests.
docstr: Test to validate backward compatibility.
docstr_tok: ["Test","to","validate","backward","compatibility","."]
code: def test_backward_compatibility(self):
      """Test to validate backward compatibility."""
      predict_path = (
          backward_compatibility_dir
          / "v0.23.1_test_summary_test_summary_LogisticRegression_predictions.tsv"
      )
      model_path = (
          backward_compatibility_dir
          / "v0.23.1_test_summary_test_summary_LogisticRegression.model"
      )
      test_path = (
          backward_compatibility_dir / "v0.23.1_test_summary.jsonlines"
      )
  
      learner = Learner.from_file(model_path)
      examples = Reader.for_path(test_path, quiet=True).read()
      new_predictions = learner.predict(examples, class_labels=False)[
          :, 1
      ]
  
      with open(predict_path) as predict_file:
          reader = csv.DictReader(predict_file, dialect=csv.excel_tab)
          old_predictions = [float(row["1"]) for row in reader]
      assert_almost_equal(new_predictions, old_predictions)
  
imports: import csv
  import json
  import re
  import unittest
  import warnings
  from ast import literal_eval
  from collections import defaultdict
  from itertools import chain, product
  from pathlib import Path
  from unittest.mock import Mock, patch
  import numpy
  import pandas
  from numpy.testing import assert_almost_equal, assert_array_almost_equal, assert_array_equal
  from sklearn.model_selection import ShuffleSplit, learning_curve
  from sklearn.naive_bayes import MultinomialNB
  from skll.data import FeatureSet, NDJReader, NDJWriter, Reader
  from skll.experiments import run_configuration
  from skll.experiments.output import _compute_ylimits_for_featureset
  from skll.learner import Learner
  from skll.utils.constants import VALID_TASKS
  from skll.utils.logging import close_and_remove_logger_handlers, get_skll_logger
  from skll.utils.testing import backward_compatibility_dir, config_dir, create_jsonlines_feature_files, fill_in_config_options, fill_in_config_paths, fill_in_config_paths_for_single_file, make_classification_data, make_digits_data, make_regression_data, other_dir, output_dir, remove_jsonlines_feature_files, test_dir, tests_dir, train_dir, unlink
label_desc: Use image node_id 12 for calling the TestOutput obj's underlying member method code with example usage: obj.test_backward_compatibility() without return types