code: def test_eye(self):
      assert_equal(construct.eye(1, 1).toarray(), [[1]])
      assert_equal(
          construct.eye(2, 3).toarray(), [[1, 0, 0], [0, 1, 0]]
      )
      assert_equal(
          construct.eye(3, 2).toarray(), [[1, 0], [0, 1], [0, 0]]
      )
      assert_equal(
          construct.eye(3, 3).toarray(),
          [[1, 0, 0], [0, 1, 0], [0, 0, 1]],
      )
  
      assert_equal(
          construct.eye(3, 3, dtype="int16").dtype, np.dtype("int16")
      )
  
      for m in [3, 5]:
          for n in [3, 5]:
              for k in range(-5, 6):
                  assert_equal(
                      construct.eye(m, n, k=k).toarray(),
                      np.eye(m, n, k=k),
                  )
                  if m == n:
                      assert_equal(
                          construct.eye(m, k=k).toarray(),
                          np.eye(m, n, k=k),
                      )
  
imports: from __future__ import division, print_function, absolute_import
  import numpy
  from numpy import array
  from numpy.testing import assert_equal, assert_, assert_array_equal, assert_array_almost_equal_nulp
  import pytest
  from pytest import raises
  from scipy._lib._testutils import check_free_memory
  from scipy.sparse import csr_matrix, coo_matrix, construct
  from scipy.sparse.construct import rand
  from scipy.sparse.sputils import matrix
label_desc: Use image node_id 11 for calling the TestConstructUtils obj's underlying member method code with example usage: obj.test_eye() without return types