code: def test_copy_param(self):
      a = nn.Linear(1, 5)
      b = nn.Linear(1, 5)
  
      s = torch.from_numpy(np.random.rand(1, 1).astype(np.float32))
      a_out = list(a(s).detach().numpy().ravel())
      b_out = list(b(s).detach().numpy().ravel())
      self.assertNotEqual(a_out, b_out)
  
      # Copy b's parameters to a
      copy_param.copy_param(a, b)
  
      a_out_new = list(a(s).detach().numpy().ravel())
      b_out_new = list(b(s).detach().numpy().ravel())
      self.assertEqual(a_out_new, b_out)
      self.assertEqual(b_out_new, b_out)
  
file_path: pfrl/tests/utils_tests/test_copy_param.py
imports: import unittest
  import numpy
  import torch
  import torch.nn
  from pfrl.testing import torch_assert_allclose
  from pfrl.utils import copy_param
label_desc: Use image node_id 1 for calling the TestCopyParam obj's underlying member method code with example usage: obj.test_copy_param() without return types