SEBA-419 allow legacy to be specified on a per-model basis;
Deprecate "legacy" in favor of "custom_python"
Change-Id: I44625ff18ee7796996ae25ad700e58a0b36e7398
diff --git a/lib/xos-genx/xos-genx-tests/test_jinja2_base.py b/lib/xos-genx/xos-genx-tests/test_jinja2_base.py
index 3b988e5..b2cbdef 100644
--- a/lib/xos-genx/xos-genx-tests/test_jinja2_base.py
+++ b/lib/xos-genx/xos-genx-tests/test_jinja2_base.py
@@ -16,6 +16,7 @@
from __future__ import absolute_import
import unittest
from xosgenx.jinja2_extensions.base import *
+from jinja2.runtime import Undefined
# Several of the base functions require a Field object.
@@ -79,6 +80,24 @@
xproto_singularize(_field("sheep", singular="turtle")), "turtle"
)
+ def test_xproto_first_non_empty(self):
+ self.assertEqual(xproto_first_non_empty(["a"]), "a")
+ self.assertEqual(xproto_first_non_empty([None,"a"]), "a")
+ self.assertEqual(xproto_first_non_empty([None]), None)
+ self.assertEqual(xproto_first_non_empty([]), None)
+ self.assertEqual(xproto_first_non_empty([False, True]), False)
+ self.assertEqual(xproto_first_non_empty([None, "Foo", True]), "Foo")
+ self.assertEqual(xproto_first_non_empty(["", "Foo", True]), "Foo")
+ self.assertEqual(xproto_first_non_empty([Undefined(), "Foo", True]), "Foo")
+
+ def test_list_evaluates_true(self):
+ self.assertTrue(xproto_list_evaluates_true([True]))
+ self.assertTrue(xproto_list_evaluates_true(["True"]))
+ self.assertTrue(xproto_list_evaluates_true(['"True"']))
+ self.assertFalse(xproto_list_evaluates_true([False, True]))
+ self.assertFalse(xproto_list_evaluates_true([]))
+ self.assertFalse(xproto_list_evaluates_true([False]))
+
if __name__ == "__main__":
unittest.main()