code: def test_get_table_names(
      self,
      mock_get_view_names,
      mock_get_table_names,
  ):
      mock_get_view_names.return_value = {"view1", "view2"}
      mock_get_table_names.return_value = {
          "table1",
          "table2",
          "view1",
          "view2",
      }
      tables = PrestoEngineSpec.get_table_names(
          mock.Mock(), mock.Mock(), None
      )
      assert tables == {"table1", "table2"}
  
imports: from collections import namedtuple
  from textwrap import dedent
  from unittest import mock, skipUnless
  import pandas
  from flask.ctx import AppContext
  from sqlalchemy import types
  from sqlalchemy.sql import select
  from superset.db_engine_specs.presto import PrestoEngineSpec
  from superset.errors import ErrorLevel, SupersetError, SupersetErrorType
  from superset.sql_parse import ParsedQuery
  from superset.utils.database import get_example_database
  from tests.integration_tests.db_engine_specs.base_tests import TestDbEngineSpec
label_desc: Use image node_id 21 for calling the TestPrestoDbEngineSpec obj's underlying member method code with example usage: obj.test_get_table_names(mock_get_view_names, mock_get_table_names) without return types