code: def test_shape_static(self, dtype, encoding: features_lib.Encoding):
      np_input = np.random.rand(2, 3).astype(np.float32)
      array_input = [
          [1, 2, 3],
          [4, 5, 6],
      ]
  
      self.assertFeature(
          feature=features_lib.Tensor(
              shape=(2, 3),
              dtype=dtype,
              encoding=encoding,
          ),
          dtype=dtype,
          shape=(2, 3),
          tests=[
              # Np array
              testing.FeatureExpectationItem(
                  value=np_input,
                  expected=np_input,
                  expected_np=np_input,
              ),
              # Python array
              testing.FeatureExpectationItem(
                  value=array_input,
                  expected=array_input,
                  expected_np=array_input,
              ),
              # Invalid dtype
              testing.FeatureExpectationItem(
                  # On Windows, np default dtype is `int32`
                  value=np.random.randint(
                      256, size=(2, 3), dtype=np.int64
                  ),
                  raise_cls=ValueError,
                  raise_cls_np=ValueError,
                  raise_msg="int64 do not match",
              ),
              # Invalid shape
              testing.FeatureExpectationItem(
                  value=np.random.rand(2, 4).astype(np.float32),
                  raise_cls=ValueError,
                  raise_cls_np=ValueError,
                  raise_msg="are incompatible",
              ),
          ],
          test_attributes={
              "_encoding": encoding,
          },
      )
  
imports: from absl.testing import parameterized
  import jax.numpy
  import numpy
  import pytest
  import tensorflow
  from tensorflow_datasets import testing
  from tensorflow_datasets.core import features
label_desc: Use image node_id 1 for calling the FeatureTensorTest obj's underlying member method code with example usage: obj.test_shape_static(dtype, encoding) without return types