ansible/test/integration/targets/module_utils/library/test_cwd_unreadable.py
Matt Clay d6fb42d1c5 Add integration tests for basic.py _set_cwd.
These tests verify that AnsibleModule can be instantiated when cwd does not exist or is unreadable.
2020-06-26 16:40:52 -07:00

28 lines
797 B
Python

#!/usr/bin/python
from __future__ import absolute_import, division, print_function
__metaclass__ = type
import os
from ansible.module_utils.basic import AnsibleModule
def main():
# This module verifies that AnsibleModule works when cwd exists but is unreadable.
# This situation can occur when running tasks as an unprivileged user.
try:
cwd = os.getcwd()
except OSError:
# Compensate for macOS being unable to access cwd as an unprivileged user.
# This test is a no-op in this case.
# Testing for os.getcwd() failures is handled by the test_cwd_missing module.
cwd = '/'
os.chdir(cwd)
module = AnsibleModule(argument_spec=dict())
module.exit_json(before=cwd, after=os.getcwd())
if __name__ == '__main__':
main()