code: def test_cython_agg_boolean():
      frame = DataFrame(
          {
              "a": np.random.default_rng(2).integers(0, 5, 50),
              "b": np.random.default_rng(2)
              .integers(0, 2, 50)
              .astype("bool"),
          }
      )
      result = frame.groupby("a")["b"].mean()
      msg = "using SeriesGroupBy.mean"
      with tm.assert_produces_warning(FutureWarning, match=msg):
          # GH#53425
          expected = frame.groupby("a")["b"].agg(np.mean)
  
      tm.assert_series_equal(result, expected)
  
imports: import numpy
  import pytest
  from pandas.core.dtypes.common import is_float_dtype, is_integer_dtype
  import pandas
  from pandas import DataFrame, Index, NaT, Series, Timedelta, Timestamp, bdate_range
  import pandas._testing
  import pandas.core.common
label_desc: Use image node_id 2 for calling a global function with example usage: test_cython_agg_boolean() without return types