code: def test_add_table_alias(self):
      mock_catalog = MagicMock()
      mock_get = mock_catalog().get_table_catalog_entry = MagicMock()
      mock_get.return_value = "table_obj"
      ctx = StatementBinderContext(mock_catalog)
  
      mock_check = ctx._check_duplicate_alias = MagicMock()
      ctx.add_table_alias("alias", None, "table_name")
      mock_check.assert_called_with("alias")
      mock_get.assert_called_with("table_name")
      self.assertEqual(ctx._table_alias_map["alias"], "table_obj")
  
imports: import unittest
  from unittest.mock import MagicMock
  import pytest
  from evadb.binder.binder_utils import BinderError
  from evadb.binder.statement_binder_context import StatementBinderContext
  from evadb.expression.function_expression import FunctionExpression
  from evadb.expression.tuple_value_expression import TupleValueExpression
label_desc: Use image node_id 3 for calling the StatementBinderTests obj's underlying member method code with example usage: obj.test_add_table_alias() without return types