code: def test_detach(self):
      tex = TexturesVertex(
          verts_features=torch.rand(
              size=(10, 100, 128), requires_grad=True
          )
      )
      tex.verts_features_list()
      tex_detached = tex.detach()
      self.assertFalse(
          tex_detached._verts_features_padded.requires_grad
      )
      self.assertClose(
          tex_detached._verts_features_padded,
          tex._verts_features_padded,
      )
      for i in range(tex._N):
          self.assertClose(
              tex._verts_features_list[i],
              tex_detached._verts_features_list[i],
          )
          self.assertFalse(
              tex_detached._verts_features_list[i].requires_grad
          )
  
imports: import unittest
  import torch
  import torch.nn.functional
  from pytorch3d.renderer.mesh.rasterizer import Fragments
  from pytorch3d.renderer.mesh.textures import _list_to_padded_wrapper, TexturesAtlas, TexturesUV, TexturesVertex
  from pytorch3d.renderer.mesh.utils import pack_rectangles, pack_unique_rectangles, Rectangle
  from pytorch3d.structures import list_to_packed, Meshes, packed_to_list
  from .common_testing import TestCaseMixin
  from .test_meshes import init_mesh
label_desc: Use image node_id 7 for calling the TestTexturesVertex obj's underlying member method code with example usage: obj.test_detach() without return types