code: def test_dim():
      assert_dshape_equal(dshape("var * int"), dshape("var * int"))
      assert_dshape_equal(dshape("3 * string"), dshape("3 * string"))
  
      with pytest.raises(AssertionError) as e:
          assert_dshape_equal(dshape("var * int"), dshape("3 * int"))
      assert "var != 3" in str(e.value)
      assert "_.shape[0]" in str(e.value)
  
      assert_dshape_equal(
          dshape("var * var * int"), dshape("var * var * int")
      )
      assert_dshape_equal(
          dshape("var * 3 * string"), dshape("var * 3 * string")
      )
      assert_dshape_equal(
          dshape("3 * var * float32"),
          dshape("3 * var * float32"),
      )
      assert_dshape_equal(
          dshape("3 * 3 * datetime"),
          dshape("3 * 3 * datetime"),
      )
  
      with pytest.raises(AssertionError) as e:
          assert_dshape_equal(
              dshape("var * var * int"),
              dshape("3 * var * int"),
          )
      assert "var != 3" in str(e.value)
      assert "_.shape[0]" in str(e.value)
  
      with pytest.raises(AssertionError) as e:
          assert_dshape_equal(
              dshape("var * var * int"),
              dshape("var * 3 * int"),
          )
      assert "var != 3" in str(e.value)
      assert "_.shape[1]" in str(e.value)
  
file_path: datashader/datashader/datashape/util/tests/test_testing.py
imports: import pytest
  from datashader.datashape.coretypes import DateTime, R, String, Time, TimeDelta, Tuple, Option, int32, float32
  from datashader.datashape.util import dshape
  from datashader.datashape.util.testing import assert_dshape_equal
label_desc: Use image node_id 2 for calling a global function with example usage: test_dim() without return types