code: def test_select_query(self):
      g = SGraph()
      g = g.add_vertices(self.vertices, "vid").add_edges(
          self.edges, "src_id", "dst_id"
      )
      g2 = g.select_fields(["color", "weight"])
      self.assertSequenceEqual(
          (g2.get_fields()),
          ["__id", "color", "__src_id", "__dst_id", "weight"],
      )
      g2 = g.select_fields(["color"])
      self.assertSequenceEqual(
          (g2.get_fields()), ["__id", "color", "__src_id", "__dst_id"]
      )
      del g.edges["weight"]
      del g.vertices["vec"]
      g.vertices["color2"] = g.vertices["color"]
      self.assertSequenceEqual(
          (g.get_fields()),
          ["__id", "color", "color2", "__src_id", "__dst_id"],
      )
      g2 = g.select_fields([])
      self.assertSequenceEqual(
          (g2.get_fields()), ["__id", "__src_id", "__dst_id"]
      )
  
imports: from __future__ import print_function
  from __future__ import division
  from __future__ import absolute_import
  from ..data_structures.sgraph import SGraph, Vertex, Edge, load_sgraph
  from ..data_structures.sframe import SFrame
  from .None import util
  import pandas
  from pandas.util.testing import assert_frame_equal
  import numpy
  import unittest
  import tempfile
  import json
  import os
  import sys
  import pytest
label_desc: Use image node_id 6 for calling the GraphTests obj's underlying member method code with example usage: obj.test_select_query() without return types