code: def test_create_from_words_and_text(vocab):
      # no whitespace in words
      words = ["'", "dogs", "'", "run"]
      text = "  'dogs'\n\nrun  "
      (words, spaces) = util.get_words_and_spaces(words, text)
      doc = Doc(vocab, words=words, spaces=spaces)
      assert [t.text for t in doc] == [
          "  ",
          "'",
          "dogs",
          "'",
          "\n\n",
          "run",
          " ",
      ]
      assert [t.whitespace_ for t in doc] == [
          "",
          "",
          "",
          "",
          "",
          " ",
          "",
      ]
      assert doc.text == text
      assert [t.text for t in doc if not t.text.isspace()] == [
          word for word in words if not word.isspace()
      ]
  
      # partial whitespace in words
      words = ["  ", "'", "dogs", "'", "\n\n", "run", " "]
      text = "  'dogs'\n\nrun  "
      (words, spaces) = util.get_words_and_spaces(words, text)
      doc = Doc(vocab, words=words, spaces=spaces)
      assert [t.text for t in doc] == [
          "  ",
          "'",
          "dogs",
          "'",
          "\n\n",
          "run",
          " ",
      ]
      assert [t.whitespace_ for t in doc] == [
          "",
          "",
          "",
          "",
          "",
          " ",
          "",
      ]
      assert doc.text == text
      assert [t.text for t in doc if not t.text.isspace()] == [
          word for word in words if not word.isspace()
      ]
  
      # non-standard whitespace tokens
      words = [" ", " ", "'", "dogs", "'", "\n\n", "run"]
      text = "  'dogs'\n\nrun  "
      (words, spaces) = util.get_words_and_spaces(words, text)
      doc = Doc(vocab, words=words, spaces=spaces)
      assert [t.text for t in doc] == [
          "  ",
          "'",
          "dogs",
          "'",
          "\n\n",
          "run",
          " ",
      ]
      assert [t.whitespace_ for t in doc] == [
          "",
          "",
          "",
          "",
          "",
          " ",
          "",
      ]
      assert doc.text == text
      assert [t.text for t in doc if not t.text.isspace()] == [
          word for word in words if not word.isspace()
      ]
  
      # mismatch between words and text
      with pytest.raises(ValueError):
          words = [" ", " ", "'", "dogs", "'", "\n\n", "run"]
          text = "  'dogs'\n\nrun  "
          (words, spaces) = util.get_words_and_spaces(
              words + ["away"], text
          )
  
file_path: spacy/spacy/tests/doc/test_creation.py
imports: import pytest
  from spacy import util
  from spacy.tokens import Doc
  from spacy.vocab import Vocab
label_desc: Use image node_id 4 for calling a global function with example usage: test_create_from_words_and_text(vocab) without return types