code: def test_groupby_case(env_async, case_sensitive, expect):
      tmpl = env_async.from_string(
          "{% for k, vs in data|groupby('k', case_sensitive=cs) %}"
          "{{ k }}: {{ vs|join(', ', attribute='v') }}\n"
          "{% endfor %}"
      )
      out = tmpl.render(
          data=[
              {"k": "a", "v": 1},
              {"k": "b", "v": 2},
              {"k": "A", "v": 3},
          ],
          cs=case_sensitive,
      )
      assert out == expect
  
imports: from collections import namedtuple
  import pytest
  from markupsafe import Markup
  from jinja2 import Environment
  from jinja2.async_utils import auto_aiter
label_desc: Use image node_id 5 for calling a global function with example usage: test_groupby_case(env_async, case_sensitive, expect) without return types