code: def test_get_weights(self):
      pred_program = fluid.Program()
      with fluid.program_guard(pred_program):
          obs = layers.data(name="obs", shape=[4], dtype="float32")
          model_output = self.model.predict(obs)
  
      self.executor.run(fluid.default_startup_program())
  
      expected_params = []
      for param_name in [
          "fc1.w",
          "fc1.b",
          "fc2.w",
          "fc2.b",
          "fc3.w",
          "fc3.b",
      ]:
          expected_params.append(fetch_value(param_name))
  
      params = self.model.get_weights()
      self.assertEqual(len(params), len(expected_params))
      for param in params:
          flag = False
          for expected_param in expected_params:
              if np.sum(param) - np.sum(expected_param) < 1e-5:
                  flag = True
                  break
          self.assertTrue(flag)
  
imports: import numpy
  import paddle.fluid
  import parl
  import unittest
  from copy import deepcopy
  from paddle.fluid import ParamAttr
  from parl import layers
  from parl.utils import get_gpu_count
  from parl.core.fluid.plutils import fetch_value
label_desc: Use image node_id 15 for calling the ModelBaseTest obj's underlying member method code with example usage: obj.test_get_weights() without return types