summaryrefslogtreecommitdiffstats
path: root/ansible_collections/community/routeros/tests/integration
diff options
context:
space:
mode:
Diffstat (limited to 'ansible_collections/community/routeros/tests/integration')
-rw-r--r--ansible_collections/community/routeros/tests/integration/requirements.yml7
-rw-r--r--ansible_collections/community/routeros/tests/integration/targets/filter_quoting/aliases6
-rw-r--r--ansible_collections/community/routeros/tests/integration/targets/filter_quoting/tasks/main.yml63
3 files changed, 76 insertions, 0 deletions
diff --git a/ansible_collections/community/routeros/tests/integration/requirements.yml b/ansible_collections/community/routeros/tests/integration/requirements.yml
new file mode 100644
index 000000000..6a22736b5
--- /dev/null
+++ b/ansible_collections/community/routeros/tests/integration/requirements.yml
@@ -0,0 +1,7 @@
+---
+# Copyright (c) Ansible Project
+# 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
+
+collections:
+- ansible.netcommon
diff --git a/ansible_collections/community/routeros/tests/integration/targets/filter_quoting/aliases b/ansible_collections/community/routeros/tests/integration/targets/filter_quoting/aliases
new file mode 100644
index 000000000..ddba81818
--- /dev/null
+++ b/ansible_collections/community/routeros/tests/integration/targets/filter_quoting/aliases
@@ -0,0 +1,6 @@
+# Copyright (c) Ansible Project
+# 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
+
+shippable/posix/group1
+skip/python2.6
diff --git a/ansible_collections/community/routeros/tests/integration/targets/filter_quoting/tasks/main.yml b/ansible_collections/community/routeros/tests/integration/targets/filter_quoting/tasks/main.yml
new file mode 100644
index 000000000..e7a2d29a1
--- /dev/null
+++ b/ansible_collections/community/routeros/tests/integration/targets/filter_quoting/tasks/main.yml
@@ -0,0 +1,63 @@
+---
+# Copyright (c) Ansible Project
+# 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
+
+- name: "Test split filter"
+ assert:
+ that:
+ - "'' | community.routeros.split == []"
+ - "'foo bar' | community.routeros.split == ['foo', 'bar']"
+ - >
+ 'foo bar="a b c"' | community.routeros.split == ['foo', 'bar=a b c']
+
+- name: "Test split filter error handling"
+ set_fact:
+ test: >-
+ {{ 'a="' | community.routeros.split }}
+ ignore_errors: true
+ register: result
+
+- name: "Verify split filter error handling"
+ assert:
+ that:
+ - >-
+ result.msg == "Unexpected end of string during escaped parameter"
+
+- name: "Test quote_argument filter"
+ assert:
+ that:
+ - >
+ 'a=' | community.routeros.quote_argument == 'a=""'
+ - >
+ 'a=b' | community.routeros.quote_argument == 'a=b'
+ - >
+ 'a=b c' | community.routeros.quote_argument == 'a="b\\_c"'
+ - >
+ 'a=""' | community.routeros.quote_argument == 'a="\\"\\""'
+
+- name: "Test quote_argument_value filter"
+ assert:
+ that:
+ - >
+ '' | community.routeros.quote_argument_value == '""'
+ - >
+ 'foo' | community.routeros.quote_argument_value == 'foo'
+ - >
+ '"foo bar"' | community.routeros.quote_argument_value == '"\\"foo\\_bar\\""'
+
+- name: "Test join filter"
+ assert:
+ that:
+ - >
+ ['a=', 'b=c d'] | community.routeros.join == 'a="" b="c\\_d"'
+
+- name: "Test list_to_dict filter"
+ assert:
+ that:
+ - >
+ ['a=', 'b=c'] | community.routeros.list_to_dict == {'a': '', 'b': 'c'}
+ - >
+ ['a=', 'b=c'] | community.routeros.list_to_dict(skip_empty_values=True) == {'b': 'c'}
+ - >
+ ['a', 'b=c'] | community.routeros.list_to_dict(require_assignment=False) == {'a': none, 'b': 'c'}