From 8a754e0858d922e955e71b253c139e071ecec432 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 28 Apr 2024 18:04:21 +0200 Subject: Adding upstream version 2.14.3. Signed-off-by: Daniel Baumann --- test/integration/targets/set_stats/test_simple.yml | 79 ++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 test/integration/targets/set_stats/test_simple.yml (limited to 'test/integration/targets/set_stats/test_simple.yml') diff --git a/test/integration/targets/set_stats/test_simple.yml b/test/integration/targets/set_stats/test_simple.yml new file mode 100644 index 0000000..0f62120 --- /dev/null +++ b/test/integration/targets/set_stats/test_simple.yml @@ -0,0 +1,79 @@ +--- +- hosts: testhost + gather_facts: false + tasks: + - name: test simple data with defaults + set_stats: + data: + my_int: 42 + my_string: "foo" + register: result + + - name: assert simple data return + assert: + that: + - result is succeeded + - not result.changed + - '"ansible_stats" in result' + - '"data" in result.ansible_stats' + - result.ansible_stats.data.my_int == 42 + - result.ansible_stats.data.my_string == "foo" + - '"per_host" in result.ansible_stats' + - not result.ansible_stats.per_host + - '"aggregate" in result.ansible_stats' + - result.ansible_stats.aggregate + + - name: test per_host and aggregate settings + set_stats: + data: + my_int: 42 + per_host: yes + aggregate: no + register: result + + - name: assert per_host and aggregate changes + assert: + that: + - result is succeeded + - not result.changed + - '"ansible_stats" in result' + - '"per_host" in result.ansible_stats' + - result.ansible_stats.per_host + - '"aggregate" in result.ansible_stats' + - not result.ansible_stats.aggregate + + - name: Test bad call + block: + - name: "EXPECTED FAILURE - test invalid data type" + set_stats: + data: + - 1 + - 2 + + - fail: + msg: "should not get here" + rescue: + - assert: + that: + - ansible_failed_task.name == "EXPECTED FAILURE - test invalid data type" + - ansible_failed_result.msg == "The 'data' option needs to be a dictionary/hash" + + - name: Test options from template + set_stats: + data: + my_string: "foo" + aggregate: "x" + + - name: Test bad data + block: + - name: "EXPECTED FAILURE - bad data" + set_stats: + data: + .bad: 1 + - fail: + msg: "should not get here" + rescue: + - assert: + that: + - ansible_failed_task.name == "EXPECTED FAILURE - bad data" + - ansible_failed_result.msg == "The variable name '.bad' is not valid. Variables must start with a letter or underscore character, and contain only letters, numbers and underscores." -- cgit v1.2.3