Add greater/less than tests

This patch adds tests for > and < to Jinja2 templates in Ansible. This
allows them to be easily used with filters like select or selectattr:

  vehicles | selectattr('wheels',' 'greater_than', 4)

Change-Id: I3dc057f121ff5548a9820728a6ff0258be5d7738
This commit is contained in:
Major Hayden 2016-12-08 11:04:30 -06:00
parent 6d2859789f
commit 786ed1d37a

36
test/osa_tests.py Normal file
View File

@ -0,0 +1,36 @@
#!/usr/bin/env python
# Copyright 2016, Rackspace US, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""Extra tests for jinja2 templates in Ansible."""
def greater_than(value, reference_value):
"""Return true if value > reference_value."""
return value > reference_value
def less_than(value, reference_value):
"""Return true if value < reference_value."""
return value < reference_value
class TestModule:
"""Main test class from Ansible."""
def tests(self):
"""Add these tests to the list of tests available to Ansible."""
return {
'greater_than': greater_than,
'less_than': less_than,
}