code: def test_autopx_nonblocking(self):
      ip = get_ipython()
      v = self.client[-1]
      v.activate()
      v.block = False
  
      with capture_output() as io:
          ip.run_line_magic("autopx", "")
          ip.run_cell("\n".join(("a=5", "b=10", "c=0")))
          ip.run_cell("print (b)")
          ip.run_cell("import time; time.sleep(0.1)")
          ip.run_cell("b/c")
          ip.run_cell("b*=2")
          ip.run_line_magic("autopx", "")
  
      output = io.stdout.rstrip()
      assert output.startswith("%autopx enabled"), output
      assert output.endswith("%autopx disabled"), output
      assert "ZeroDivisionError" not in output
      ar = v.get_result(-2, owner=False)
      with raises_remote(ZeroDivisionError):
          ar.get()
      # prevent TaskAborted on pulls, due to ZeroDivisionError
      time.sleep(0.5)
      assert v["a"] == 5
      # b*=2 will not fire, due to abort
      assert v["b"] == 10
  
imports: import re
  import signal
  import sys
  import time
  import pytest
  from IPython import get_ipython
  from IPython.utils.io import capture_output
  import ipyparallel
  from ipyparallel import AsyncResult
  from .clienttest import ClusterTestCase, generate_output, raises_remote
label_desc: Use image node_id 15 for calling the TestParallelMagics obj's underlying member method code with example usage: obj.test_autopx_nonblocking() without return types