code: def test_evaluate(self):
      assignment = {"feature": 1.0}
  
      mock_feature = Feature("feature")
      mock_feature.evaluate = MagicMock(return_value=1.0)
      int_bin = sc.IntervalBin(mock_feature, -1.0, 0.0, 1.0)
      self.assertEqual(int_bin.evaluate(assignment), 0.0)
  
      mock_feature = Feature("feature")
      mock_feature.evaluate = MagicMock(return_value=0.0)
      int_bin = sc.IntervalBin(mock_feature, -1.0, 0.0, 1.0)
      self.assertEqual(int_bin.evaluate(assignment), -1.0)
  
      mock_feature = Feature("feature")
      mock_feature.evaluate = MagicMock(return_value=0.5)
      int_bin = sc.IntervalBin(mock_feature, -1.0, 0.0, 1.0)
      self.assertEqual(int_bin.evaluate(assignment), -1.0)
  
imports: from unittest import TestCase
  from unittest.mock import MagicMock
  from aix360.algorithms.rule_induction.trxf.core import Feature
  import aix360.algorithms.rule_induction.trxf.scorecard
label_desc: Use image node_id 2 for calling the TestIntervalBin obj's underlying member method code with example usage: obj.test_evaluate() without return types