prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Create a test for resolution configuration
  ## Enhancement proposal
  A test for the `--resolution` configuration option. It should be placed [here](https://github.com/ManimCommunity/manim/blob/main/tests/test_scene_rendering/test_cli_flags.py) and [here](https://github.com/ManimCommunity/manim/blob/main/tests/test_scene_rendering/opengl/test_cli_flags_opengl.py) (the OpenGL test can be marked as `xfail` if setting resolution does not work properly on OpenGL). Test different resolutions as well as different ways of separating the resolutions (width and height separated by `;`, `,`, and `-`).
  
  ## Additional comments
  <!-- Add further context that you think might be relevant. -->
  
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `manim/utils/commands.py`
  Content:
  ```
  1 import json
  2 import os
  3 from subprocess import run
  4 from typing import Any, Dict, List
  5 
  6 __all__ = [
  7     "capture",
  8     "get_video_metadata",
  9     "get_dir_layout",
  10 ]
  11 
  12 
  13 def capture(command, cwd=None, command_input=None):
  14     p = run(command, cwd=cwd, input=command_input, capture_output=True, text=True)
  15     out, err = p.stdout, p.stderr
  16     return out, err, p.returncode
  17 
  18 
  19 def get_video_metadata(path_to_video: str) -> Dict[str, Any]:
  20     command = [
  21         "ffprobe",
  22         "-v",
  23         "error",
  24         "-select_streams",
  25         "v:0",
  26         "-show_entries",
  27         "stream=width,height,nb_frames,duration,avg_frame_rate,codec_name",
  28         "-print_format",
  29         "json",
  30         path_to_video,
  31     ]
  32     config, err, exitcode = capture(command)
  33     assert exitcode == 0, f"FFprobe error: {err}"
  34     return json.loads(config)["streams"][0]
  35 
  36 
  37 def get_dir_layout(dirpath: str) -> List[str]:
  38     """Get list of paths relative to dirpath of all files in dir and subdirs recursively."""
  39     index_files: List[str] = []
  40     for root, dirs, files in os.walk(dirpath):
  41         for file in files:
  42             index_files.append(f"{os.path.relpath(os.path.join(root, file), dirpath)}")
  43     return index_files
  44
  ```
  --- 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()
  
  ```
  
golden_diff: diff --git a/manim/utils/commands.py b/manim/utils/commands.py
  --- a/manim/utils/commands.py
  +++ b/manim/utils/commands.py
  @@ -27,7 +27,7 @@
           "stream=width,height,nb_frames,duration,avg_frame_rate,codec_name",
           "-print_format",
           "json",
  -        path_to_video,
  +        str(path_to_video),
       ]
       config, err, exitcode = capture(command)
       assert exitcode == 0, f"FFprobe error: {err}"
  
verification_info: {"golden_diff": "diff --git a/manim/utils/commands.py b/manim/utils/commands.py\n--- a/manim/utils/commands.py\n+++ b/manim/utils/commands.py\n@@ -27,7 +27,7 @@\n         \"stream=width,height,nb_frames,duration,avg_frame_rate,codec_name\",\n         \"-print_format\",\n         \"json\",\n-        path_to_video,\n+        str(path_to_video),\n     ]\n     config, err, exitcode = capture(command)\n     assert exitcode == 0, f\"FFprobe error: {err}\"\n", "issue": "Create a test for resolution configuration\n## Enhancement proposal\r\nA test for the `--resolution` configuration option. It should be placed [here](https://github.com/ManimCommunity/manim/blob/main/tests/test_scene_rendering/test_cli_flags.py) and [here](https://github.com/ManimCommunity/manim/blob/main/tests/test_scene_rendering/opengl/test_cli_flags_opengl.py) (the OpenGL test can be marked as `xfail` if setting resolution does not work properly on OpenGL). Test different resolutions as well as different ways of separating the resolutions (width and height separated by `;`, `,`, and `-`).\r\n\r\n## Additional comments\r\n<!-- Add further context that you think might be relevant. -->\r\n\n", "before_files": [{"content": "import json\nimport os\nfrom subprocess import run\nfrom typing import Any, Dict, List\n\n__all__ = [\n    \"capture\",\n    \"get_video_metadata\",\n    \"get_dir_layout\",\n]\n\n\ndef capture(command, cwd=None, command_input=None):\n    p = run(command, cwd=cwd, input=command_input, capture_output=True, text=True)\n    out, err = p.stdout, p.stderr\n    return out, err, p.returncode\n\n\ndef get_video_metadata(path_to_video: str) -> Dict[str, Any]:\n    command = [\n        \"ffprobe\",\n        \"-v\",\n        \"error\",\n        \"-select_streams\",\n        \"v:0\",\n        \"-show_entries\",\n        \"stream=width,height,nb_frames,duration,avg_frame_rate,codec_name\",\n        \"-print_format\",\n        \"json\",\n        path_to_video,\n    ]\n    config, err, exitcode = capture(command)\n    assert exitcode == 0, f\"FFprobe error: {err}\"\n    return json.loads(config)[\"streams\"][0]\n\n\ndef get_dir_layout(dirpath: str) -> List[str]:\n    \"\"\"Get list of paths relative to dirpath of all files in dir and subdirs recursively.\"\"\"\n    index_files: List[str] = []\n    for root, dirs, files in os.walk(dirpath):\n        for file in files:\n            index_files.append(f\"{os.path.relpath(os.path.join(root, file), dirpath)}\")\n    return index_files\n", "path": "manim/utils/commands.py"}], "after_files": [{"content": "import json\nimport os\nfrom subprocess import run\nfrom typing import Any, Dict, List\n\n__all__ = [\n    \"capture\",\n    \"get_video_metadata\",\n    \"get_dir_layout\",\n]\n\n\ndef capture(command, cwd=None, command_input=None):\n    p = run(command, cwd=cwd, input=command_input, capture_output=True, text=True)\n    out, err = p.stdout, p.stderr\n    return out, err, p.returncode\n\n\ndef get_video_metadata(path_to_video: str) -> Dict[str, Any]:\n    command = [\n        \"ffprobe\",\n        \"-v\",\n        \"error\",\n        \"-select_streams\",\n        \"v:0\",\n        \"-show_entries\",\n        \"stream=width,height,nb_frames,duration,avg_frame_rate,codec_name\",\n        \"-print_format\",\n        \"json\",\n        str(path_to_video),\n    ]\n    config, err, exitcode = capture(command)\n    assert exitcode == 0, f\"FFprobe error: {err}\"\n    return json.loads(config)[\"streams\"][0]\n\n\ndef get_dir_layout(dirpath: str) -> List[str]:\n    \"\"\"Get list of paths relative to dirpath of all files in dir and subdirs recursively.\"\"\"\n    index_files: List[str] = []\n    for root, dirs, files in os.walk(dirpath):\n        for file in files:\n            index_files.append(f\"{os.path.relpath(os.path.join(root, file), dirpath)}\")\n    return index_files\n", "path": "manim/utils/commands.py"}]}