code: def test_set_node_tags(patch_vsphere_sdk_provider):
      vsp = mock_vsphere_sdk_provider()
      vsp.vsphere_sdk_client.vcenter.vm.Power.get.return_value = (
          HardPower.Info(state=HardPower.State.POWERED_OFF)
      )
      vsp.vsphere_sdk_client.vcenter.vm.Power.start.return_value = None
  
      vsp.get_category = MagicMock(return_value=None)
      vsp.create_category = MagicMock(return_value="category_id")
      vsp.get_tag_id_by_name = MagicMock(return_value=None)
      vsp.create_node_tag = MagicMock(return_value="tag_id")
      vsp.attach_tag = MagicMock(return_value=None)
      vsp.remove_tag_from_vm = MagicMock(return_value=None)
  
      k = Constants.VSPHERE_NODE_STATUS
      v = Constants.VsphereNodeStatus.CREATED.value
      vsphere_node_created_tag = {k: v}
      vm_id = "vm-test"
  
      vsp.set_node_tags(vm_id, vsphere_node_created_tag)
  
      vsp.create_category.assert_called()
      vsp.attach_tag.assert_called_with(
          vm_id, "VirtualMachine", tag_id="tag_id"
      )
      vsp.attach_tag.assert_called()
  
file_path: ray/python/ray/tests/vsphere/test_vsphere_sdk_provider.py
imports: import pytest
  from unittest.mock import MagicMock, patch
  from ray.autoscaler._private.vsphere.vsphere_sdk_provider import VsphereSdkProvider, Constants, HardPower
label_desc: Use image node_id 13 for calling a global function with example usage: test_set_node_tags(patch_vsphere_sdk_provider) without return types