code: def test_context():
      """
      Processing the same thing twice should work twice...
      """
      with Tsurgeon() as processor:
          text = "( (SBARQ (WHNP (WP Who)) (SQ (VP (VBZ sits) (PP (IN in) (NP (DT this) (NN seat))))) (. ?)))"
          trees = tree_reader.read_trees(text)
  
          tregex = "WP=wp"
          tsurgeon = "relabel wp WWWPPP"
          result = processor.process(trees, (tregex, tsurgeon))
          assert len(result) == 1
          assert (
              str(result[0])
              == "(ROOT (SBARQ (WHNP (WWWPPP Who)) (SQ (VP (VBZ sits) (PP (IN in) (NP (DT this) (NN seat))))) (. ?)))"
          )
  
          result = processor.process(trees, (tregex, tsurgeon))
          assert len(result) == 1
          assert (
              str(result[0])
              == "(ROOT (SBARQ (WHNP (WWWPPP Who)) (SQ (VP (VBZ sits) (PP (IN in) (NP (DT this) (NN seat))))) (. ?)))"
          )
  
imports: import pytest
  import stanza
  from stanza.models.constituency import tree_reader
  from stanza.server.tsurgeon import process_trees, Tsurgeon
  from stanza.tests import *
label_desc: Use image node_id 2 for calling a global function with example usage: test_context() without return types