code: def test_logged_info__red_pick_red_all_the_time():
      p_red_pos = [[1, 0], [1, 0], [1, 0], [1, 0]]
      p_blue_pos = [[0, 0], [0, 0], [0, 0], [0, 0]]
      p_red_act = [0, 0, 0, 0]
      p_blue_act = [0, 0, 0, 0]
      c_red_pos = [[1, 1], [1, 1], [1, 1], [1, 1]]
      c_blue_pos = [None, None, None, None]
      max_steps, batch_size, grid_size = 4, 28, 3
      n_steps = max_steps
      envs = init_several_env(max_steps, batch_size, grid_size)
  
      batch_deltas = np.random.randint(
          0, max_steps - 1, size=batch_size
      )
  
      for env_i, env in enumerate(envs):
          obs, info = env.reset()
          check_obs(obs, batch_size, grid_size)
          assert_logger_buffer_size(env, n_steps=0)
  
          assert_info(
              batch_deltas,
              n_steps,
              batch_size,
              p_red_act,
              p_blue_act,
              env,
              grid_size,
              max_steps,
              p_red_pos,
              p_blue_pos,
              c_red_pos,
              c_blue_pos,
              red_speed=1.0,
              blue_speed=0.0,
              red_own=1.0,
              blue_own=None,
          )
  
imports: import copy
  import random
  import numpy
  from ray.rllib.examples.env.coin_game_vectorized_env import VectorizedCoinGame, AsymVectorizedCoinGame
  from ray.rllib.examples.env.tests.test_coin_game_non_vectorized_env import assert_obs_is_symmetrical
label_desc: Use image node_id 12 for calling a global function with example usage: test_logged_info__red_pick_red_all_the_time() without return types