aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/skylark/testdata/all_any.sky
diff options
context:
space:
mode:
authorGravatar laurentlb <laurentlb@google.com>2017-11-27 05:43:36 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2017-11-27 05:45:34 -0800
commitc83c12db5052a4be4bed29f8a9344c17a51aff3f (patch)
treed3e90cc6bd862075999dcea0749627186c4b99fd /src/test/skylark/testdata/all_any.sky
parent0838aeeb545013c8261f0ae438f6027a78aea603 (diff)
Migrate some Skylark tests outside of Blaze.
RELNOTES: None. PiperOrigin-RevId: 177004853
Diffstat (limited to 'src/test/skylark/testdata/all_any.sky')
-rw-r--r--src/test/skylark/testdata/all_any.sky46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/test/skylark/testdata/all_any.sky b/src/test/skylark/testdata/all_any.sky
new file mode 100644
index 0000000000..1b37967737
--- /dev/null
+++ b/src/test/skylark/testdata/all_any.sky
@@ -0,0 +1,46 @@
+# All with empty value
+assert_eq(all(''), True)
+assert_eq(all([]), True)
+
+# All with list
+assert_eq(all('test'), True)
+assert_eq(all([False]), False)
+assert_eq(all([True, False]), False)
+assert_eq(all([False, False]), False)
+assert_eq(all([False, True]), False)
+assert_eq(all(['', True]), False)
+assert_eq(all([0, True]), False)
+assert_eq(all([[], True]), False)
+assert_eq(all([True, 't', 1]), True)
+
+# All with dict
+assert_eq(all({1 : None}), True)
+assert_eq(all({None : 1}), False)
+
+# Any with empty value
+assert_eq(any(''), False)
+assert_eq(any([]), False)
+
+# Any with list
+assert_eq(any('test'), True)
+assert_eq(any([False]), False)
+assert_eq(any([0]), False)
+assert_eq(any(['']), False)
+assert_eq(any([[]]), False)
+assert_eq(any([True, False]), True)
+assert_eq(any([False, False]), False)
+assert_eq(any([False, '', 0]), False)
+assert_eq(any([False, '', 42]), True)
+
+# Any with dict
+assert_eq(any({1 : None, '' : None}), True)
+assert_eq(any({None : 1, '' : 2}), False)
+
+---
+all(None) ### type 'NoneType' is not iterable
+---
+any(None) ### type 'NoneType' is not iterable
+---
+any(1) ### type 'int' is not iterable
+---
+all(1) ### type 'int' is not iterable