class_docstr: Tests for the ChatsTable class.
code: def test_select_for_all_chats_returns_only_selected_columns(self):
      # patch the api handler to return the chat data
      with patch.object(
          self.api_handler.connect(),
          "get_chats",
          return_value=ms_teams_handler_config.TEST_CHATS_DATA,
      ):
          chats_table = ChatsTable(self.api_handler)
  
          select_all = ast.Select(
              # select all columns
              targets=[
                  Identifier("id"),
                  Identifier("chatType"),
              ],
              from_table="chats",
          )
  
          all_chats = chats_table.select(select_all)
          first_chat = all_chats.iloc[0]
  
          self.assertEqual(all_chats.shape[1], 2)
          self.assertEqual(first_chat["id"], "test_id")
          self.assertEqual(first_chat["chatType"], "oneOnOne")
  
imports: import unittest
  from unittest.mock import Mock, patch
  from mindsdb_sql.parser import ast
  from mindsdb_sql.parser.ast import Constant, BinaryOperation
  from mindsdb_sql.parser.ast.select.star import Star
  from mindsdb_sql.parser.ast.select.identifier import Identifier
  from mindsdb.integrations.handlers.ms_teams_handler.ms_teams_handler import MSTeamsHandler
  from mindsdb.integrations.handlers.ms_teams_handler.settings import ms_teams_handler_config
  from mindsdb.integrations.handlers.ms_teams_handler.ms_graph_api_teams_client import MSGraphAPITeamsClient
  from mindsdb.integrations.handlers.ms_teams_handler.ms_teams_tables import ChatsTable, ChatMessagesTable, ChannelsTable, ChannelMessagesTable
label_desc: Use image node_id 6 for calling the TestChatsTable obj's underlying member method code with example usage: obj.test_select_for_all_chats_returns_only_selected_columns() without return types