code: def test_latest(self):
      columns = TDS.columns
      pipe = Pipeline(
          columns={c.name: c.latest for c in columns},
      )
  
      cal_slice = slice(20, 40)
      dates_to_test = self.trading_days[cal_slice]
      result = self.engine.run_pipeline(
          pipe,
          dates_to_test[0],
          dates_to_test[-1],
      )
      for column in columns:
          with ignore_pandas_nan_categorical_warning():
              col_result = result[column.name].unstack()
  
          expected_col_result = self.expected_latest(column, cal_slice)
          assert_frame_equal(col_result, expected_col_result)
  
imports: import operator
  from unittest import skipIf
  from nose_parameterized import parameterized
  from pandas import Timestamp, DataFrame
  from pandas.util.testing import assert_frame_equal
  from zipline.lib.labelarray import LabelArray
  from zipline.pipeline import Pipeline
  from zipline.pipeline.data import USEquityPricing
  from zipline.pipeline.data.dataset import Column
  from zipline.pipeline.data.testing import TestingDataSet
  from zipline.pipeline.domain import US_EQUITIES
  from zipline.testing.fixtures import WithSeededRandomPipelineEngine, WithTradingSessions, ZiplineTestCase
  from zipline.utils.numpy_utils import datetime64ns_dtype
  from zipline.utils.pandas_utils import ignore_pandas_nan_categorical_warning, new_pandas, skip_pipeline_new_pandas
label_desc: Use image node_id 3 for calling the LatestTestCase obj's underlying member method code with example usage: obj.test_latest() without return types