code: def _test_call(self, gpu):
      nonlinearity = getattr(torch.nn.functional, self.nonlinearity)
      mlp = pfrl.nn.MLPBN(
          in_size=self.in_size,
          out_size=self.out_size,
          hidden_sizes=self.hidden_sizes,
          normalize_input=self.normalize_input,
          normalize_output=self.normalize_output,
          nonlinearity=nonlinearity,
          last_wscale=self.last_wscale,
      )
      batch_size = 7
      x = np.random.rand(batch_size, self.in_size).astype(np.float32)
      x = torch.from_numpy(x)
      if gpu >= 0:
          assertions.assertTrue(torch.cuda.is_available())
          device = torch.device("cuda:{}".format(gpu))
          mlp = mlp.to(device)
          x = x.cuda()
      y = mlp(x)
      assertions.assertEqual(y.shape, (batch_size, self.out_size))
      assertions.assertEqual(y.device, x.device)
  
file_path: pfrl/tests/nn_tests/test_mlp_bn.py
imports: import unittest
  import numpy
  import pytest
  import torch
  import pfrl
label_desc: Use image node_id 2 for calling the TestMLPBN obj's underlying member method code with example usage: obj._test_call(gpu) without return types