code: def check_extract(self):
      x1 = numpy.random.uniform(0, 255, (320, 240, 3)).astype(
          numpy.uint8
      )
      x2 = numpy.random.uniform(0, 255, (320, 240)).astype(numpy.uint8)
  
      with numpy.errstate(divide="ignore"):
          result = self.link.extract([x1, x2], layers=["res3", "pool5"])
          assert len(result) == 2
          y1 = cuda.to_cpu(result["res3"].data)
          assert y1.shape == (2, 512, 28, 28)
          assert y1.dtype == self.dtype
          y2 = cuda.to_cpu(result["pool5"].data)
          assert y2.shape == (2, 2048)
          assert y2.dtype == self.dtype
  
          x3 = numpy.random.uniform(0, 255, (80, 60)).astype(
              numpy.uint8
          )
          result = self.link.extract([x3], layers=["res2"], size=None)
          assert len(result) == 1
          y3 = cuda.to_cpu(result["res2"].data)
          assert y3.shape == (1, 256, 20, 15)
          assert y3.dtype == self.dtype
  
imports: import unittest
  import numpy
  import chainer
  from chainer.backends import cuda
  from chainer.links.model.vision import googlenet
  from chainer.links.model.vision import resnet
  from chainer.links.model.vision import vgg
  from chainer import testing
  from chainer.testing import attr
  from chainer.variable import Variable
label_desc: Use image node_id 8 for calling the TestResNetLayers obj's underlying member method code with example usage: obj.check_extract() without return types