docstr: Initialize instance of the agent class and pass in a custom `control_fac_idx`
docstr_tok: ["Initialize","instance","of","the","agent","class","and","pass","in","a","custom","`","control_fac_idx","`"]
code: def test_agent_init_without_control_fac_idx(self):
      """
      Initialize instance of the agent class and pass in a custom `control_fac_idx`
      """
  
      num_obs = [2, 4]
      num_states = [2, 2]
      num_controls = [2, 2]
      A = utils.random_A_matrix(num_obs, num_states)
      B = utils.random_B_matrix(num_states, num_controls)
  
      agent = Agent(A=A, B=B)
  
      self.assertEqual(agent.num_controls[0], 2)
      self.assertEqual(agent.num_controls[1], 2)
  
      self.assertEqual([0, 1], agent.control_fac_idx)
  
imports: import os
  import unittest
  import numpy
  from copy import deepcopy
  from pymdp.agent import Agent
  from pymdp import utils, maths
  from pymdp import inference, control, learning
  from pymdp.default_models import generate_grid_world_transitions
label_desc: Use image node_id 1 for calling the TestAgent obj's underlying member method code with example usage: obj.test_agent_init_without_control_fac_idx() without return types