code: def test_template_transform(
      image,
      img_weight,
      template_weight,
      template_transform,
      image_size,
      template_size,
  ):
      img = np.random.randint(0, 256, image_size, np.uint8)
      template = np.random.randint(0, 256, template_size, np.uint8)
  
      aug = A.TemplateTransform(
          template, img_weight, template_weight, template_transform
      )
      result = aug(image=img)["image"]
  
      assert result.shape == img.shape
  
      params = aug.get_params_dependent_on_targets({"image": img})
      template = params["template"]
      assert template.shape == img.shape
      assert template.dtype == img.dtype
  
imports: import random
  from functools import partial
  import cv2
  import numpy
  import pytest
  import albumentations
  import albumentations.augmentations.functional
  import albumentations.augmentations.geometric.functional
  from albumentations.augmentations.blur.functional import gaussian_blur
  from .utils import get_dual_transforms, get_image_only_transforms, get_transforms
label_desc: Use image node_id 42 for calling a global function with example usage: test_template_transform(image, img_weight, template_weight, template_transform, image_size, template_size) without return types