docstr: Test that the determine_dataframe_schema function correctly determines the
  schema of a dataframe.
docstr_tok: ["Test","that","the","determine_dataframe_schema","function","correctly","determines","the","schema","of","a","dataframe","."]
code: def test_determine_dataframe_schema(self):
      """Test that the determine_dataframe_schema function correctly determines the
      schema of a dataframe.
      """
  
      df = pd.DataFrame(
          {
              "int": [1, 2, 3],
              "float": [1.1, 2.2, 3.3],
              "bool": [True, False, True],
              "str": ["a", "b", "c"],
              "empty": [None, None, None],
          }
      )
  
      arrow_schema = pa.Table.from_pandas(df).schema
  
      self.assertEqual(
          determine_dataframe_schema(df, arrow_schema),
          {
              INDEX_IDENTIFIER: ColumnDataKind.INTEGER,  # This is the type of the index
              "int": ColumnDataKind.INTEGER,
              "float": ColumnDataKind.FLOAT,
              "bool": ColumnDataKind.BOOLEAN,
              "str": ColumnDataKind.STRING,
              "empty": ColumnDataKind.EMPTY,
          },
      )
  
imports: from __future__ import annotations
  import datetime
  import unittest
  from decimal import Decimal
  import numpy
  import pandas
  import pyarrow
  from parameterized import parameterized
  from streamlit.elements.lib.column_config_utils import _EDITING_COMPATIBILITY_MAPPING, INDEX_IDENTIFIER, ColumnConfigMapping, ColumnConfigMappingInput, ColumnDataKind, _convert_column_config_to_json, _determine_data_kind, _determine_data_kind_via_arrow, _determine_data_kind_via_inferred_type, _determine_data_kind_via_pandas_dtype, apply_data_specific_configs, determine_dataframe_schema, is_type_compatible, process_config_mapping, update_column_config
  from streamlit.elements.lib.column_types import ColumnConfig
  from streamlit.errors import StreamlitAPIException
  from streamlit.type_util import DataFormat
label_desc: Use image node_id 6 for calling the ColumnConfigUtilsTest obj's underlying member method code with example usage: obj.test_determine_dataframe_schema() without return types