mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-04-13 20:31:24 +00:00
Add python.py coverage injector for ansible-test.
This can be used to run Python scripts from the repository with the correct interpreter and allow collection of code coverage. Useful for testing contrib inventory scripts.
This commit is contained in:
@@ -105,6 +105,8 @@ def main():
|
||||
|
||||
if os.path.basename(__file__) == 'injector.py':
|
||||
args, env = runner() # code coverage collection is baked into the AnsiballZ wrapper when needed
|
||||
elif os.path.basename(__file__) == 'python.py':
|
||||
args, env = python() # run arbitrary python commands using the correct python and with optional code coverage
|
||||
else:
|
||||
args, env = injector()
|
||||
|
||||
@@ -119,6 +121,20 @@ def main():
|
||||
raise
|
||||
|
||||
|
||||
def python():
|
||||
"""
|
||||
:rtype: list[str], dict[str, str]
|
||||
"""
|
||||
if config.coverage_file:
|
||||
args, env = coverage_command()
|
||||
else:
|
||||
args, env = [config.python_interpreter], os.environ.copy()
|
||||
|
||||
args += config.arguments[1:]
|
||||
|
||||
return args, env
|
||||
|
||||
|
||||
def injector():
|
||||
"""
|
||||
:rtype: list[str], dict[str, str]
|
||||
|
||||
1
test/runner/injector/python.py
Symbolic link
1
test/runner/injector/python.py
Symbolic link
@@ -0,0 +1 @@
|
||||
injector.py
|
||||
Reference in New Issue
Block a user