code: def test_gaussian_noise(input_dtype, input_shape):
      transform = GaussianNoise(0.0, 1.0)
      input_t = torch.rand(input_shape, dtype=torch.float32)
      if input_dtype == torch.uint8:
          input_t = (255 * input_t).round()
      input_t = input_t.to(dtype=input_dtype)
      transformed = transform(input_t)
      assert isinstance(transformed, torch.Tensor)
      assert transformed.shape == input_shape
      assert transformed.dtype == input_dtype
      assert torch.any(transformed != input_t)
      assert torch.all(transformed >= 0)
      if input_dtype == torch.uint8:
          assert torch.all(transformed <= 255)
      else:
          assert torch.all(transformed <= 1.0)
  
file_path: doctr/tests/pytorch/test_transforms_pt.py
imports: import math
  import numpy
  import pytest
  import torch
  from doctr.transforms import ChannelShuffle, ColorInversion, GaussianNoise, RandomCrop, RandomHorizontalFlip, RandomRotate, RandomShadow, Resize
  from doctr.transforms.functional import crop_detection, rotate_sample
label_desc: Use image node_id 8 for calling a global function with example usage: test_gaussian_noise(input_dtype, input_shape) without return types