code: def test_function_io_equality(self):
      function_io = FunctionIOCatalogEntry(
          "name", ColumnType.FLOAT, True, None, [2, 3], True, 1
      )
      self.assertEqual(function_io, function_io)
      function_io2 = FunctionIOCatalogEntry(
          "name2", ColumnType.FLOAT, True, None, [2, 3], True, 1
      )
      self.assertNotEqual(function_io, function_io2)
      function_io2 = FunctionIOCatalogEntry(
          "name", ColumnType.INTEGER, True, None, [2, 3], True, 1
      )
      self.assertNotEqual(function_io, function_io2)
      function_io2 = FunctionIOCatalogEntry(
          "name", ColumnType.FLOAT, False, None, [2, 3], True, 1
      )
      self.assertNotEqual(function_io, function_io2)
      function_io2 = FunctionIOCatalogEntry(
          "name", ColumnType.FLOAT, True, None, [2, 3, 4], True, 1
      )
      self.assertNotEqual(function_io, function_io2)
      function_io2 = FunctionIOCatalogEntry(
          "name", ColumnType.FLOAT, True, None, [2, 3], False, 1
      )
      self.assertNotEqual(function_io, function_io2)
      function_io2 = FunctionIOCatalogEntry(
          "name", ColumnType.FLOAT, True, None, [2, 3], True, 2
      )
      self.assertNotEqual(function_io, function_io2)
  
file_path: evadb/test/unit_tests/catalog/models/test_models.py
imports: import unittest
  from evadb.catalog.catalog_type import ColumnType, NdArrayType, TableType
  from evadb.catalog.models.column_catalog import ColumnCatalogEntry
  from evadb.catalog.models.function_catalog import FunctionCatalogEntry
  from evadb.catalog.models.function_io_catalog import FunctionIOCatalogEntry
  from evadb.catalog.models.index_catalog import IndexCatalogEntry
  from evadb.catalog.models.table_catalog import TableCatalogEntry
label_desc: Use image node_id 8 for calling the CatalogModelsTest obj's underlying member method code with example usage: obj.test_function_io_equality() without return types