code: def test_construct_parameter_with_variable_shape__different_constrained_shape() -> (
      None
  ):
      parameter = gpflow.Parameter(
          [[1, 0], [2, 3]],
          transform=triangular(),
          unconstrained_shape=[None],
          constrained_shape=[None, None],
      )
  
      values: Sequence[AnyNDArray] = [
          # The triangular() transform doesn't appear to support 0x0 matrices.
          np.tril(np.ones((1, 1), dtype=default_float())),
          np.tril(np.ones((2, 2), dtype=default_float())),
          np.tril(np.ones((3, 3), dtype=default_float())),
      ]
  
      for value in values:
          parameter.assign(value)
          np.testing.assert_equal(value, parameter.numpy())
  
imports: import tempfile
  from typing import Sequence
  import numpy
  import pytest
  import tensorflow
  import tensorflow_probability
  import gpflow
  from gpflow.base import AnyNDArray, PriorOn, TensorData
  from gpflow.config import default_float
  from gpflow.utilities import positive, triangular
label_desc: Use image node_id 20 for calling a global function with example usage: test_construct_parameter_with_variable_shape__different_constrained_shape() without return types