code: def test_upscale_layer_exceptions(self):
      with self.assertRaises(LayerConnectionError):
          # Input shape should be 4 dimensional
          layers.join(layers.Input(10), layers.Upscale((2, 2)))
  
      invalid_scales = [-1, (2, 0), (-4, 1), (3, 3, 3)]
      for invalid_scale in invalid_scales:
          with self.assertRaises(ValueError):
              layers.Upscale(invalid_scale)
  
imports: from collections import namedtuple
  import numpy
  import tensorflow
  from neupy import layers
  from neupy.utils import asfloat
  from neupy.exceptions import LayerConnectionError
  from neupy.layers.pooling import pooling_output_shape
  from base import BaseTestCase
label_desc: Use image node_id 1 for calling the UpscaleLayersTestCase obj's underlying member method code with example usage: obj.test_upscale_layer_exceptions() without return types