code: def test_prepare_dataset_and_column_mapping(self, monkeypatch):
      monkeypatch.setattr(
          "argilla.client.datasets.DatasetBase._RECORD_TYPE",
          TextClassificationRecord,
      )
  
      ds = datasets.Dataset.from_dict(
          {
              "unsupported_column": [None],
              "ID": [1],
              "inputs_a": ["a"],
              "inputs_b": ["b"],
              "metadata": ["mock"],
          }
      )
  
      ds_dict = datasets.DatasetDict(train=ds)
      with pytest.raises(
          ValueError, match="datasets.DatasetDict` are not supported"
      ):
          DatasetBase._prepare_dataset_and_column_mapping(ds_dict, None)
  
      col_mapping = dict(
          id="ID", inputs=["inputs_a", "inputs_b"], metadata="metadata"
      )
  
      with pytest.warns(
          UserWarning,
          match=r"Following columns are not supported by the TextClassificationRecord model "
          r"and are ignored: \['unsupported_column'\]",
      ):
          (
              prepared_ds,
              col_to_be_joined,
          ) = DatasetBase._prepare_dataset_and_column_mapping(
              ds, col_mapping
          )
  
          assert prepared_ds.column_names == [
              "id",
              "inputs_a",
              "inputs_b",
              "metadata",
          ]
          assert col_to_be_joined == {
              "inputs": ["inputs_a", "inputs_b"],
              "metadata": ["metadata"],
          }
  
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 4 for calling the TestDatasetBase obj's underlying member method code with example usage: obj.test_prepare_dataset_and_column_mapping(monkeypatch) without return types