8000 Merge pull request #494 from kkroening/revert-493-revert-430-master · kkroening/ffmpeg-python@f307972 · GitHub
[go: up one dir, main page]

Skip to content

Commit f307972

Browse files
authored
Merge pull request #494 from kkroening/revert-493-revert-430-master
Revert "Revert "Implemented cwd parameter""
2 parents cc1f664 + 807aacc commit f307972

File tree

2 files changed

+11
-4
lines changed

2 files changed

+11
-4
lines changed

ffmpeg/_run.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,7 @@ def run_async(
199199
pipe_stderr=False,
200200
quiet=False,
201201
overwrite_output=False,
202+
cwd=None
202203
):
203204
"""Asynchronously invoke ffmpeg for the supplied node graph.
204205
@@ -285,7 +286,8 @@ def run_async(
285286
stderr_stream = subprocess.STDOUT
286287
stdout_stream = subprocess.DEVNULL
287288
return subprocess.Popen(
288-
args, stdin=stdin_stream, stdout=stdout_stream, stderr=stderr_stream
289+
args, stdin=stdin_stream, stdout=stdout_stream, stderr=stderr_stream,
290+
cwd=cwd
289291
)
290292

291293

@@ -298,6 +300,7 @@ def run(
298300
input=None,
299301
quiet=False,
300302
overwrite_output=False,
303+
cwd=None
301304
):
302305
"""Invoke ffmpeg for the supplied node graph.
303306
@@ -321,6 +324,7 @@ def run(
321324
pipe_stderr=capture_stderr,
322325
quiet=quiet,
323326
overwrite_output=overwrite_output,
327+
cwd=cwd
324328
)
325329
out, err = process.communicate(input)
326330
retcode = process.poll()

ffmpeg/tests/test_ffmpeg.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -441,12 +441,14 @@ def test__compile():
441441
@pytest.mark.parametrize('pipe_stdin', [True, False])
442442
@pytest.mark.parametrize('pipe_stdout', [True, False])
443443
@pytest.mark.parametrize('pipe_stderr', [True, False])
444-
def test__run_async(mocker, pipe_stdin, pipe_stdout, pipe_stderr):
444+
@pytest.mark.parametrize('cwd', [None, '/tmp'])
445+
def test__run_async(mocker, pipe_stdin, pipe_stdout, pipe_stderr, cwd):
445446
process__mock = mock.Mock()
446447
popen__mock = mocker.patch.object(subprocess, 'Popen', return_value=process__mock)
447448
stream = _get_simple_example()
448449
process = ffmpeg.run_async(
449-
stream, pipe_stdin=pipe_stdin, pipe_stdout=pipe_stdout, pipe_stderr=pipe_stderr
450+
stream, pipe_stdin=pipe_stdin, pipe_stdout=pipe_stdout,
451+
pipe_stderr=pipe_stderr, cwd=cwd
450452
)
451453
assert process is process__mock
452454

@@ -456,7 +458,8 @@ def test__run_async(mocker, pipe_stdin, pipe_stdout, pipe_stderr):
456458
(args,), kwargs = popen__mock.call_args
457459
assert args == ffmpeg.compile(stream)
458460
assert kwargs == dict(
459-
stdin=expected_stdin, stdout=expected_stdout, stderr=expected_stderr
461+
stdin=expected_stdin, stdout=expected_stdout, stderr=expected_stderr,
462+
cwd=cwd
460463
)
461464

462465

0 commit comments

Comments
 (0)
0