本文整理汇总了Python中webassets.filter.Filter.subprocess方法的典型用法代码示例。如果您正苦于以下问题:Python Filter.subprocess方法的具体用法?Python Filter.subprocess怎么用?Python Filter.subprocess使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类webassets.filter.Filter
的用法示例。
在下文中一共展示了Filter.subprocess方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_subprocess
# 需要导入模块: from webassets.filter import Filter [as 别名]
# 或者: from webassets.filter.Filter import subprocess [as 别名]
def test_subprocess(self):
"""Instead of the ``argv`` shortcut, subclasses can also use the
``subprocess`` helper manually.
"""
class Filter(ExternalTool): pass
# Without stdin data
self.popen.return_value.returncode = 0
self.popen.return_value.communicate.return_value = ['stdout', 'stderr']
out = StringIO()
Filter.subprocess(['test'], out)
assert out.getvalue() == 'stdout'
self.popen.return_value.communicate.assert_called_with(None)
# With stdin data
self.popen.reset_mock()
self.popen.return_value.returncode = 0
self.popen.return_value.communicate.return_value = ['stdout', 'stderr']
out = StringIO()
Filter.subprocess(['test'], out, data='data')
assert out.getvalue() == 'stdout'
self.popen.return_value.communicate.assert_called_with('data')
# With error
self.popen.return_value.returncode = 1
self.popen.return_value.communicate.return_value = ['stdout', 'stderr']
assert_raises(FilterError, Filter.subprocess, ['test'], StringIO())
示例2: test_output_moved
# 需要导入模块: from webassets.filter import Filter [as 别名]
# 或者: from webassets.filter.Filter import subprocess [as 别名]
def test_output_moved(self):
class Filter(ExternalTool):
pass
self.popen.return_value.returncode = 0
self.popen.return_value.communicate.return_value = ["stdout", "stderr"]
# {output} creates an output
# this test *moves* the file into the target location, and
# tests the fix to issue #286
intercepted = {}
def fake_output_file(argv, **kw):
intercepted["filename"] = argv[0]
with open(argv[0] + ".tmp", "w") as f:
f.write("bat")
import shutil
shutil.move(argv[0] + ".tmp", argv[0])
return DEFAULT
self.popen.side_effect = fake_output_file
# We get the result we generated in the hook above
out = StringIO()
Filter.subprocess(["{output}"], out)
assert out.getvalue() == "bat"
# File has been deleted
assert not os.path.exists(intercepted["filename"])
示例3: test_input_var
# 需要导入模块: from webassets.filter import Filter [as 别名]
# 或者: from webassets.filter.Filter import subprocess [as 别名]
def test_input_var(self):
"""Test {input} variable."""
class Filter(ExternalTool):
pass
self.popen.return_value.returncode = 0
self.popen.return_value.communicate.return_value = [b"stdout", b"stderr"]
# {input} creates an input file
intercepted = {}
def check_input_file(argv, **kw):
intercepted["filename"] = argv[0]
with open(argv[0], "r") as f:
# File has been generated with input data
assert f.read() == "foo"
return DEFAULT
self.popen.side_effect = check_input_file
Filter.subprocess(["{input}"], StringIO(), data="foo")
# No stdin was passed
self.popen.return_value.communicate.assert_called_with(None)
# File has been deleted
assert not os.path.exists(intercepted["filename"])
# {input} requires input data
assert_raises(ValueError, Filter.subprocess, ["{input}"], StringIO())
示例4: test_output_var
# 需要导入模块: from webassets.filter import Filter [as 别名]
# 或者: from webassets.filter.Filter import subprocess [as 别名]
def test_output_var(self):
class Filter(ExternalTool): pass
self.popen.return_value.returncode = 0
self.popen.return_value.communicate.return_value = ['stdout', 'stderr']
# {input} creates an input file
intercepted = {}
def fake_output_file(argv, **kw):
intercepted['filename'] = argv[0]
with open(argv[0], 'w') as f:
f.write('bat')
return DEFAULT
self.popen.side_effect = fake_output_file
# We get the result we generated in the hook above
out = StringIO()
Filter.subprocess(['{output}'], out)
assert out.getvalue() == 'bat'
# File has been deleted
assert not os.path.exists(intercepted['filename'])
示例5: test_output_var
# 需要导入模块: from webassets.filter import Filter [as 别名]
# 或者: from webassets.filter.Filter import subprocess [as 别名]
def test_output_var(self):
class Filter(ExternalTool):
pass
self.popen.return_value.returncode = 0
self.popen.return_value.communicate.return_value = ["stdout", "stderr"]
# {output} creates an output file
intercepted = {}
def fake_output_file(argv, **kw):
intercepted["filename"] = argv[0]
with open(argv[0], "w") as f:
f.write("bat")
return DEFAULT
self.popen.side_effect = fake_output_file
# We get the result we generated in the hook above
out = StringIO()
Filter.subprocess(["{output}"], out)
assert out.getvalue() == "bat"
# File has been deleted
assert not os.path.exists(intercepted["filename"])