We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Write tests for bokeh templating software
With the merge of #459, bokeh templating will be implemented for `jwql`.  We should address the test coverage for this software. 

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `jwql/bokeh_templating/example/main.py`
Content:
```
1 """
2 This is a minimal example demonstrating how to create a Bokeh app using
3 the ``bokeh-templating`` package and the associated YAML template files.
4 
5 Author
6 -------
7 
8     - Graham Kanarek
9 
10 Dependencies
11 ------------
12 
13     The user must have PyYAML, Bokeh, and the ``bokeh-templating``
14     packages installed.
15 """
16 
17 import os
18 import numpy as np
19 
20 from jwql.bokeh_templating import BokehTemplate
21 
22 file_dir = os.path.dirname(os.path.realpath(__file__))
23 
24 
25 class TestBokehApp(BokehTemplate):
26     """This is a minimal ``BokehTemplate`` app."""
27 
28     def pre_init(self):
29         """Before creating the Bokeh interface (by parsing the interface
30         file), we must initialize our ``a`` and ``b`` variables, and set
31         the path to the interface file.
32         """
33 
34         self.a, self.b = 4, 2
35 
36         self.format_string = None
37         self.interface_file = os.path.join(file_dir, "example_interface.yaml")
38 
39     # No post-initialization tasks are required.
40     post_init = None
41 
42     @property
43     def x(self):
44         """The x-value of the Lissajous curves."""
45         return 4. * np.sin(self.a * np.linspace(0, 2 * np.pi, 500))
46 
47     @property
48     def y(self):
49         """The y-value of the Lissajous curves."""
50         return 3. * np.sin(self.b * np.linspace(0, 2 * np.pi, 500))
51 
52     def controller(self, attr, old, new):
53         """This is the controller function which is used to update the
54         curves when the sliders are adjusted. Note the use of the
55         ``self.refs`` dictionary for accessing the Bokeh object
56         attributes."""
57         self.a = self.refs["a_slider"].value
58         self.b = self.refs["b_slider"].value
59 
60         self.refs["figure_source"].data = {'x': self.x, 'y': self.y}
61 
62 
63 TestBokehApp()
64
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/jwql/bokeh_templating/example/main.py b/jwql/bokeh_templating/example/main.py
--- a/jwql/bokeh_templating/example/main.py
+++ b/jwql/bokeh_templating/example/main.py
@@ -24,6 +24,8 @@
 
 class TestBokehApp(BokehTemplate):
     """This is a minimal ``BokehTemplate`` app."""
+    
+    _embed = True
 
     def pre_init(self):
         """Before creating the Bokeh interface (by parsing the interface

{"golden_diff": "diff --git a/jwql/bokeh_templating/example/main.py b/jwql/bokeh_templating/example/main.py\n--- a/jwql/bokeh_templating/example/main.py\n+++ b/jwql/bokeh_templating/example/main.py\n@@ -24,6 +24,8 @@\n \n class TestBokehApp(BokehTemplate):\n     \"\"\"This is a minimal ``BokehTemplate`` app.\"\"\"\n+    \n+    _embed = True\n \n     def pre_init(self):\n         \"\"\"Before creating the Bokeh interface (by parsing the interface\n", "issue": "Write tests for bokeh templating software\nWith the merge of #459, bokeh templating will be implemented for `jwql`.  We should address the test coverage for this software. \n", "before_files": [{"content": "\"\"\"\nThis is a minimal example demonstrating how to create a Bokeh app using\nthe ``bokeh-templating`` package and the associated YAML template files.\n\nAuthor\n-------\n\n    - Graham Kanarek\n\nDependencies\n------------\n\n    The user must have PyYAML, Bokeh, and the ``bokeh-templating``\n    packages installed.\n\"\"\"\n\nimport os\nimport numpy as np\n\nfrom jwql.bokeh_templating import BokehTemplate\n\nfile_dir = os.path.dirname(os.path.realpath(__file__))\n\n\nclass TestBokehApp(BokehTemplate):\n    \"\"\"This is a minimal ``BokehTemplate`` app.\"\"\"\n\n    def pre_init(self):\n        \"\"\"Before creating the Bokeh interface (by parsing the interface\n        file), we must initialize our ``a`` and ``b`` variables, and set\n        the path to the interface file.\n        \"\"\"\n\n        self.a, self.b = 4, 2\n\n        self.format_string = None\n        self.interface_file = os.path.join(file_dir, \"example_interface.yaml\")\n\n    # No post-initialization tasks are required.\n    post_init = None\n\n    @property\n    def x(self):\n        \"\"\"The x-value of the Lissajous curves.\"\"\"\n        return 4. * np.sin(self.a * np.linspace(0, 2 * np.pi, 500))\n\n    @property\n    def y(self):\n        \"\"\"The y-value of the Lissajous curves.\"\"\"\n        return 3. * np.sin(self.b * np.linspace(0, 2 * np.pi, 500))\n\n    def controller(self, attr, old, new):\n        \"\"\"This is the controller function which is used to update the\n        curves when the sliders are adjusted. Note the use of the\n        ``self.refs`` dictionary for accessing the Bokeh object\n        attributes.\"\"\"\n        self.a = self.refs[\"a_slider\"].value\n        self.b = self.refs[\"b_slider\"].value\n\n        self.refs[\"figure_source\"].data = {'x': self.x, 'y': self.y}\n\n\nTestBokehApp()\n", "path": "jwql/bokeh_templating/example/main.py"}], "after_files": [{"content": "\"\"\"\nThis is a minimal example demonstrating how to create a Bokeh app using\nthe ``bokeh-templating`` package and the associated YAML template files.\n\nAuthor\n-------\n\n    - Graham Kanarek\n\nDependencies\n------------\n\n    The user must have PyYAML, Bokeh, and the ``bokeh-templating``\n    packages installed.\n\"\"\"\n\nimport os\nimport numpy as np\n\nfrom jwql.bokeh_templating import BokehTemplate\n\nfile_dir = os.path.dirname(os.path.realpath(__file__))\n\n\nclass TestBokehApp(BokehTemplate):\n    \"\"\"This is a minimal ``BokehTemplate`` app.\"\"\"\n    \n    _embed = True\n\n    def pre_init(self):\n        \"\"\"Before creating the Bokeh interface (by parsing the interface\n        file), we must initialize our ``a`` and ``b`` variables, and set\n        the path to the interface file.\n        \"\"\"\n\n        self.a, self.b = 4, 2\n\n        self.format_string = None\n        self.interface_file = os.path.join(file_dir, \"example_interface.yaml\")\n\n    # No post-initialization tasks are required.\n    post_init = None\n\n    @property\n    def x(self):\n        \"\"\"The x-value of the Lissajous curves.\"\"\"\n        return 4. * np.sin(self.a * np.linspace(0, 2 * np.pi, 500))\n\n    @property\n    def y(self):\n        \"\"\"The y-value of the Lissajous curves.\"\"\"\n        return 3. * np.sin(self.b * np.linspace(0, 2 * np.pi, 500))\n\n    def controller(self, attr, old, new):\n        \"\"\"This is the controller function which is used to update the\n        curves when the sliders are adjusted. Note the use of the\n        ``self.refs`` dictionary for accessing the Bokeh object\n        attributes.\"\"\"\n        self.a = self.refs[\"a_slider\"].value\n        self.b = self.refs[\"b_slider\"].value\n\n        self.refs[\"figure_source\"].data = {'x': self.x, 'y': self.y}\n\n\nTestBokehApp()\n", "path": "jwql/bokeh_templating/example/main.py"}]}