code: def test_table_symmetric_schema(self):
      data = {
          "a": [1, 2, 3],
          "b": [1.5, 2.5, 3.5],
          "c": ["a", "b", "c"],
          "d": [True, False, True],
          "e": [date.today(), date.today(), date.today()],
          "f": [datetime.now(), datetime.now(), datetime.now()],
      }
  
      tbl = Table(data)
      schema = tbl.schema()
  
      assert schema == {
          "a": int,
          "b": float,
          "c": str,
          "d": bool,
          "e": date,
          "f": datetime,
      }
  
      tbl2 = Table(schema)
  
      assert tbl2.schema() == schema
  
imports: import sys
  from datetime import date, datetime
  from perspective.core.exception import PerspectiveError
  from perspective.table import Table
  from perspective.table._state import _PerspectiveStateManager
  from perspective.table.libpsppy import PerspectiveCppError, t_filter_op
  from pytest import raises
label_desc: Use image node_id 28 for calling the TestTable obj's underlying member method code with example usage: obj.test_table_symmetric_schema() without return types