code: def test_table_group_by_date_correct(self):
      data = {
          "a": [date(2020, i, 15) for i in range(1, 13)],
          "b": [i for i in range(1, 13)],
      }
      table = Table(data)
      view = table.view(group_by=["a"])
      assert view.to_columns() == {
          "__ROW_PATH__": [
              [],
              [datetime(2020, 1, 15, 0, 0)],
              [datetime(2020, 2, 15, 0, 0)],
              [datetime(2020, 3, 15, 0, 0)],
              [datetime(2020, 4, 15, 0, 0)],
              [datetime(2020, 5, 15, 0, 0)],
              [datetime(2020, 6, 15, 0, 0)],
              [datetime(2020, 7, 15, 0, 0)],
              [datetime(2020, 8, 15, 0, 0)],
              [datetime(2020, 9, 15, 0, 0)],
              [datetime(2020, 10, 15, 0, 0)],
              [datetime(2020, 11, 15, 0, 0)],
              [datetime(2020, 12, 15, 0, 0)],
          ],
          "a": [12, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
          "b": [78, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
      }
  
file_path: perspective/python/perspective/perspective/tests/table/test_table_datetime.py
imports: import os
  import time
  import pytz
  import numpy
  import pandas
  from datetime import date, datetime, timedelta
  from dateutil import tz
  from pytest import mark
  from perspective.table import Table
label_desc: Use image node_id 1 for calling the TestTableDateTimePivots obj's underlying member method code with example usage: obj.test_table_group_by_date_correct() without return types