code: def test_free_static_pooling(
      input_shape, pooling_type, window_shape, strides, expected
  ):
      img = np.reshape(np.arange(16, dtype=np.float32), [1, 4, 4])
      x = C.input_variable(input_shape)
      avg_pooling = C.pooling(x, pooling_type, window_shape, strides)
      assert avg_pooling.shape == (
          C.FreeDimension,
          C.FreeDimension,
          C.FreeDimension,
      )
      assert np.allclose(
          avg_pooling.eval({x: [img]}),
          np.asarray(expected, dtype=np.float32),
      )
  
imports: import numpy
  import pytest
  import cntk
  from cntk.ops.functions import Function, UserFunction
  from .ops_test_utils import AA
label_desc: Use image node_id 11 for calling a global function with example usage: test_free_static_pooling(input_shape, pooling_type, window_shape, strides, expected) without return types