code: def test_select_by_type_and_selector(self):
      # xaxis
      self.assert_select_subplots(
          "xaxis",
          "xaxes",
          [1, 2],
          selector={"title.text": "A"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "xaxis",
          "xaxes",
          [3, 4],
          selector={"title.text": "B"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "xaxis",
          "xaxes",
          [],
          selector={"title.text": "C"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "xaxis", "xaxes", [4], selector=-1, test_no_grid=True
      )
  
      # yaxis
      self.assert_select_subplots(
          "yaxis",
          "yaxes",
          [1, 3],
          selector={"title.text": "A"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "yaxis",
          "yaxes",
          [2, 4],
          selector={"title.text": "B"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "yaxis",
          "yaxes",
          [],
          selector={"title.text": "C"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "yaxis", "yaxes", [5], selector=-1, test_no_grid=True
      )
  
      self.assert_select_subplots(
          "yaxis", "yaxes", [2], selector=1, test_no_grid=True
      )
  
      # scene
      self.assert_select_subplots(
          "scene",
          "scenes",
          [1],
          selector={"xaxis.title.text": "A"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "scene",
          "scenes",
          [1],
          selector={"xaxis.title.text": "A", "yaxis.title.text": "B"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "scene",
          "scenes",
          [],
          selector={"xaxis.title.text": "A", "yaxis.title.text": "C"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "scene", "scenes", [1], selector=0, test_no_grid=True
      )
  
      # polar
      self.assert_select_subplots(
          "polar",
          "polars",
          [1, 2],
          selector={"angularaxis.rotation": 45},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "polar",
          "polars",
          [2],
          selector={
              "angularaxis.rotation": 45,
              "radialaxis_title_text": "B",
          },
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "polar",
          "polars",
          [],
          selector={
              "angularaxis.rotation": 45,
              "radialaxis_title_text": "C",
          },
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "polar", "polars", [2], selector=-1, test_no_grid=True
      )
  
      # ternary
      self.assert_select_subplots(
          "ternary",
          "ternaries",
          [1],
          selector={"aaxis.title.text": "A"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "ternary",
          "ternaries",
          [],
          selector={"aaxis.title.text": "C"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "ternary",
          "ternaries",
          [],
          selector={"aaxis.bogus.text": "A"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "ternary", "ternaries", [1], selector=-1, test_no_grid=True
      )
  
      # No 'geo' or 'mapbox' subplots initialized, but the first subplot
      # object is always present
      self.assert_select_subplots(
          "geo",
          "geos",
          [],
          selector={"bgcolor": "blue"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "geo",
          "geos",
          [],
          selector={"bogus": "blue"},
          test_no_grid=True,
      )
  
      self.assert_select_subplots(
          "mapbox",
          "mapboxes",
          [],
          selector={"pitch": 45},
          test_no_grid=True,
      )
  
imports: import copy
  from unittest import TestCase
  import plotly.graph_objs
  from plotly.graph_objs import Figure
  from plotly.subplots import make_subplots
label_desc: Use image node_id 6 for calling the TestSelectForEachUpdateSubplots obj's underlying member method code with example usage: obj.test_select_by_type_and_selector() without return types