code: def test_register():
      def _select_input_columns(
          tileable_data: TileableData, required_cols: Set[Any]
      ) -> Dict[TileableData, Set[Any]]:
          return {}
  
      InputColumnSelector.register(MockOperand, _select_input_columns)
      mock_data = MockEntityData()
      assert InputColumnSelector.select(mock_data, {"foo"}) == {}
  
      # unregister
      InputColumnSelector.unregister(MockOperand)
      assert InputColumnSelector.select(mock_data, {"foo"}) == {
          MockOperand.get_mock_input(): {"foo", "bar"}
      }
  
imports: from typing import Dict, Any, Set, List, Union
  import pytest
  from ..input_column_selector import InputColumnSelector
  from ......core import TileableData, ENTITY_TYPE
  from ......core.operand import Operand
  from ......dataframe import DataFrame, Series
  from ......tensor import tensor
label_desc: Use image node_id 1 for calling a global function with example usage: test_register() and returns: dict