code: def test_basic(self, sequence="cat1_seq2", frame_number=4):
      dataset = ExtendedSqlIndexDataset(
          sqlite_metadata_file=self._temp_db.name,
          remove_empty_masks=False,
          frame_data_builder_FrameDataBuilder_args=NO_BLOBS_KWARGS,
      )
  
      self.assertEqual(len(dataset), 100)
  
      # check the items are consecutive
      past_sequences = set()
      last_frame_number = -1
      last_sequence = ""
      for i in range(len(dataset)):
          item = dataset[i]
  
          if item.frame_number == 0:
              self.assertNotIn(item.sequence_name, past_sequences)
              past_sequences.add(item.sequence_name)
              last_sequence = item.sequence_name
          else:
              self.assertEqual(item.sequence_name, last_sequence)
              self.assertEqual(item.frame_number, last_frame_number + 1)
  
          last_frame_number = item.frame_number
  
      # test indexing
      with self.assertRaises(IndexError):
          dataset[len(dataset) + 1]
  
      # test sequence-frame indexing
      item = dataset[sequence, frame_number]
      self.assertEqual(item.sequence_name, sequence)
      self.assertEqual(item.frame_number, frame_number)
  
      with self.assertRaises(IndexError):
          dataset[sequence, 13]
  
imports: import dataclasses
  import logging
  import os
  import tempfile
  import unittest
  from typing import ClassVar, Optional, Type
  import pandas
  import pkg_resources
  import sqlalchemy
  from pytorch3d.implicitron.dataset import types
  from pytorch3d.implicitron.dataset.frame_data import FrameData, GenericFrameDataBuilder
  from pytorch3d.implicitron.dataset.orm_types import SqlFrameAnnotation, SqlSequenceAnnotation
  from pytorch3d.implicitron.dataset.sql_dataset import SqlIndexDataset
  from pytorch3d.implicitron.dataset.utils import GenericWorkaround
  from pytorch3d.implicitron.tools.config import registry
  from sqlalchemy.orm import composite, Mapped, mapped_column, Session
label_desc: Use image node_id 3 for calling the TestExtendingOrmTypes obj's underlying member method code with example usage: obj.test_basic(sequence, frame_number) without return types