code: def test_update_times_mean(
      self,
      obj,
      nogil,
      parallel,
      nopython,
      adjust,
      ignore_na,
      halflife_with_times,
  ):
      times = Series(
          np.array(
              [
                  "2020-01-01",
                  "2020-01-05",
                  "2020-01-07",
                  "2020-01-17",
                  "2020-01-21",
              ],
              dtype="datetime64[ns]",
          )
      )
      expected = obj.ewm(
          0.5,
          adjust=adjust,
          ignore_na=ignore_na,
          times=times,
          halflife=halflife_with_times,
      ).mean()
  
      engine_kwargs = {
          "nogil": nogil,
          "parallel": parallel,
          "nopython": nopython,
      }
      online_ewm = (
          obj.head(2)
          .ewm(
              0.5,
              adjust=adjust,
              ignore_na=ignore_na,
              times=times.head(2),
              halflife=halflife_with_times,
          )
          .online(engine_kwargs=engine_kwargs)
      )
      # Test resetting once
      for _ in range(2):
          result = online_ewm.mean()
          tm.assert_equal(result, expected.head(2))
  
          result = online_ewm.mean(
              update=obj.tail(3), update_times=times.tail(3)
          )
          tm.assert_equal(result, expected.tail(3))
  
          online_ewm.reset()
  
file_path: pandas/pandas/tests/window/test_online.py
imports: import numpy
  import pytest
  from pandas import DataFrame, Series
  import pandas._testing
label_desc: Use image node_id 3 for calling the TestEWM obj's underlying member method code with example usage: obj.test_update_times_mean(obj, nogil, parallel, nopython, adjust, ignore_na, halflife_with_times) without return types