code: def check_frame(fr, dest=None):
      if dest is not None:
          assert fr.key == dest
      assert fr.nrows == len(data)
      assert fr.ncols == len(data[0])
      assert fr.columns == col_names
      assert fr.types == col_types_back
      for i, row in enumerate(data):
          for j, value in enumerate(row):
              expected_val = (
                  "NA"
                  if data[i][j] == na_str[0]
                  else str(data[i][j])
                  if col_types[j] == "enum"
                  else data[i][j]
              )
              assert (
                  fr[i, j] == expected_val
              ), "expected value at [%s, %s] = %s, but got %s" % (
                  i,
                  j,
                  fr[i, j],
                  expected_val,
              )
  
file_path: h2o-3/h2o-py/tests/testdir_apis/Data_Manipulation/pyunit_h2oH2OFrame.py
imports: import sys
  from tests import pyunit_utils
  import h2o
  from h2o.utils.typechecks import assert_is_type
  from h2o.frame import H2OFrame
label_desc: Use image node_id 1 for calling a global function with example usage: check_frame(fr, dest) without return types