code: def test_init(
      self, monkeypatch, singlelabel_textclassification_records
  ):
      monkeypatch.setattr(
          "argilla.client.datasets.DatasetBase._RECORD_TYPE",
          TextClassificationRecord,
      )
  
      ds = DatasetBase(
          records=singlelabel_textclassification_records,
      )
      assert ds._records == singlelabel_textclassification_records
  
      ds = DatasetBase()
      assert ds._records == []
  
      with pytest.raises(
          WrongRecordTypeError, match="but you provided Text2TextRecord"
      ):
          DatasetBase(
              records=[Text2TextRecord(text="test")],
          )
  
      with pytest.raises(
          WrongRecordTypeError,
          match=r"various types: \['TextClassificationRecord', 'Text2TextRecord'\]",
      ):
          DatasetBase(
              records=[
                  TextClassificationRecord(text="test"),
                  Text2TextRecord(text="test"),
              ],
          )
  
      with pytest.raises(NotImplementedError):
          ds.to_datasets()
  
      with pytest.raises(NotImplementedError):
          ds.from_datasets("mock")
  
      with pytest.raises(NotImplementedError):
          ds._from_pandas("mock")
  
imports: import copy
  import os
  import sys
  from time import sleep
  import datasets
  import pandas
  import pytest
  import spacy
  from argilla.client.datasets import DatasetBase, DatasetForText2Text, DatasetForTextClassification, DatasetForTokenClassification, WrongRecordTypeError, read_datasets, read_pandas
  from argilla.client.models import Text2TextRecord, TextClassificationRecord, TokenClassificationRecord
  from argilla.datasets import TextClassificationSettings
label_desc: Use image node_id 2 for calling the TestDatasetBase obj's underlying member method code with example usage: obj.test_init(monkeypatch, singlelabel_textclassification_records) without return types