code: def test_runner_uses_source_from_filename(self) -> None:
      doc = Document()
      source = "# Test contents for script"
      result = {}
  
      def load(filename):
          handler = bahs.ScriptHandler(filename=filename)
          handler.modify_document(doc)
          result["handler"] = handler
          result["filename"] = filename
  
      with_file_contents(source, load)
  
      assert result["handler"]._runner.path == result["filename"]
      assert result["handler"]._runner.source == source
      assert not doc.roots
  
file_path: bokeh/tests/unit/bokeh/application/handlers/test_script.py
imports: from __future__ import annotations
  import pytest
  from bokeh.document import Document
  from tests.support.util.filesystem import with_file_contents
  import bokeh.application.handlers.script
label_desc: Use image node_id 1 for calling the Test_ScriptHandler obj's underlying member method code with example usage: obj.test_runner_uses_source_from_filename() without return types