code: def test_encode_as_pandas(self):
      # should *fail* on things that are not specific pandas objects
      not_pandas = ["giraffe", 6, float("nan"), ["a", "list"]]
      for obj in not_pandas:
          self.assertRaises(
              utils.NotEncodable,
              utils.PlotlyJSONEncoder.encode_as_pandas,
              obj,
          )
  
      # should succeed when we've got specific pandas thingies
      res = utils.PlotlyJSONEncoder.encode_as_pandas(pd.NaT)
      self.assertTrue(res is None)
  
imports: import datetime
  import math
  import decimal
  from datetime import datetime
  from unittest import TestCase
  from time import time
  import pytest
  import numpy
  import pandas
  import pytz
  from pandas.testing import assert_series_equal
  import json
  import os
  import base64
  from plotly import optional_imports, utils
  import plotly.graph_objects
  from plotly.graph_objs import Scatter, Scatter3d, Figure, Data
  from plotly.utils import get_by_path
  from PIL import Image
label_desc: Use image node_id 3 for calling the TestJSONEncoder obj's underlying member method code with example usage: obj.test_encode_as_pandas() without return types