code: def test_iterrows(self):
      pdf = pd.DataFrame(
          {
              ("x", "a", "1"): [1, 2, 3],
              ("x", "b", "2"): [4, 5, 6],
              ("y.z", "c.d", "3"): [7, 8, 9],
              ("x", "b", "4"): [10, 11, 12],
          },
          index=np.random.rand(3),
      )
      psdf = ps.from_pandas(pdf)
  
      for (pdf_k, pdf_v), (psdf_k, psdf_v) in zip(
          pdf.iterrows(), psdf.iterrows()
      ):
          self.assert_eq(pdf_k, psdf_k)
          self.assert_eq(pdf_v, psdf_v)
  
      # MultiIndex
      pmidx = pd.Index([(1, 2), (3, 4), (5, 6)])
      pdf.index = pmidx
      psdf = ps.from_pandas(pdf)
  
      for (pdf_k, pdf_v), (psdf_k, psdf_v) in zip(
          pdf.iterrows(), psdf.iterrows()
      ):
          self.assert_eq(pdf_k, psdf_k)
          self.assert_eq(pdf_v, psdf_v)
  
imports: import unittest
  import numpy
  import pandas
  from pyspark import pandas
  from pyspark.pandas.config import option_context
  from pyspark.testing.pandasutils import ComparisonTestBase
  from pyspark.testing.sqlutils import SQLTestUtils
label_desc: Use image node_id 13 for calling the FrameIndexingMixin obj's underlying member method code with example usage: obj.test_iterrows() without return types