code: def test_should_not_use_crf_when_dataset_with_no_slots(self):
      # Given
      dataset = {
          "language": "en",
          "intents": {
              "intent1": {
                  "utterances": [
                      {
                          "data": [
                              {
                                  "text": "This is an utterance without "
                                  "slots"
                              }
                          ]
                      }
                  ]
              }
          },
          "entities": {},
      }
      slot_filler = CRFSlotFiller(**self.get_shared_data(dataset))
      mock_compute_features = MagicMock()
      slot_filler.compute_features = mock_compute_features
  
      # When
      slot_filler.fit(dataset, "intent1")
      slots = slot_filler.get_slots(
          "This is an utterance without slots"
      )
  
      # Then
      mock_compute_features.assert_not_called()
      self.assertListEqual([], slots)
  
imports: from __future__ import unicode_literals
  import io
  import os
  from builtins import range
  from pathlib import Path
  from unittest import skipIf
  from mock import MagicMock, PropertyMock
  from sklearn_crfsuite import CRF
  from snips_nlu.constants import DATA, END, ENTITY, LANGUAGE_EN, SLOT_NAME, START, TEXT, RANDOM_STATE
  from snips_nlu.dataset import Dataset
  from snips_nlu.entity_parser import CustomEntityParserUsage
  from snips_nlu.exceptions import NotTrained
  from snips_nlu.pipeline.configs import CRFSlotFillerConfig
  from snips_nlu.preprocessing import tokenize, Token
  from snips_nlu.result import unresolved_slot
  from snips_nlu.slot_filler.crf_slot_filler import CRFSlotFiller, _ensure_safe, _encode_tag, CRF_MODEL_FILENAME
  from snips_nlu.slot_filler.crf_utils import TaggingScheme
  from snips_nlu.slot_filler.feature_factory import IsDigitFactory, NgramFactory, ShapeNgramFactory
  from snips_nlu.tests.utils import FixtureTest, TEST_PATH
label_desc: Use image node_id 4 for calling the TestCRFSlotFiller obj's underlying member method code with example usage: obj.test_should_not_use_crf_when_dataset_with_no_slots() without return types