code: def test_set_properties(text_classification_dataset_mock):
      # Arrange
      dataset = text_classification_dataset_mock
      properties = pd.DataFrame(
          {"text_length": [1, 2, 3], "average_word_length": [4, 5, 6]}
      )
  
      assert_that(dataset._properties, equal_to(None))
      assert_that(dataset._cat_properties, equal_to(None))
  
      # Act
      dataset.set_properties(properties, categorical_properties=[])
  
      # Assert
      assert_that(dataset.categorical_properties, equal_to([]))
      assert_that(
          (dataset.properties != properties).sum().sum(), equal_to(0)
      )
  
      dataset._properties = None
      dataset._cat_properties = None
  
imports: import numpy
  import pandas
  from hamcrest import assert_that, calling, contains_exactly, equal_to, raises
  from deepchecks.core.errors import DeepchecksValueError
  from deepchecks.nlp.text_data import TextData
label_desc: Use image node_id 16 for calling a global function with example usage: test_set_properties(text_classification_dataset_mock) without return types