code: def test_prune_none():
      text = [
          "((SBARQ (WHNP (WP Who)) (SQ (VP (VBZ sits) (PP (-NONE- in) (NP (DT this) (NN seat))))) (. ?)))",  # test one dead node
          "((SBARQ (WHNP (-NONE- Who)) (SQ (VP (VBZ sits) (PP (IN in) (NP (DT this) (NN seat))))) (. ?)))",  # test recursive dead nodes
          "((SBARQ (WHNP (WP Who)) (SQ (VP (VBZ sits) (PP (IN in) (NP (-NONE- this) (-NONE- seat))))) (. ?)))",
      ]  # test all children dead
      expected = [
          "(ROOT (SBARQ (WHNP (WP Who)) (SQ (VP (VBZ sits) (PP (NP (DT this) (NN seat))))) (. ?)))",
          "(ROOT (SBARQ (SQ (VP (VBZ sits) (PP (IN in) (NP (DT this) (NN seat))))) (. ?)))",
          "(ROOT (SBARQ (WHNP (WP Who)) (SQ (VP (VBZ sits) (PP (IN in)))) (. ?)))",
      ]
  
      for t, e in zip(text, expected):
          trees = tree_reader.read_trees(t)
          assert len(trees) == 1
          tree = trees[0].prune_none()
          assert e == str(tree)
  
imports: import pytest
  from stanza.models.constituency.parse_tree import Tree
  from stanza.models.constituency import tree_reader
  from stanza.tests import *
label_desc: Use image node_id 10 for calling a global function with example usage: test_prune_none() without return types