code: def test_device_copy_via_string():
      x = relay.var("x")
      call = relay.op.device_copy(x, "cuda", "cpu")
      assert isinstance(call, relay.Call)
      assert len(call.args) == 1
      assert call.args[0] == x
      assert (
          call.attrs.src_virtual_device.device_type_int == 2
      )  # ie kDLCUDA
      assert call.attrs.src_virtual_device.virtual_device_id == 0
      assert call.attrs.src_virtual_device.target is None
      assert call.attrs.src_virtual_device.memory_scope == ""
      assert (
          call.attrs.dst_virtual_device.device_type_int == 1
      )  # ie kDLCPU
      assert call.attrs.dst_virtual_device.virtual_device_id == 0
      assert call.attrs.dst_virtual_device.target is None
      assert call.attrs.dst_virtual_device.memory_scope == ""
  
imports: import tvm
  import tvm.testing
  from tvm import relay
  import pytest
label_desc: Use image node_id 1 for calling a global function with example usage: test_device_copy_via_string() without return types