# -*- coding: utf-8 -*- # Copyright (c) 2022, Alexei Znamensky # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later cmd_echo_tests: - name: set aa and bb value arg_formats: aa: func: as_opt_eq_val args: [--answer] bb: func: as_bool args: [--bb-here] arg_order: 'aa bb' arg_values: bb: true aa: 11 assertions: - test_result.rc == 0 - test_result.out == "-- --answer=11 --bb-here\n" - test_result.err == "" - name: default aa value arg_formats: aa: func: as_opt_eq_val args: [--answer] bb: func: as_bool args: [--bb-here] arg_order: ['aa', 'bb'] arg_values: aa: 43 bb: true assertions: - test_result.rc == 0 - test_result.out == "-- --answer=43 --bb-here\n" - test_result.err == "" - name: implicit aa format arg_formats: bb: func: as_bool args: [--bb-here] arg_order: ['aa', 'bb'] arg_values: bb: true aa: 1984 assertions: - test_result.rc == 0 - test_result.out == "-- --aa 1984 --bb-here\n" - test_result.err == "" - name: missing bb format arg_order: ['aa', 'bb'] arg_values: bb: true aa: 1984 expect_error: true assertions: - test_result is failed - test_result.rc == 1 - '"out" not in test_result' - '"err" not in test_result' - >- "MissingArgumentFormat: Cannot find format for parameter bb" in test_result.module_stderr - name: missing bb value arg_formats: bb: func: as_bool args: [--bb-here] arg_order: 'aa bb' aa: 1984 expect_error: true assertions: - test_result is failed - test_result.rc == 1 - '"out" not in test_result' - '"err" not in test_result' - >- "MissingArgumentValue: Cannot find value for parameter bb" in test_result.module_stderr - name: set aa and bb value with check_mode on arg_formats: aa: func: as_opt_eq_val args: [--answer] bb: func: as_bool args: [--bb-here] arg_order: 'aa bb' arg_values: bb: true aa: 11 check_mode: true assertions: - test_result.rc == 0 - test_result.out == "-- --answer=11 --bb-here\n" - test_result.err == "" - name: set aa and bb value with check_mode and check_mode_skip on arg_formats: aa: func: as_opt_eq_val args: [--answer] bb: func: as_bool args: [--bb-here] arg_order: 'aa bb' arg_values: bb: true check_mode_skip: true aa: 11 check_mode: true expect_error: true # because if result contains rc != 0, ansible assumes error assertions: - test_result.rc == None - test_result.out == None - test_result.err == None - name: set aa and tt value arg_formats: aa: func: as_opt_eq_val args: [--answer] tt: func: as_opt_val args: [--tt-arg] arg_order: 'aa tt' arg_values: tt: potatoes aa: 11 assertions: - test_result.rc == 0 - test_result.out == "-- --answer=11 --tt-arg potatoes\n" - test_result.err == ""