code: def test_normal_sample_chains():
      """Sample from normal distribution with more than one chain."""
      program_code = "parameters {real y;} model {y ~ normal(0,1);}"
      posterior = stan.build(program_code)
      assert posterior is not None
      fit = posterior.sample(num_chains=3)
      offset = len(fit.sample_and_sampler_param_names)
      assert fit._draws.shape == (
          offset + 1,
          1000,
          3,
      )  # 1 param, n samples, 3 chains
      df = fit.to_frame()
      assert len(df["y"]) == 3000
      assert -5 < df["y"].mean() < 5
  
imports: from math import ceil
  import stan
label_desc: Use image node_id 3 for calling a global function with example usage: test_normal_sample_chains() without return types