code: def test_bad_inputs(self):
      def dtype_for(o):
          return np.array([o]).dtype
  
      self.should_error(
          lambda: Floats().fillna("3.0"),
          TypeError,
          " from {!r} to {!r} according to the rule 'same_kind'".format(
              dtype_for("3.0"), np.dtype(float)
          ),
      )
  
      self.should_error(
          lambda: Dates().fillna("2014-01-02"),
          TypeError,
          "from {!r} to {!r} according to the rule 'same_kind'".format(
              dtype_for("2014-01-02"), np.dtype("M8[ns]")
          ),
      )
  
      self.should_error(
          lambda: Ints().fillna("300"),
          TypeError,
          "from {!r} to {!r} according to the rule 'same_kind'".format(
              dtype_for("300"), np.dtype("i8")
          ),
      )
  
      self.should_error(
          lambda: Strs().fillna(10.0),
          TypeError,
          "Fill value 10.0 is not a valid choice for term Strs with dtype"
          " object.\n\n"
          "Coercion attempt failed with: "
          "String-dtype classifiers can only produce strings or None.",
      )
  
imports: import numpy
  from zipline.lib.labelarray import LabelArray
  from zipline.pipeline import Classifier, Factor, Filter
  from zipline.testing import parameter_space
  from zipline.utils.numpy_utils import categorical_dtype, datetime64ns_dtype, float64_dtype, int64_dtype, NaTns
  from .base import BaseUSEquityPipelineTestCase
label_desc: Use image node_id 4 for calling the FillNATestCase obj's underlying member method code with example usage: obj.test_bad_inputs() and returns: np