code: def test_c_good_shape(
      data_1d_multiple_groups, data_2d_multiple_groups
  ):
      c = [[2], [1.5], [1.4]]  # (groups_n, variables_n)
      model = bmb.Model(
          "y ~ 0 + hsgp(x2, by=fac, c=c, m=10)", data_1d_multiple_groups
      )
      term = model.response_component.terms[
          "hsgp(x2, by=fac, c=c, m=10)"
      ]
      assert (term.c == np.array(c)).all()
  
      c = [2, 1.5]  # (variables_n, )
      model = bmb.Model(
          "outcome ~ 0 + hsgp(x, y, by=group, c=c, m=10)",
          data_2d_multiple_groups,
      )
      term = model.response_component.terms[
          "hsgp(x, y, by=group, c=c, m=10)"
      ]
      assert term.c.shape == (3, 2)
      assert (term.c == np.tile(np.array(c), (3, 1))).all()
  
      c = [[2, 1.5], [1.8, 1.4], [1.6, 1.3]]  # (groups_n, variables_n)
      model = bmb.Model(
          "outcome ~ 0 + hsgp(x, y, by=group, c=c, m=10)",
          data_2d_multiple_groups,
      )
      term = model.response_component.terms[
          "hsgp(x, y, by=group, c=c, m=10)"
      ]
      assert term.c.shape == (3, 2)
      assert (term.c == np.array(c)).all()
  
imports: import pathlib
  import re
  import bambi
  import numpy
  import pandas
  import pytest
label_desc: Use image node_id 12 for calling a global function with example usage: test_c_good_shape(data_1d_multiple_groups, data_2d_multiple_groups) without return types