code: def test_3d_3d_translation(self):
      aff = tf.constant(
          [[2, 0, 0, 0, 1.5, 0, 0, 0, 3]], dtype=tf.float32
      )
      params = {
          "source_shape": (3, 3, 3),
          "output_shape": (2, 2),
          "constraints": AffineWarpConstraints.translation_3d(3, 4, 5),
      }
      expected = [
          [[[2, 3.5, 3], [2, 6.5, 3]], [[6, 3.5, 3], [6, 6.5, 3]]]
      ]
      self._test_correctness(params, aff, expected)
  
imports: from __future__ import absolute_import, print_function, division
  import numpy
  import tensorflow
  from niftynet.layer.grid_warper import AffineGridWarperLayer
  from niftynet.layer.grid_warper import AffineWarpConstraints
  from niftynet.layer.grid_warper import _create_affine_features
  from tests.niftynet_testcase import NiftyNetTestCase
label_desc: Use image node_id 10 for calling the AffineGridWarperLayerTest obj's underlying member method code with example usage: obj.test_3d_3d_translation() without return types